diff options
| author | Simon Holesch <[email protected]> | 2024-05-19 14:15:38 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2024-06-04 13:40:56 +0000 |
| commit | 8b6b386f9aa936ed0c190446c71cf59d4a507690 (patch) | |
| tree | e33e46e35df86907fd5480153a9bc048adbac6eb /drivers/usb/cdns3/core.h | |
| parent | usb-storage: Optimize scan delay more precisely (diff) | |
| download | kernel-8b6b386f9aa936ed0c190446c71cf59d4a507690.tar.gz kernel-8b6b386f9aa936ed0c190446c71cf59d4a507690.zip | |
usbip: Don't submit special requests twice
Skip submitting URBs, when identical requests were already sent in
tweak_special_requests(). Instead call the completion handler directly
to return the result of the URB.
Even though submitting those requests twice should be harmless, there
are USB devices that react poorly to some duplicated requests.
One example is the ChipIdea controller implementation in U-Boot: The
second SET_CONFIGURATION request makes U-Boot disable and re-enable all
endpoints. Re-enabling an endpoint in the ChipIdea controller, however,
was broken until U-Boot commit b272c8792502 ("usb: ci: Fix gadget
reinit").
Signed-off-by: Simon Holesch <[email protected]>
Acked-by: Shuah Khan <[email protected]>
Reviewed-by: Hongren Zheng <[email protected]>
Tested-by: Hongren Zheng <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/core.h')
0 files changed, 0 insertions, 0 deletions
