[usb2] Garmin Edge 705 disconnects immediately
Michael Gmelin
freebsdusb at bindone.de
Sun Jul 19 15:18:27 UTC 2009
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
-------------- next part --------------
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)
More information about the freebsd-usb
mailing list