Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Jul 2009 17:18:20 +0200
From:      Michael Gmelin <freebsdusb@bindone.de>
To:        Hans Petter Selasky <hselasky@c2i.net>, freebsd-usb@freebsd.org
Subject:   Re: [usb2] Garmin Edge 705 disconnects immediately
Message-ID:  <4A63393C.7020907@bindone.de>
In-Reply-To: <200907191530.05768.hselasky@c2i.net>
References:  <4A62187E.1000506@bindone.de> <200907190930.53835.hselasky@c2i.net> <4A630E1F.1050900@bindone.de> <200907191530.05768.hselasky@c2i.net>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------060708000006070703010205
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 7bit

Hans Petter Selasky wrote:
> On Sunday 19 July 2009 14:14:23 Michael Gmelin wrote:
>> Hans Petter Selasky wrote:
>>> On Saturday 18 July 2009 20:46:22 Michael Gmelin wrote:
>>>> Hello,
>>>>
>>>> I'm trying to access a Garmin Edge 705 bike computer, which should show
>>>> up as a mass storage device.
>>>>
>>>> kldload usb2_controller_uhci|ehci
>>>>
>>>> Jul 18 19:37:55 ufo kernel: ugen2.2: <Garmin International> at usbus2
>>>> Jul 18 19:37:55 ufo kernel: ugen2.2: <Garmin International> at usbus2
>>>> (disconnected)
>>>>
>>>> kldload usb2_storage_mass
>>>> kldload usb2_controller_uhci
>>>> Jul 18 19:38:06 ufo kernel: ugen2.2: <Garmin International> at usbus2
>>>> Jul 18 19:38:06 ufo kernel: umass0: <Garmin International Edge 705,
>>>> class 0/0, rev 1.10/5.09, addr 2> on usbus2
>>>> Jul 18 19:38:06 ufo kernel: umass0:  SCSI over Bulk-Only; quirks =
>>>> 0x0000 Jul 18 19:38:08 ufo kernel: umass0:1:0:-1: Attached to scbus1
>>>> Jul 18 19:38:08 ufo kernel: umass0: at ushub2, port 1, addr 2
>>>> (disconnected) Jul 18 19:38:08 ufo kernel: ugen2.2: <Garmin
>>>> International> at usbus2 (disconnected)
>>>>
>>>> Tried various quirks without any success for usb2_storage_mass (afaik it
>>>> should be SCSI | BBB). Also tried all possible orders of attaching the
>>>> device/
>>>>
>>>> Setting various debugging sysctls didn't give any useful hints (didn't
>>>> see anything extraordinary).
>>>> usbconfig doesn't show anything because the device disappears
>>>> immediately. I would assume that this is not a problem with _storage but
>>>> the device expecting some initialization which doesn't happen (or
>>>> happens too often). Also tried various usb2_quirk settings, all without
>>>> success.
>>>>
>>>> VendorId: 0x091e
>>>> ProductId: 0x2271
>>>>
>>>> Maybe someone can give me a hint where to start debugging this.
>>> You can try:
>>>
>>> sysctl hw.usb.debug=15
>>>
>>> I suspect that the USB stack in your device has some bugs. Sounds like
>>> the bike-computer manufacturer are not the ones to spend the most money
>>> on USB.
>>>
>>> --HPS
>> I attached you the log output which clearly indicates trouble. Maybe
>> some more info on the device: It has in-built memory + a memory card,
>> which should come up as separate devices. It boots up and shows that it
>> is connected to a computer, after a couple of seconds (once detach
>> failed) it will fallback to charging mode. I think the device could also
>> used as a serial device to gather GPS input, so maybe that's part of the
>> problem.
>>
>> Considering the price of the device I wish they would have spent more
>> money on usb. On the other hand the GPS sensor is fantastic and the
>> device overall is really awesome (it seems to mount ok under linux and I
>> couldn't find anyone who had to do any patching for that, the linux
>> kernel also no quirks for it, so I hope it's just a minor flaw in the
>> protocol that makes usb2 fail because it aims to be standard compliant :).
>>
> 
> Could you redo the trace without umass loaded?
> 
> --HPS
> 

Here it comes

--------------060708000006070703010205
Content-Type: text/plain;
 name="garmin2.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="garmin2.txt"

Jul 19 17:16:31 ufo kernel: usb2_alloc_device:1625: new dev (addr 2), udev=0x86f2c000, parent_hub=0x86f2f000
Jul 19 17:16:31 ufo kernel: ugen2.2: <Garmin International> at usbus2
Jul 19 17:16:31 ufo kernel: usb2_probe_and_attach:1118: iclass=8/6/80 iindex=0/0
Jul 19 17:16:31 ufo kernel: usb2_probe_and_attach:1093: end of interfaces at 1
Jul 19 17:16:31 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0xa3 bRequest=0x00 wValue=0x0000 wIndex=0x0002 wLength=0x0004
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:31 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:31 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:31 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=2, dir=read
Jul 19 17:16:31 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:31 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:31 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:31 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:31 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:31 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:31 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:31 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=12, slen=12, afrm=2, nfrm=2
Jul 19 17:16:31 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:31 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x867528b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x867528b8 pipe=0x86f2f3a8 sts=0 alen=1, slen=8, afrm=1, nfrm=1
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x867528b8, pipe=0x86f2f3a8, nframes=1, dir=read
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f3a8 edesc=0x87506cd2 isoc_next=0 toggle_next=0 bEndpointAddress=0x81
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f3a8 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x867528b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x867528b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0xa3 bRequest=0x00 wValue=0x0000 wIndex=0x0001 wLength=0x0004
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=2, dir=read
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=12, slen=12, afrm=2, nfrm=2
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0x23 bRequest=0x01 wValue=0x0011 wIndex=0x0001 wLength=0x0000
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=1, dir=read
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=8, slen=8, afrm=1, nfrm=1
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0x23 bRequest=0x01 wValue=0x0010 wIndex=0x0001 wLength=0x0000
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=1, dir=write
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=8, slen=8, afrm=1, nfrm=1
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_detach_device:871: udev=0x86f2c000
Jul 19 17:16:32 ufo kernel: usb2_free_device:1672: udev=0x86f2c000 port=1
Jul 19 17:16:32 ufo kernel: ugen2.2: <Garmin International> at usbus2 (disconnected)
Jul 19 17:16:32 ufo kernel: usb2_transfer_stop:1649: close
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_CANCELLED
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2054: not transferring
Jul 19 17:16:32 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0xa3 bRequest=0x00 wValue=0x0000 wIndex=0x0001 wLength=0x0004
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=2, dir=write
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=12, slen=12, afrm=2, nfrm=2
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_do_request_flags:263: udev=0x86f2f000 bmRequestType=0xa3 bRequest=0x00 wValue=0x0000 wIndex=0x0002 wLength=0x0004
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:32 ufo kernel: usb2_start_hardware:1371: xfer=0x8b1b18b8, pipe=0x86f2f380, nframes=2, dir=read
Jul 19 17:16:32 ufo kernel: usb2_dump_pipe: pipe=0x86f2f380 edesc=0x86f2fb0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:32 ufo kernel: usb2_dump_queue: pipe=0x86f2f380 xfer: 
Jul 19 17:16:32 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0x8b1b18b8 (leave)
Jul 19 17:16:32 ufo kernel: usb2_sw_transfer:167: done err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_transfer_done:2047: err=USB_ERR_NORMAL_COMPLETION
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2513: cb 0x8b1b18b8 (enter)
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:32 ufo kernel: usb2_callback_wrapper_sub:2402: xfer=0x8b1b18b8 pipe=0x86f2f380 sts=0 alen=12, slen=12, afrm=2, nfrm=2
Jul 19 17:16:32 ufo kernel: usb2_do_request_callback:76: st=1
Jul 19 17:16:32 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)
Jul 19 17:16:33 ufo kernel: usb2_do_request_flags:263: udev=0x87617000 bmRequestType=0xa3 bRequest=0x00 wValue=0x0000 wIndex=0x0001 wLength=0x0004
Jul 19 17:16:33 ufo kernel: usb2_command_wrapper:2513: cb 0x889360b8 (enter)
Jul 19 17:16:33 ufo kernel: usb2_callback_wrapper:1892: case 1-4
Jul 19 17:16:33 ufo kernel: usb2_do_request_callback:76: st=0
Jul 19 17:16:33 ufo kernel: usb2_start_hardware:1371: xfer=0x889360b8, pipe=0x87617380, nframes=2, dir=read
Jul 19 17:16:33 ufo kernel: usb2_dump_pipe: pipe=0x87617380 edesc=0x87617b0b isoc_next=0 toggle_next=0 bEndpointAddress=0x00
Jul 19 17:16:33 ufo kernel: usb2_dump_queue: pipe=0x87617380 xfer: 
Jul 19 17:16:33 ufo kernel: usb2_pipe_enter:1538: enter
Jul 19 17:16:33 ufo kernel: usb2_command_wrapper:2513: cb 0x889360b8 (enter)
Jul 19 17:16:33 ufo kernel: usb2_pipe_start:2265: start
Jul 19 17:16:33 ufo kernel: usb2_command_wrapper:2515: cb 0x889360b8 (leave)
Jul 19 17:16:33 ufo kernel: usb2_command_wrapper:2515: cb 0 (leave)

--------------060708000006070703010205--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A63393C.7020907>