summaryrefslogtreecommitdiff
path: root/drivers/usb/cdns3/core.h
diff options
context:
space:
mode:
authorSimon Holesch <simon@holesch.de>2024-05-19 16:15:38 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-06-04 15:40:56 +0200
commit8b6b386f9aa936ed0c190446c71cf59d4a507690 (patch)
treee33e46e35df86907fd5480153a9bc048adbac6eb /drivers/usb/cdns3/core.h
parent804da867ad016d53bf33373cfeaae041775455f1 (diff)
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 <simon@holesch.de> Acked-by: Shuah Khan <skhan@linuxfoundation.org> Reviewed-by: Hongren Zheng <i@zenithal.me> Tested-by: Hongren Zheng <i@zenithal.me> Link: https://lore.kernel.org/r/20240519141922.171460-1-simon@holesch.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/cdns3/core.h')
0 files changed, 0 insertions, 0 deletions