public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: mediatek: mt8195: Add missing clock for xhci1 controller
@ 2024-07-22 15:26 Nícolas F. R. A. Prado
  2024-07-23  6:18 ` AngeloGioacchino Del Regno
  2024-07-25 10:34 ` Chen-Yu Tsai
  0 siblings, 2 replies; 14+ messages in thread
From: Nícolas F. R. A. Prado @ 2024-07-22 15:26 UTC (permalink / raw)
  To: AngeloGioacchino Del Regno, Matthias Brugger
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, kernel,
	devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	Nícolas F. R. A. Prado

Currently if the xhci1 controller happens to probe before the pcie1
controller then it fails with the following errors:

xhci-mtk 11290000.usb: clocks are not stable (0x1003d0f)
xhci-mtk 11290000.usb: can't setup: -110
xhci-mtk: probe of 11290000.usb failed with error -110

The issue has been tracked down to the CLK_INFRA_AO_PCIE_P1_TL_96M
clock, although exactly why this pcie clock is needed for the usb
controller is still unknown. Add the clock to the xhci1 controller so it
always probes successfully and use a placeholder clock name for it.

Reported-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> #KernelCI
Closes: https://lore.kernel.org/all/9fce9838-ef87-4d1b-b3df-63e1ddb0ec51@notapiano/
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
---
 arch/arm64/boot/dts/mediatek/mt8195.dtsi | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8195.dtsi b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
index 2ee45752583c..cc5169871f1c 100644
--- a/arch/arm64/boot/dts/mediatek/mt8195.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8195.dtsi
@@ -1453,9 +1453,15 @@ xhci1: usb@11290000 {
 				 <&topckgen CLK_TOP_SSUSB_P1_REF>,
 				 <&apmixedsys CLK_APMIXED_USB1PLL>,
 				 <&clk26m>,
-				 <&pericfg_ao CLK_PERI_AO_SSUSB_1P_XHCI>;
+				 <&pericfg_ao CLK_PERI_AO_SSUSB_1P_XHCI>,
+				 /*
+				  * This clock is required due to a hardware
+				  * bug. The 'frmcnt_ck' clock name is used as a
+				  * placeholder.
+				  */
+				 <&infracfg_ao CLK_INFRA_AO_PCIE_P1_TL_96M>;
 			clock-names = "sys_ck", "ref_ck", "mcu_ck", "dma_ck",
-				      "xhci_ck";
+				      "xhci_ck", "frmcnt_ck";
 			mediatek,syscon-wakeup = <&pericfg 0x400 104>;
 			wakeup-source;
 			status = "disabled";

---
base-commit: dee7f101b64219f512bb2f842227bd04c14efe30
change-id: 20240722-usb-1129-probe-pci-clk-fix-ef8646f46aac

Best regards,
-- 
Nícolas F. R. A. Prado <nfraprado@collabora.com>


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-07-30  9:10 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-22 15:26 [PATCH] arm64: dts: mediatek: mt8195: Add missing clock for xhci1 controller Nícolas F. R. A. Prado
2024-07-23  6:18 ` AngeloGioacchino Del Regno
2024-07-25 10:34 ` Chen-Yu Tsai
2024-07-25 12:59   ` Macpaul Lin
2024-07-26 12:11   ` AngeloGioacchino Del Regno
2024-07-26 15:11     ` Chen-Yu Tsai
2024-07-29  7:59       ` AngeloGioacchino Del Regno
2024-07-29  8:07         ` Chen-Yu Tsai
2024-07-29  8:54           ` AngeloGioacchino Del Regno
2024-07-29 10:48             ` Chen-Yu Tsai
2024-07-29 12:34               ` AngeloGioacchino Del Regno
2024-07-29 18:14                 ` Nícolas F. R. A. Prado
2024-07-30  4:17                   ` Chen-Yu Tsai
2024-07-30  9:09                     ` AngeloGioacchino Del Regno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox