linux-uconsole/drivers/usb/host
Jonathan Bell b6f32897af xhci: add quirk for host controllers that don't update endpoint DCS
commit 5255660b20 upstream.

Seen on a VLI VL805 PCIe to USB controller. For non-stream endpoints
at least, if the xHC halts on a particular TRB due to an error then
the DCS field in the Out Endpoint Context maintained by the hardware
is not updated with the current cycle state.

Using the quirk XHCI_EP_CTX_BROKEN_DCS and instead fetch the DCS bit
from the TRB that the xHC stopped on.

[ bjorn: rebased to v5.14-rc2 ]

Link: https://github.com/raspberrypi/linux/issues/3060
Cc: stable@vger.kernel.org
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
Signed-off-by: Bjørn Mork <bjorn@mork.no>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20211008092547.3996295-3-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-10-27 09:56:46 +02:00
..
bcma-hcd.c Revert "USB: bcma: Add a check for devm_gpiod_get" 2021-09-30 10:10:59 +02:00
ehci-atmel.c
ehci-brcm.c usb: ehci: Add new EHCI driver for Broadcom STB SoC's 2020-05-13 14:28:01 +02:00
ehci-dbg.c usb: host: Use fallthrough pseudo-keyword 2020-07-10 08:55:18 +02:00
ehci-exynos.c usb: host: ehci-exynos: Fix error check in exynos_ehci_probe() 2020-06-18 10:40:57 +02:00
ehci-fsl.c usb: host: Use fallthrough pseudo-keyword 2020-07-10 08:55:18 +02:00
ehci-fsl.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
ehci-grlib.c
ehci-hcd.c usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI 2021-07-28 14:35:48 +02:00
ehci-hub.c USB: ehci: fix an interrupt calltrace error 2021-01-27 11:55:16 +01:00
ehci-mem.c
ehci-mv.c USB: EHCI: ehci-mv: improve error handling in mv_ehci_enable() 2021-09-18 13:40:19 +02:00
ehci-mxc.c USB: host: ehci-mxc: Add error handling in ehci_mxc_drv_probe() 2020-05-19 15:12:21 +02:00
ehci-npcm7xx.c usb/host: ehci-npcm7xx: Use pm_ptr() macro 2020-09-04 16:54:47 +02:00
ehci-omap.c usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe 2020-12-30 11:53:44 +01:00
ehci-orion.c usb: ehci-orion: Handle errors of clk_prepare_enable() in probe 2021-09-15 09:50:44 +02:00
ehci-pci.c USB:ehci:fix Kunpeng920 ehci hardware problem 2021-08-15 14:00:26 +02:00
ehci-platform.c usb: host: ehci-platform: Add workaround for brcm, xgs-iproc-ehci 2020-09-14 16:45:28 +02:00
ehci-pmcmsp.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
ehci-ppc-of.c
ehci-ps3.c
ehci-q.c usb: host: Use fallthrough pseudo-keyword 2020-07-10 08:55:18 +02:00
ehci-sched.c usb: host: ehci-sched: Remove ununsed function tt_start_uframe() 2020-09-14 16:50:24 +02:00
ehci-sh.c usb: host: ehci-sh: Remove unused platform data support 2019-12-10 11:34:27 +01:00
ehci-spear.c usb/host: ehci-spear: Use pm_ptr() macro 2020-09-04 16:54:45 +02:00
ehci-st.c
ehci-sysfs.c
ehci-tegra.c usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe() 2020-10-28 13:23:07 +01:00
ehci-timer.c
ehci-xilinx-of.c
ehci.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
fhci-dbg.c
fhci-hcd.c usb: host: fhci-hcd: annotate PIPE_CONTROL switch case with fallthrough 2020-02-19 11:08:52 +01:00
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c USB/Thunderbolt patches for 5.9-rc1 2020-08-05 12:13:10 -07:00
fhci-tds.c usb: host: fhci-tds: Remove unused variables 'buf' and 'extra_data' 2020-07-09 17:19:59 +02:00
fhci.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
fotg210-hcd.c usb: host: fotg210: fix the actual_length of an iso packet 2021-09-18 13:40:19 +02:00
fotg210.h usb: host: fotg210: fix the actual_length of an iso packet 2021-09-18 13:40:19 +02:00
fsl-mph-dr-of.c usb: host: fsl-mph-dr-of: check return of dma_set_mask() 2020-10-28 13:19:31 +01:00
imx21-dbg.c usb: host: imx21: create debugfs directory under usb root 2019-11-14 11:14:54 +08:00
imx21-hcd.c usb: host: imx21-hcd: Demote function header which is clearly not kerneldoc 2020-07-09 17:19:57 +02:00
imx21-hcd.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
isp116x-hcd.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
isp116x.h
isp1362-hcd.c usb: Use fallthrough pseudo-keyword 2020-07-10 08:55:17 +02:00
isp1362.h usb: host: isp1362: Mark the many unused ISP1362_REG entries as __maybe_unused 2020-07-03 10:18:40 +02:00
Kconfig usb: xhci: fix spelling mistake in Kconfig "firwmare" -> "firmware" 2020-06-18 16:03:46 +02:00
Makefile usb: renesas-xhci: Add the renesas xhci driver 2020-05-15 15:44:35 +02:00
max3421-hcd.c usb: max-3421: Prevent corruption of freed memory 2021-07-28 14:35:44 +02:00
ohci-at91.c usb: host: ohci-at91: suspend/resume ports after/before OHCI accesses 2021-08-12 13:22:11 +02:00
ohci-da8xx.c usb: ohci-da8xx: ensure error return on variable error is set 2020-01-08 17:34:18 +01:00
ohci-dbg.c
ohci-exynos.c usb: host: ohci-exynos: Fix error handling in exynos_ohci_probe() 2020-08-27 09:25:58 +02:00
ohci-hcd.c usb: ohci: Make distrust_firmware param default to false 2020-09-14 16:48:26 +02:00
ohci-hub.c USB: OHCI: Use fallthrough pseudo-keyword 2020-07-10 08:55:18 +02:00
ohci-mem.c
ohci-nxp.c
ohci-omap.c usb: ohci-omap: Fix descriptor conversion 2020-12-04 16:03:52 +01:00
ohci-pci.c USB: OHCI: remove obsolete FIXME comment 2020-06-19 08:58:44 +02:00
ohci-platform.c usb/ohci-platform: Fix a warning when hibernating 2020-05-18 18:15:39 +02:00
ohci-ppc-of.c
ohci-ps3.c
ohci-pxa27x.c
ohci-q.c USB: OHCI: Use fallthrough pseudo-keyword 2020-07-10 08:55:18 +02:00
ohci-s3c2410.c usb: host: ohci-s3c2410: Demote obvious misuse of kerneldoc to standard comment block 2020-07-09 16:46:57 +02:00
ohci-sa1111.c
ohci-sm501.c USB: ohci-sm501: Add missed iounmap() in remove 2020-06-18 10:42:53 +02:00
ohci-spear.c
ohci-st.c
ohci-tmio.c usb: host: ohci-tmio: add IRQ check 2021-09-15 09:50:40 +02:00
ohci.h usb: host: ohci: Mark cc_to_error as __maybe_unused 2020-07-03 10:18:40 +02:00
oxu210hp-hcd.c usb: oxu210hp-hcd: Fix memory leak in oxu_create 2020-12-30 11:53:44 +01:00
pci-quirks.c usb: pci-quirks: convert to readl_poll_timeout_atomic() 2020-09-25 16:30:05 +02:00
pci-quirks.h
r8a66597-hcd.c usb: host: r8a66597-hcd: Remove set, then over-written, but never used variable 'tmp' 2020-07-09 17:19:57 +02:00
r8a66597.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
sl811-hcd.c usb: sl811-hcd: improve misleading indentation 2021-05-22 11:40:51 +02:00
sl811.h
sl811_cs.c
ssb-hcd.c
u132-hcd.c usb: host: u132-hcd: Remove u132_static_list and list head u132_list 2020-04-16 14:32:46 +02:00
uhci-debug.c
uhci-grlib.c
uhci-hcd.c
uhci-hcd.h
uhci-hub.c
uhci-pci.c usb: hci: add hc_driver as argument for usb_hcd_pci_probe 2020-05-15 15:44:34 +02:00
uhci-platform.c
uhci-q.c
xhci-dbg.c
xhci-dbgcap.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
xhci-dbgcap.h xhci: dbc: remove tty specific port structure from struct xhci_dbc 2020-07-23 17:05:29 +02:00
xhci-dbgtty.c USB: xhci: dbc: fix tty registration race 2021-10-20 11:44:59 +02:00
xhci-debugfs.c xhci: fix unsafe memory usage in xhci tracing 2021-09-12 08:58:28 +02:00
xhci-debugfs.h usb: xhci: add debugfs support for ep with stream 2020-09-20 16:18:00 +02:00
xhci-ext-caps.c
xhci-ext-caps.h usb: xhci: Increase timeout for HC halt 2021-05-19 10:13:15 +02:00
xhci-histb.c xhci: hisilicon: fix refercence leak in xhci_histb_probe 2020-11-13 14:32:43 +01:00
xhci-hub.c xhci: Fix lost USB 2 remote wake 2021-07-28 14:35:43 +02:00
xhci-mem.c xhci: solve a double free problem while doing s4 2021-07-14 16:55:38 +02:00
xhci-mtk-sch.c usb: xhci-mtk: improve bandwidth scheduling with TT 2021-05-14 09:49:57 +02:00
xhci-mtk.c usb: xhci-mtk: support quirk to disable usb2 lpm 2021-05-11 14:47:19 +02:00
xhci-mtk.h usb: xhci-mtk: improve bandwidth scheduling with TT 2021-05-14 09:49:57 +02:00
xhci-mvebu.c usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 2021-02-10 09:29:10 +01:00
xhci-mvebu.h usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 2021-02-10 09:29:10 +01:00
xhci-pci-renesas.c usb: renesas-xhci: Prefer firmware loading on unknown ROM state 2021-09-03 10:09:23 +02:00
xhci-pci.c xhci: add quirk for host controllers that don't update endpoint DCS 2021-10-27 09:56:46 +02:00
xhci-pci.h usb: xhci: make symbols static 2020-05-19 14:11:55 +02:00
xhci-plat.c usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 2021-02-10 09:29:10 +01:00
xhci-plat.h usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720 2021-02-10 09:29:10 +01:00
xhci-rcar.c usb: host: xhci-rcar: Don't reload firmware after the completion 2021-09-12 08:58:28 +02:00
xhci-rcar.h USB: host: Use the correct style for SPDX License Identifier 2020-04-16 14:32:46 +02:00
xhci-ring.c xhci: add quirk for host controllers that don't update endpoint DCS 2021-10-27 09:56:46 +02:00
xhci-tegra.c xhci: tegra: Delay for disabling LFPS detector 2021-01-27 11:55:18 +01:00
xhci-trace.c
xhci-trace.h xhci: fix unsafe memory usage in xhci tracing 2021-09-12 08:58:28 +02:00
xhci.c xhci: guard accesses to ep_state in xhci_endpoint_reset() 2021-10-20 11:45:00 +02:00
xhci.h xhci: add quirk for host controllers that don't update endpoint DCS 2021-10-27 09:56:46 +02:00