[PATCH] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1

Macpaul Lin posted 1 patch 9 months ago
arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 6 ++++++
1 file changed, 6 insertions(+)
[PATCH] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
Posted by Macpaul Lin 9 months ago
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>
---
 arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
index 7fc515a07c65..e0b9f2615c11 100644
--- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
@@ -854,6 +854,10 @@
 
 &u3phy1 {
 	status = "okay";
+
+	u3port1: usb-phy@700 {
+		mediatek,force-mode;
+	};
 };
 
 &u3phy2 {
@@ -885,6 +889,8 @@
 };
 
 &xhci1 {
+	phys = <&u2port1 PHY_TYPE_USB2>,
+	       <&u3port1 PHY_TYPE_USB3>;
 	vusb33-supply = <&mt6359_vusb_ldo_reg>;
 	status = "okay";
 };
-- 
2.18.0
Re: [PATCH] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
Posted by AngeloGioacchino Del Regno 6 months, 4 weeks ago
On Fri, 16 Feb 2024 17:57:51 +0800, Macpaul Lin wrote:
> 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.
> 
> [...]

Applied to v6.9-next/dts64, thanks!

[1/1] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
      commit: 2cf936800fc1eb22465e43d9d908336630255c3d

Cheers,
Angelo
Re: [PATCH] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
Posted by Macpaul Lin 6 months, 4 weeks ago
On 2/16/24 17:57, Macpaul Lin wrote:
> 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

Dear AngeloGioacchino,

Just a soft reminding about the patch has been sent a while back for the 
shared U3PHY and PCIe PHY setup for genio-1200 boards. I'm not sure if 
you've missed this patch in mail box. :)

The patch is pretty important as it lets the device tree (dts) decide 
whether to enable U3PHY or PCIe PHY. Because this is a shared hardware 
phy and could only be configured in dts to decide which function to be 
initialized, so it's something that should be included in the 
board-specific dts files.

Do you think it needs to be resubmitted, or is it still in the queue for 
review? It's meant to be ready for action from kernel version 6.8 onwards.

Looking forward to your thoughts on this. Let me know if there's 
anything else you need from my side.

> 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>
> ---
>   arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 6 ++++++
>   1 file changed, 6 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> index 7fc515a07c65..e0b9f2615c11 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
> @@ -854,6 +854,10 @@
>   
>   &u3phy1 {
>   	status = "okay";
> +
> +	u3port1: usb-phy@700 {
> +		mediatek,force-mode;
> +	};
>   };
>   
>   &u3phy2 {
> @@ -885,6 +889,8 @@
>   };
>   
>   &xhci1 {
> +	phys = <&u2port1 PHY_TYPE_USB2>,
> +	       <&u3port1 PHY_TYPE_USB3>;
>   	vusb33-supply = <&mt6359_vusb_ldo_reg>;
>   	status = "okay";
>   };

Thanks
Macpaul Lin
Re: [PATCH] arm64: dts: mediatek: mt8395-genio-1200-evk: add u3port1 for xhci1
Posted by AngeloGioacchino Del Regno 6 months, 4 weeks ago
Il 18/04/24 05:44, Macpaul Lin ha scritto:
> On 2/16/24 17:57, Macpaul Lin wrote:
>> 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
> 
> Dear AngeloGioacchino,
> 
> Just a soft reminding about the patch has been sent a while back for the shared 
> U3PHY and PCIe PHY setup for genio-1200 boards. I'm not sure if you've missed this 
> patch in mail box. :)
> 
> The patch is pretty important as it lets the device tree (dts) decide whether to 
> enable U3PHY or PCIe PHY. Because this is a shared hardware phy and could only be 
> configured in dts to decide which function to be initialized, so it's something 
> that should be included in the board-specific dts files.
> 
> Do you think it needs to be resubmitted, or is it still in the queue for review? 
> It's meant to be ready for action from kernel version 6.8 onwards.
> 
> Looking forward to your thoughts on this. Let me know if there's anything else you 
> need from my side.
> 

As you can understand, I have to take care of many patches for each merge cycle,
and it may happen that inadvertently some patch goes out of my radar.

Please Macpaul, if this happens again, I appreciate that you remind me about
patches that I seem to leave behind, so please keep sending me such emails if
and when necessary.

Thanks!
Angelo

>> 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>
>> ---
>>   arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts | 6 ++++++
>>   1 file changed, 6 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts 
>> b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> index 7fc515a07c65..e0b9f2615c11 100644
>> --- a/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> +++ b/arch/arm64/boot/dts/mediatek/mt8395-genio-1200-evk.dts
>> @@ -854,6 +854,10 @@
>>   &u3phy1 {
>>       status = "okay";
>> +
>> +    u3port1: usb-phy@700 {
>> +        mediatek,force-mode;
>> +    };
>>   };
>>   &u3phy2 {
>> @@ -885,6 +889,8 @@
>>   };
>>   &xhci1 {
>> +    phys = <&u2port1 PHY_TYPE_USB2>,
>> +           <&u3port1 PHY_TYPE_USB3>;
>>       vusb33-supply = <&mt6359_vusb_ldo_reg>;
>>       status = "okay";
>>   };
> 
> Thanks
> Macpaul Lin