mirror-linux/drivers/usb/cdns3
Pawel Laszczak 740f2e2791 usb: cdnsp: fix for Link TRB with TC
Stop Endpoint command on LINK TRB with TC bit set to 1 causes that
internal cycle bit can have incorrect state after command complete.
In consequence empty transfer ring can be incorrectly detected
when EP is resumed.
NOP TRB before LINK TRB avoid such scenario. Stop Endpoint command
is then on NOP TRB and internal cycle bit is not changed and have
correct value.

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/PH7PR07MB953878279F375CCCE6C6F40FDD8E2@PH7PR07MB9538.namprd07.prod.outlook.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-08-24 10:07:46 +08:00
..
Kconfig
Makefile
cdns3-debug.h
cdns3-ep0.c
cdns3-gadget.c usb: cdns3: fix memory double free when handle zero packet 2024-02-19 09:30:41 +01:00
cdns3-gadget.h usb: cdns3: fix iso transfer error when mult is not zero 2024-01-04 16:01:44 +01:00
cdns3-imx.c usb: cdns3: imx: Rework system PM to avoid duplicated operations 2023-05-29 15:53:48 +01:00
cdns3-pci-wrap.c
cdns3-plat.c usb: cdns3: Use dev_err_probe 2023-12-15 13:55:56 +01:00
cdns3-starfive.c usb: cdns3: starfive: don't misuse /** comment 2023-12-11 09:08:12 +01:00
cdns3-ti.c usb: cdns3-ti: Add workaround for Errata i2409 2024-06-04 15:41:10 +02:00
cdns3-trace.c
cdns3-trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
cdnsp-debug.h usb: cdnsp: Replace snprintf() with the safer scnprintf() variant 2023-12-04 22:25:17 +09:00
cdnsp-ep0.c
cdnsp-gadget.c usb:cdnsp: remove TRB_FLUSH_ENDPOINT command 2023-10-27 12:56:37 +02:00
cdnsp-gadget.h usb: cdnsp: fix for Link TRB with TC 2024-08-24 10:07:46 +08:00
cdnsp-mem.c
cdnsp-pci.c PCI: Use array for .id_table consistently 2024-06-07 14:46:12 -05:00
cdnsp-ring.c usb: cdnsp: fix for Link TRB with TC 2024-08-24 10:07:46 +08:00
cdnsp-trace.c
cdnsp-trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
core.c usb: cdnsp: fixed issue with incorrect detecting CDNSP family controllers 2024-02-19 09:30:41 +01:00
core.h usb: cdns3: Add quirk flag to enable suspend residency 2024-06-04 15:41:10 +02:00
drd.c usb: cdns3: Add quirk flag to enable suspend residency 2024-06-04 15:41:10 +02:00
drd.h usb: cdns3: Add quirk flag to enable suspend residency 2024-06-04 15:41:10 +02:00
gadget-export.h
host-export.h
host.c usb: cdnsp: blocked some cdns3 specific code 2024-02-19 09:30:41 +01:00