linux-stable/arch/arm64
Andrejs Cainikovs 64819aaad2 arm64: dts: ti: k3-am62-main: disable usb lpm
[ Upstream commit 9c99b337a8 ]

AM62 USB works with some devices, while failing to operate with others.

[  560.189822] xhci-hcd xhci-hcd.4.auto: xHCI Host Controller
[  560.195631] xhci-hcd xhci-hcd.4.auto: new USB bus registered, assigned bus number 2
[  574.388509] xhci-hcd xhci-hcd.4.auto: can't setup: -110
[  574.393814] xhci-hcd xhci-hcd.4.auto: USB bus 2 deregistered
[  574.399544] xhci-hcd: probe of xhci-hcd.4.auto failed with error -110

This seems to be related to LPM (Link Power Management), and disabling it
turns USB into reliable working state.

As per AM62 reference manual:

> 4.8.2.1 USB2SS Unsupported Features
>
> The following features are not supported on this family of devices:
> ...
> - USB 2.0 ECN: Link Power Management (LPM)
> ...

Fixes: 2240f96cf3 ("arm64: dts: ti: k3-am62-main: Add support for USB")
Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Reviewed-by: Roger Quadros <rogerq@ti.com>
Link: https://lore.kernel.org/r/20240209130213.38908-1-andrejs.cainikovs@gmail.com
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:16:44 -04:00
..
boot arm64: dts: ti: k3-am62-main: disable usb lpm 2024-03-26 18:16:44 -04:00
configs arm64: defconfig reorder config lines 2024-01-11 09:34:42 +01:00
crypto crypto: arm64/neonbs - fix out-of-bounds access on short input 2024-02-24 08:37:24 +08:00
hyperv
include arm64 fixes for -rc6 2024-02-23 10:26:43 -08:00
kernel arm64: prohibit probing on arch_kunwind_consume_entry() 2024-03-04 13:00:00 +00:00
kvm KVM: arm64: vgic-its: Test for valid IRQ in MOVALL handler 2024-02-21 10:06:41 +00:00
lib
mm IOMMU Updates for Linux v6.8 2024-01-18 15:16:57 -08:00
net
tools arm64: Rename ARM64_WORKAROUND_2966298 2024-01-12 12:51:33 +00:00
xen
Kbuild
Kconfig arm64 fixes for -rc1 2024-01-19 13:36:15 -08:00
Kconfig.debug
Kconfig.platforms
Makefile arm64: vdso32: Remove unused vdso32-offsets.h 2024-01-30 11:59:17 +00:00