Re: Clear the host side toggle manually when endpoint is 'soft reset'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

On 26.04.2016 12:23, Julien D'ascenzio wrote:
Hi,

I see you make this patch in the kernel mainline:

xhci: Clear the ho27082e2654dc148078b0abdfc3c8e5ccbde0ebfa: st side:
toggle manually when endpoint is 'soft reset'

then you revert it:

d0167ad2954ee2d1c70704c454c646086b6653d6: Revert "xhci: Clear the host
side toggle manually when endpoint is 'soft reset'"

This patch correct a problem I have with a camera (IDS US3 uEye CP). I
think, it's a similar problem as:
http://www.spinics.net/lists/linux-usb/msg132221.html

Sometime, This error appear when I transfer a raw video with my camera :

xhci-hcd xhci-hcd.6.auto: URB transfer length is wrong, xHC issue? req.
len = 0, act. len = 4294967288

After that, the camera doesn't work and I must physically disconnect it

You find attached to this email the usb camera trace (wireshark) when
this error occurs.
The transfer seems to start in packet number 21 (URB_CONTROL).
The error seems to occur after packet number 694 when a "CLEAR FEATURE"
is request.

I'd like to know if you still work to a new patch to correct this? I
could help you to make some test with my hardware.

Best regards

Julien D'Ascenzio


I haven't been looking at this for a long time, so with the "xhci: Clear the host
side toggle manually when endpoint is soft reset" patch everything works?

Some additional questions.
Are you using uvc or some custom usbfs with libusb implementation?
If libusb is used, is there some extra libusb_clear_halt() used as a "soft reset"
instead of actually clearing a halted endpoint?

If the device endpoint is not actually halted then the clear halt request will
clear the data toggle for the connected device, but the host will continue using
the old toggle. -> out of sync.

If endpoint is really halted then host will reset the host side endpoint together
with a clear halt request to the device, and both toggles will be cleared.

-Mathias

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux