arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
authorMacpaul Lin <macpaul.lin@mediatek.com>
Fri, 16 Feb 2024 09:57:51 +0000 (17:57 +0800)
committerAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Thu, 27 Jun 2024 08:10:22 +0000 (10:10 +0200)
This patch fixes an issue where xhci1 was not functioning properly because
the state and PHY settings were incorrect.

The introduction of the 'force-mode' property in the phy-mtk-tphy driver
allows for the correct initialization of xhci1 by updating the Device Tree
settings accordingly.

The necessary fixup which added support for the 'force-mode' switch in the
phy-mtk-tphy driver.
commit 9b27303003f5 ("phy: mediatek: tphy: add support force phy mode switch")
Link: https://lore.kernel.org/r/20231211025624.28991-2-chunfeng.yun@mediatek.com
Prior to this fix, the system would exhibit the following probe failure messages
for xhci1:
  xhci-mtk 11290000.usb: supply vbus not found, using dummy regulator
  xhci-mtk 11290000.usb: uwk - reg:0x400, version:104
  xhci-mtk 11290000.usb: xHCI Host Controller
  xhci-mtk 11290000.usb: new USB bus registered, assigned bus number 5
  xhci-mtk 11290000.usb: clocks are not stable (0x1003d0f)
  xhci-mtk 11290000.usb: can't setup: -110
  xhci-mtk 11290000.usb: USB bus 5 deregistered
  xhci-mtk: probe of 11290000.usb failed with error -110

With the application of this dts fixup, the aforementioned initialization errors
are resolved and xhci1 is working.

Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Link: https://lore.kernel.org/r/20240216095751.4937-1-macpaul.lin@mediatek.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts

index 1558649..a1b6138 100644 (file)
 
 &u3phy1 {
        status = "okay";
+
+       u3port1: usb-phy@700 {
+               mediatek,force-mode;
+       };
 };
 
 &u3phy2 {
 };
 
 &xhci1 {
+       phys = <&u2port1 PHY_TYPE_USB2>,
+              <&u3port1 PHY_TYPE_USB3>;
        vusb33-supply = <&mt6359_vusb_ldo_reg>;
        status = "okay";
 };