linux/drivers/usb/misc
Razvan Heghedus ce3e90d5a0 usb: misc: ehset: Workaround for "special" hubs
The USB2.0 spec chapter 11.24.2.13 says that the USB port which is going
under test needs to be put in suspend state before sending the test
command. Many hubs, don't enforce this precondition and they work fine
without this step. But there are some "special" hubs, which requires to
disable the port power before sending the test command.

Because the USB spec mention that the port should be suspended, also
do this step before sending the test command. This could rise the
problem with other hubs which are not compliant with the spec and the
test command will not work if the port is suspend. If such hubs are
found, a similar workaround like the disable part could be implemented
to skip the suspend port command.

Signed-off-by: Razvan Heghedus <heghedus.razvan@gmail.com>
Link: https://lore.kernel.org/r/20210915121615.3790-1-heghedus.razvan@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-05 12:39:46 +02:00
..
sisusbvga USB / Thunderbolt patches for 5.11-rc1 2020-12-15 13:54:56 -08:00
adutux.c usb: misc: adutux: use swap() 2021-08-05 12:31:34 +02:00
apple-mfi-fastcharge.c USB: apple-mfi-fastcharge: Fix use after free in probe 2020-12-04 16:48:07 +01:00
appledisplay.c usb: appledisplay: use module_usb_driver to simplify the code 2020-09-22 10:37:19 +02:00
brcmstb-usb-pinmap.c usb: misc: brcmstb-usb-pinmap: add IRQ check 2021-08-13 13:05:50 +02:00
chaoskey.c USB: chaoskey: fix error case of a timeout 2019-11-11 14:29:39 +01:00
cypress_cy7c63.c USB: cypress_cy7c63: convert to use dev_groups 2019-08-09 07:55:44 +02:00
cytherm.c USB: cytherm: convert to use dev_groups 2019-08-09 07:55:44 +02:00
ehset.c usb: misc: ehset: Workaround for "special" hubs 2021-10-05 12:39:46 +02:00
emi26.c USB: misc: Remove redundant license text 2017-11-04 11:55:38 +01:00
emi62.c USB: misc: Remove redundant license text 2017-11-04 11:55:38 +01:00
ezusb.c usb: misc: ezusb: update to use usb_control_msg_send() 2021-03-28 13:41:27 +02:00
ftdi-elan.c usb: ftdi-elan: remove redundant continue statement in a while-loop 2021-06-24 14:12:09 +02:00
idmouse.c USB: idmouse: fix interface sanity checks 2019-12-10 13:11:22 +01:00
iowarrior.c usb: misc: iowarrior: remove unneeded break 2020-10-28 12:22:46 +01:00
isight_firmware.c USB: misc: Remove redundant license text 2017-11-04 11:55:38 +01:00
Kconfig Revert "USB: misc: Add onboard_usb_hub driver" 2021-06-18 08:39:24 +02:00
ldusb.c module: remove never implemented MODULE_SUPPORTED_DEVICE 2021-03-17 13:16:18 -07:00
legousbtower.c USB: legotower: fix logical error in recent commit 2020-12-08 19:55:09 +01:00
lvstest.c USB: lvtest: return proper error code in probe 2020-08-18 11:55:23 +02:00
Makefile Revert "USB: misc: Add onboard_usb_hub driver" 2021-06-18 08:39:24 +02:00
trancevibrator.c USB: trancevibrator: fix control-request direction 2021-05-21 20:10:43 +02:00
usb251xb.c usb: usb251xb: Use of_device_get_match_data() 2021-01-26 12:17:32 -06:00
usb3503.c usb: misc: usb3503: Fix logic in usb3503_init() 2021-02-11 13:52:04 +01:00
usb4604.c usb/misc: usb4604: Use pm_ptr() macro 2020-09-04 16:53:51 +02:00
usb_u132.h USB: misc: Use the correct style for SPDX License Identifier 2020-04-16 14:32:47 +02:00
usblcd.c USB: usblcd: Remove the superfluous break 2020-08-28 09:48:33 +02:00
usbsevseg.c usb: misc: usbsevseg: update to use usb_control_msg_send() 2021-03-28 13:41:27 +02:00
usbtest.c usb: usbtest: reduce stack usage in test_queue 2020-07-21 13:41:57 +02:00
uss720.c misc/uss720: fix memory leak in uss720_probe 2021-05-21 14:25:53 +02:00
yurex.c USB: yurex: fix control-URB timeout handling 2020-12-28 15:47:06 +01:00