mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 15:02:32 +00:00
e95b1b23f1
Ran update_kernel.sh in a fresh clone without any existing toolchains. Manually rebased: bcm27xx 950-0267-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch bcm53xx 180-usb-xhci-add-support-for-performing-fake-doorbell.patch layerscape 302-dts-0008-arm64-dts-ls1046a-accumulated-change-to-ls1046a-boar.patch 820-usb-0016-MLK-16735-usb-host-add-XHCI_CDNS_HOST-flag.patch 820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch Build system: x86_64 Build-tested: bcm27xx/bcm2711, ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions/everything functional. Signed-off-by: John Audia <graysky@archlinux.us> [remove quilt comment, fix/adjust 820-usb-* layerscape patches] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
43 lines
1.5 KiB
Diff
43 lines
1.5 KiB
Diff
From a9f1d7994a9f8a38fdace19454ef031244e24e5e Mon Sep 17 00:00:00 2001
|
|
From: Peter Chen <peter.chen@nxp.com>
|
|
Date: Thu, 9 Nov 2017 16:58:40 +0800
|
|
Subject: [PATCH] MLK-16735 usb: host: add XHCI_CDNS_HOST flag
|
|
|
|
The NXP Cadence XHCI host has the same issue with Intel's,
|
|
it is triggered by reboot test, the test case is described
|
|
at this jira ticket.
|
|
|
|
BuildInfo:
|
|
- SCFW 8dcff26, IMX-MKIMAGE ea027c4b, ATF
|
|
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
|
|
|
|
Acked-by: Jun Li <jun.li@nxp.com>
|
|
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
(cherry picked from commit 5e353132931b9dc6e05f6bea1281ae35dd6a59d8)
|
|
---
|
|
drivers/usb/host/xhci.c | 2 +-
|
|
drivers/usb/host/xhci.h | 1 +
|
|
2 files changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/usb/host/xhci.c
|
|
+++ b/drivers/usb/host/xhci.c
|
|
@@ -193,7 +193,7 @@ int xhci_reset(struct xhci_hcd *xhci)
|
|
* Without this delay, the subsequent HC register access,
|
|
* may result in a system hang very rarely.
|
|
*/
|
|
- if (xhci->quirks & XHCI_INTEL_HOST)
|
|
+ if (xhci->quirks & (XHCI_INTEL_HOST | XHCI_CDNS_HOST))
|
|
udelay(1000);
|
|
|
|
ret = xhci_handshake(&xhci->op_regs->command,
|
|
--- a/drivers/usb/host/xhci.h
|
|
+++ b/drivers/usb/host/xhci.h
|
|
@@ -1873,6 +1873,7 @@ struct xhci_hcd {
|
|
#define XHCI_DEFAULT_PM_RUNTIME_ALLOW BIT_ULL(33)
|
|
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
|
|
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
|
|
+#define XHCI_CDNS_HOST BIT_ULL(36)
|
|
#define XHCI_SKIP_PHY_INIT BIT_ULL(37)
|
|
#define XHCI_DISABLE_SPARSE BIT_ULL(38)
|
|
|