Re: [PATCH] arm64: dts: rockchip: qnap-ts433: Simplify network PHY connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday, 4 March 2024 23:44:48 CET Uwe Kleine-König wrote:
> > That was because it's actually a bug report (wrt Quartz64 A and B), but
> > especially your remark made all the pieces I found earlier fall into
> > place.
> > Therefor I 'abused' this thread/patch to report it.
> > 
> > I'm happy to test patches, but I lack the knowledge to come up with one
> > myself.
> 
> I guess that would be:
> 
> diff --git a/arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts
> b/arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts index
> 59843a7a199c..f4d1deba3110 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts
> @@ -269,7 +269,7 @@ &gmac1 {
>         assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru
> SCLK_GMAC1>, <&gmac1_clkin>; clock_in_out = "input";
>         phy-supply = <&vcc_3v3>;
> -       phy-mode = "rgmii";
> +       phy-mode = "rgmii-id";
>         pinctrl-names = "default";
>         pinctrl-0 = <&gmac1m0_miim
>                      &gmac1m0_tx_bus2
> @@ -281,8 +281,6 @@ &gmac1m0_clkinout
>         snps,reset-active-low;
>         /* Reset time is 20ms, 100ms for rtl8211f */
>         snps,reset-delays-us = <0 20000 100000>;
> -       tx_delay = <0x30>;
> -       rx_delay = <0x10>;
>         phy-handle = <&rgmii_phy1>;
>         status = "okay";
>  };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts
> b/arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts index
> 2d92713be2a0..ec1351a171d4 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts
> @@ -176,7 +176,7 @@ &gmac1 {
>         assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru
> SCLK_GMAC1_RGMII_SPEED>, <&cru SCLK_GMAC1>; assigned-clock-parents = <&cru
> SCLK_GMAC1_RGMII_SPEED>, <&cru SCLK_GMAC1>, <&gmac1_clkin>; clock_in_out =
> "input";
> -       phy-mode = "rgmii";
> +       phy-mode = "rgmii-id";
>         phy-supply = <&vcc_3v3>;
>         pinctrl-names = "default";
>         pinctrl-0 = <&gmac1m1_miim
> @@ -189,8 +189,6 @@ &gmac1m1_clkinout
>         snps,reset-active-low;
>         /* Reset time is 20ms, 100ms for rtl8211f, also works well here */
>         snps,reset-delays-us = <0 20000 100000>;
> -       tx_delay = <0x4f>;
> -       rx_delay = <0x24>;
>         phy-handle = <&rgmii_phy1>;
>         status = "okay";
>  };

It turns out my research was incomplete. I already felt uneasy when I realized 
that 'pgwipeout' had set it to rgmii and while I wasn't able to track the 
conversation down, I did have a vague recollection of there being a discussion 
wrt rgmii vs rgmii-id. IOW: he must have set it to rgmii deliberately.

And then I found this:
https://lore.kernel.org/all/20220606163023.3677147-1-pgwipeout@xxxxxxxxx/

For Model B it was initially set to rgmii-id, but was later changed to rgmii 
due to compatibility issues on the production Model B.
I'm going to assume that it was (initially) set to rgmii on Model A for 
similar reasons.

Cheers,
  Diederik

Attachment: signature.asc
Description: This is a digitally signed message part.


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux