linux/drivers/usb/host
Weitao Wango f085bd4bfe USB: Fix ehci infinite suspend-resume loop issue in zhaoxin
In zhaoxin platform, some ehci projects will latch a wakeup signal
internal when plug in a device on port during system S0. This wakeup
signal will turn on when ehci runtime suspend, which will trigger a
system control interrupt that will resume ehci back to D0. As no
device connect, ehci will be set to runtime suspend and turn on the
internal latched wakeup signal again. It will cause a suspend-resume
loop and generate system control interrupt continuously.

Fixed this issue by clear wakeup signal latched in ehci internal when
ehci resume callback is called.

Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Weitao Wang <WeitaoWang-oc@zhaoxin.com>
Link: https://lore.kernel.org/r/20220324121735.3803-1-WeitaoWang-oc@zhaoxin.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-04-21 18:53:53 +02:00
..
bcma-hcd.c Revert "USB: bcma: Add a check for devm_gpiod_get" 2021-09-14 10:34:15 +02:00
ehci-atmel.c USB: host: ehci-atmel: Add support for HSIC phy 2021-09-14 10:26:29 +02:00
ehci-brcm.c USB: ehci_brcm_hub_control: Improve port index sanitizing 2021-11-17 14:34:18 +01:00
ehci-dbg.c usb: host: {e|o}hci-dbg: kill useless 'ret' variable initializers 2022-02-15 15:11:20 +01:00
ehci-exynos.c
ehci-fsl.c fsl-usb: add need_oc_pp_cycle flag for 85xx also 2021-05-21 14:04:57 +02:00
ehci-fsl.h
ehci-grlib.c
ehci-hcd.c USB: Fix ehci infinite suspend-resume loop issue in zhaoxin 2022-04-21 18:53:53 +02:00
ehci-hub.c USB: EHCI: Improve port index sanitizing 2021-10-05 12:52:03 +02:00
ehci-mem.c usb: host: ehci: Make use of dma_pool_zalloc() instead of dma_pool_alloc/memset() 2021-10-21 12:47:56 +02:00
ehci-mv.c usb: host: ehci-mv: drop duplicated MODULE_ALIAS 2021-09-21 16:33:00 +02:00
ehci-npcm7xx.c
ehci-omap.c usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe 2020-12-09 14:33:45 +01:00
ehci-orion.c usb: ehci-orion: Handle errors of clk_prepare_enable() in probe 2021-08-26 13:09:34 +02:00
ehci-pci.c USB: Fix ehci infinite suspend-resume loop issue in zhaoxin 2022-04-21 18:53:53 +02:00
ehci-platform.c usb: host: ehci-platform: Update brcm, xgs-iproc-ehci workaround 2022-02-15 15:11:23 +01:00
ehci-ppc-of.c
ehci-ps3.c
ehci-q.c usb: host: ehci-q: make qtd_fill() return *unsigned int* 2022-02-24 11:19:18 +01:00
ehci-sched.c usb: host: ehci-sched: Use struct_size() in kzalloc() 2022-01-26 13:50:07 +01:00
ehci-sh.c Revert "usb: host: ehci-sh: propagate errors from platform_get_irq()" 2021-12-21 07:14:05 +01:00
ehci-spear.c
ehci-st.c
ehci-sysfs.c
ehci-timer.c
ehci-xilinx-of.c
ehci.h USB: Fix ehci infinite suspend-resume loop issue in zhaoxin 2022-04-21 18:53:53 +02:00
fhci-dbg.c
fhci-hcd.c
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c
fhci-tds.c
fhci.h
fotg210-hcd.c usb: host: fotg210: Use struct_size() helper in kzalloc() 2022-01-26 14:01:59 +01:00
fotg210.h usb: host: fotg210: fix the actual_length of an iso packet 2021-07-21 10:03:42 +02:00
fsl-mph-dr-of.c
isp116x-hcd.c USB: host: isp116x: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
isp116x.h USB: host: isp116x: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
isp1362-hcd.c USB: host: isp1362: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
isp1362.h USB: host: isp1362: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
Kconfig usb: Introduce Xen pvUSB frontend (xen hcd) 2021-12-13 14:58:32 +01:00
Makefile usb: Introduce Xen pvUSB frontend (xen hcd) 2021-12-13 14:58:32 +01:00
max3421-hcd.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
ohci-at91.c usb: host: ohci-at91: suspend/resume ports after/before OHCI accesses 2021-07-27 16:31:17 +02:00
ohci-da8xx.c
ohci-dbg.c usb: host: {e|o}hci-dbg: kill useless 'ret' variable initializers 2022-02-15 15:11:20 +01:00
ohci-exynos.c
ohci-hcd.c usb: ohci: Prefer struct_size over open coded arithmetic 2021-09-14 10:13:59 +02:00
ohci-hub.c usb: ohci: disable start-of-frame interrupt in ohci_rh_suspend 2021-10-21 12:48:18 +02:00
ohci-mem.c
ohci-nxp.c
ohci-omap.c usb: host: ohci-omap: propagate errors from platform_get_irq() 2021-12-17 16:54:23 +01:00
ohci-pci.c
ohci-platform.c
ohci-ppc-of.c
ohci-ps3.c
ohci-pxa27x.c
ohci-q.c
ohci-s3c2410.c usb: ohci-s3c2410: Use platform_get_irq() to get the interrupt 2021-12-17 16:51:59 +01:00
ohci-sa1111.c ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void 2021-02-01 19:42:13 +00:00
ohci-sm501.c
ohci-spear.c usb: ohci-spear: Remove direct access to platform_device resource list 2021-12-17 16:51:31 +01:00
ohci-st.c
ohci-tmio.c headers/prep: Fix non-standard header section: drivers/usb/host/ohci-tmio.c 2022-01-05 16:18:11 +01:00
ohci.h
oxu210hp-hcd.c usb: oxu210hp-hcd: remove redundant call to max_packet() macro 2022-03-15 18:23:53 +01:00
pci-quirks.c
pci-quirks.h
r8a66597-hcd.c
r8a66597.h
sl811_cs.c usb: host: Mundane spello fix in the file sl811_cs.c 2021-03-18 09:02:27 +01:00
sl811-hcd.c usb: sl811-hcd: improve misleading indentation 2021-03-23 12:38:11 +01:00
sl811.h USB: host: sl811: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
ssb-hcd.c
u132-hcd.c usb: Remove redundant 'flush_workqueue()' calls 2021-11-17 14:36:57 +01:00
uhci-debug.c
uhci-grlib.c
uhci-hcd.c USB: host: uhci: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
uhci-hcd.h USB: host: uhci: remove dentry pointer for debugfs 2021-03-10 09:37:15 +01:00
uhci-hub.c
uhci-pci.c
uhci-platform.c usb: uhci: Use platform_get_irq() to get the interrupt 2021-12-17 16:52:21 +01:00
uhci-q.c
xen-hcd.c xen: branch for v5.18-rc1 2022-03-28 14:32:39 -07:00
xhci-dbg.c
xhci-dbgcap.c xhci: dbc: Don't call dbc_tty_init() on every dbc tty probe 2022-02-17 16:20:45 +01:00
xhci-dbgcap.h xhci: dbgtty: use IDR to support several dbc instances. 2022-02-17 16:20:45 +01:00
xhci-dbgtty.c xhci: dbgtty: use IDR to support several dbc instances. 2022-02-17 16:20:45 +01:00
xhci-debugfs.c xhci: fix even more unsafe memory usage in xhci tracing 2021-08-26 13:06:02 +02:00
xhci-debugfs.h
xhci-ext-caps.c xhci: ext-caps: Use software node API with the properties 2021-02-05 10:08:19 +01:00
xhci-ext-caps.h usb: xhci: Increase timeout for HC halt 2021-05-13 14:47:36 +02:00
xhci-histb.c
xhci-hub.c xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms 2022-04-09 17:17:56 +02:00
xhci-mem.c usb: host: xhci: fix a comment typo in xhci_mem_init() 2022-03-03 15:46:08 +01:00
xhci-mtk-sch.c usb: xhci-mtk: Use struct_size() helper in create_sch_ep() 2022-01-26 14:03:26 +01:00
xhci-mtk.c usb: host: xhci-mtk: Simplify supplies handling with regulator_bulk 2022-02-17 16:12:04 +01:00
xhci-mtk.h usb: host: xhci-mtk: Simplify supplies handling with regulator_bulk 2022-02-17 16:12:04 +01:00
xhci-mvebu.c Revert "usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720" 2022-02-25 19:12:21 +05:30
xhci-mvebu.h Revert "usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720" 2022-02-25 19:12:21 +05:30
xhci-pci-renesas.c USB/Thunderbolt patches for 5.15-rc1 2021-09-01 09:59:34 -07:00
xhci-pci.c xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set. 2021-12-21 12:38:33 +01:00
xhci-pci.h usb: renesas-xhci: Remove renesas_xhci_pci_exit() 2021-07-21 10:05:59 +02:00
xhci-plat.c Char/Misc and other driver updates for 5.18-rc1 2022-03-28 12:27:35 -07:00
xhci-plat.h Revert "usb: host: xhci: mvebu: make USB 3.0 PHY optional for Armada 3720" 2022-02-25 19:12:21 +05:30
xhci-rcar.c usb: Drop commas after SoC match table sentinels 2022-03-03 15:45:15 +01:00
xhci-rcar.h
xhci-ring.c USB: Fix xhci event ring dequeue pointer ERDP update issue 2022-04-09 17:17:56 +02:00
xhci-tegra.c usb: xhci: tegra:Fix PM usage reference leak of tegra_xusb_unpowergate_partitions 2022-04-21 18:32:48 +02:00
xhci-trace.c
xhci-trace.h xhci: fix even more unsafe memory usage in xhci tracing 2021-08-26 13:06:02 +02:00
xhci.c xhci: stop polling roothubs after shutdown 2022-04-09 17:17:56 +02:00
xhci.h xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() 2022-03-03 15:46:07 +01:00