mirror of
https://github.com/opnsense/src.git
synced 2026-06-09 08:43:19 -04:00
usb(4): Quirk for non-compliant USB devices.
Some non-compliant USB devices do not implement the clear endpoint halt feature. Silently ignore such failures, when they at least responded correctly passing up a valid STALL PID packet. Tested by: Doug Ambrisko <ambrisko@ambrisko.com> MFC after: 1 week Sponsored by: NVIDIA Networking
This commit is contained in:
parent
7ed3228323
commit
4e2d8cd3e2
1 changed files with 10 additions and 0 deletions
|
|
@ -313,6 +313,16 @@ tr_setup:
|
|||
*/
|
||||
if (usb_no_cs_fail)
|
||||
goto tr_transferred;
|
||||
|
||||
/*
|
||||
* Some non-compliant USB devices do not implement the
|
||||
* clear endpoint halt feature. Silently ignore such
|
||||
* devices, when they at least respond correctly
|
||||
* passing up a valid STALL PID packet.
|
||||
*/
|
||||
if (error == USB_ERR_STALLED)
|
||||
goto tr_transferred;
|
||||
|
||||
if (udev->clear_stall_errors == USB_CS_RESET_LIMIT)
|
||||
goto tr_setup;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue