linux/drivers/usb
Pawel Laszczak ff359dadec usb: cdnsp: Fix incorrect usb_request status
commit 1702bec447 upstream.

Fix changes incorrect usb_request->status returned during disabling
endpoints. Before fix the status returned during dequeuing requests
while disabling endpoint was ECONNRESET.
Patch change it to ESHUTDOWN.

Patch fixes issue detected during testing UVC gadget.
During stopping streaming the class starts dequeuing usb requests and
controller driver returns the -ECONNRESET status. After completion
requests the class or application "uvc-gadget" try to queue this
request again. Changing this status to ESHUTDOWN cause that UVC assumes
that endpoint is disabled, or device is disconnected and stops
re-queuing usb requests.

Fixes: 3d82904559 ("usb: cdnsp: cdns3 Add main part of Cadence USBSSP DRD Driver")
cc: stable@vger.kernel.org
Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Reviewed-by: Peter Chen <peter.chen@kernel.org>
Link: https://lore.kernel.org/r/PH7PR07MB9538E8CA7A2096AAF6A3718FDD9E2@PH7PR07MB9538.namprd07.prod.outlook.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2024-10-17 15:11:12 +02:00
..
atm usb: atm: cxacru: fix endpoint checking in cxacru_bind() 2024-07-05 09:14:47 +02:00
c67x00 usb/c67x00: Replace tasklet with work 2021-01-26 18:36:37 +01:00
cdns3 usb: cdnsp: Fix incorrect usb_request status 2024-10-17 15:11:12 +02:00
chipidea usb: chipidea: wait controller resume finished for wakeup irq 2024-01-25 14:52:47 -08:00
class USB: class: CDC-ACM: fix race between get_serial and set_serial 2024-10-17 15:11:12 +02:00
common usb: common: usb-conn-gpio: Prevent bailing out if initial role is none 2023-08-16 18:21:59 +02:00
core usb: core: sysfs: Unmerge @usb3_hardware_lpm_attr_group in remove_power_attributes() 2024-09-04 13:23:41 +02:00
dwc2 usb: dwc2: host: Fix dereference issue in DDMA completion flow. 2024-04-27 17:05:27 +02:00
dwc3 usb: dwc3: core: update LC timer as per USB Spec V3.2 2024-09-12 11:07:51 +02:00
early usb: early: xhci-dbc: Fix a potential out-of-bound memory access 2023-03-10 09:39:39 +01:00
gadget usb: gadget: fsl: Increase size of name buffer for endpoints 2024-09-04 13:23:26 +02:00
host xhci: Fix Panther point NULL pointer deref at full-speed re-enumeration 2024-09-04 13:23:15 +02:00
image USB: microtek: use set_host_byte() 2020-09-16 12:42:10 +02:00
isp1760 usb: isp1760: Fix out-of-bounds array access 2022-06-09 10:22:27 +02:00
misc USB: misc: cypress_cy7c63: check for short transfer 2024-10-17 15:11:12 +02:00
mon usb: mon: Fix atomicity violation in mon_bin_vma_fault 2024-01-25 14:52:47 -08:00
mtu3 usb: mtu3: fix kernel panic at qmu transfer done irq handler 2023-05-11 23:00:33 +09:00
musb usb: musb: da8xx: fix a resource leak in probe() 2024-07-05 09:14:47 +02:00
phy Revert "usb: phy: generic: Get the vbus supply" 2024-04-10 16:19:40 +02:00
renesas_usbhs usb: renesas: Fix refcount leak bug 2022-08-25 11:40:33 +02:00
roles usb: roles: don't get/set_role() when usb_role_switch is unregistered 2024-03-01 13:21:50 +01:00
serial USB: serial: pl2303: add device id for Macrosilicon MS3020 2024-10-17 15:10:41 +02:00
storage usb: uas: set host status byte on data completion error 2024-09-12 11:07:46 +02:00
typec usb: typec: ucsi: Fix null pointer dereference in trace 2024-09-12 11:07:41 +02:00
usbip usbip: Don't submit special requests twice 2024-09-12 11:07:41 +02:00
Kconfig usb: remove reference to deleted config STB03xxx 2021-08-18 15:32:19 +02:00
Makefile usb: host: remove line for obsolete config USB_HWA_HCD 2021-08-18 15:32:19 +02:00
usb-skeleton.c USB: usb-skeleton: drop redundant in-urb check 2019-10-10 12:41:19 +02:00