kernel_optimize_test/drivers/usb
Pawel Laszczak 23115ca7d2 usb: cdns3: fix race condition before setting doorbell
[ Upstream commit b69ec50b3e55c4b2a85c8bc46763eaf330605847 ]

For DEV_VER_V3 version there exist race condition between clearing
ep_sts.EP_STS_TRBERR and setting ep_cmd.EP_CMD_DRDY bit.
Setting EP_CMD_DRDY will be ignored by controller when
EP_STS_TRBERR is set. So, between these two instructions we have
a small time gap in which the EP_STSS_TRBERR can be set. In such case
the transfer will not start after setting doorbell.

Fixes: 7733f6c32e ("usb: cdns3: Add Cadence USB3 DRD Driver")
cc: <stable@vger.kernel.org> # 5.12.x
Tested-by: Aswath Govindraju <a-govindraju@ti.com>
Reviewed-by: Aswath Govindraju <a-govindraju@ti.com>
Signed-off-by: Pawel Laszczak <pawell@cadence.com>
Link: https://lore.kernel.org/r/20210907062619.34622-1-pawell@gli-login.cadence.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-10-06 15:55:46 +02:00
..
atm
c67x00
cdns3 usb: cdns3: fix race condition before setting doorbell 2021-10-06 15:55:46 +02:00
chipidea usb: chipidea: host: fix port index underflow and UBSAN complains 2021-09-18 13:40:30 +02:00
class USB: cdc-acm: fix minor-number release 2021-09-30 10:10:59 +02:00
common usb: otg-fsm: Fix hrtimer list corruption 2021-08-12 13:22:11 +02:00
core usb: core: hcd: Add support for deferring roothub registration 2021-09-30 10:11:00 +02:00
dwc2 usb: dwc2: gadget: Fix ISOC transfer complete handling for DDMA 2021-09-30 10:10:59 +02:00
dwc3 usb: dwc3: core: balance phy init and exit 2021-09-30 10:11:00 +02:00
early
gadget usb: gadget: r8a66597: fix a loop in set_feature() 2021-09-30 10:10:58 +02:00
host xhci: Set HCD flag to defer primary roothub registration 2021-09-30 10:11:01 +02:00
image
isp1760
misc USB: trancevibrator: fix control-request direction 2021-06-03 09:00:34 +02:00
mon
mtu3 usb: mtu3: fix the wrong HS mult value 2021-09-12 08:58:28 +02:00
musb usb: musb: tusb6010: uninitialized data in tusb_fifo_write_unaligned() 2021-09-30 10:10:59 +02:00
phy usb: phy: tahvo: add IRQ check 2021-09-15 09:50:40 +02:00
renesas_usbhs usb: renesas_usbhs: Fix superfluous irqs happen after usb_pkt_pop() 2021-07-28 14:35:44 +02:00
roles usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() 2021-05-14 09:49:55 +02:00
serial USB: serial: cp210x: fix dropped characters with CP2102 2021-09-30 10:11:08 +02:00
storage Re-enable UAS for LaCie Rugged USB3-FW with fk quirk 2021-09-30 10:11:00 +02:00
typec usb: typec: ucsi: Clear pending after acking connector change 2021-09-03 10:09:30 +02:00
usbip usbip:vhci_hcd USB port can get stuck in the disabled state 2021-09-18 13:40:33 +02:00
Kconfig
Makefile
usb-skeleton.c