2022-03-09 01:23:35

by Petr Štetiar

[permalink] [raw]
Subject: [PATCH] Revert "ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode"

This reverts commit 55dd7e059098ce4bd0a55c251cb78e74604abb57 as it
breaks network on my A20-olinuxino-lime2 hardware revision "K" which has
Micrel KSZ9031RNXCC-TR Gigabit PHY. Bastien has probably some previous
hardware revisions which were based on RTL8211E-VB-CG1 PHY and thus this
fix was working on his board.

Cc: [email protected]
Cc: Bastien Roucariès <[email protected]>
References: https://github.com/openwrt/openwrt/issues/9153
References: https://github.com/OLIMEX/OLINUXINO/blob/master/HARDWARE/A20-OLinuXino-LIME2/hardware_revision_changes_log.txt
Signed-off-by: Petr Štetiar <[email protected]>
---
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
index ecb91fb899ff..8077f1716fbc 100644
--- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
@@ -112,7 +112,7 @@ &gmac {
pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>;
- phy-mode = "rgmii-id";
+ phy-mode = "rgmii";
status = "okay";
};


2022-03-16 12:15:12

by Petr Štetiar

[permalink] [raw]
Subject: Re: [PATCH] Revert "ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode"

Corentin Labbe <[email protected]> [2022-03-15 08:37:06]:

Hi,

> If your patch is applied, older revisions will stop working, right ?

correct, in the same way new revisions stopped working when that wrong fix was
applied.

> What about adding a new dtb like sun7i-a20-olinuxino-lime2-revk.dts ?

From my POV proper fix for earlier HW revisions G/G1/G2 is introduction of
sun7i-a20-olinuxino-lime2-revG.dts with a proper `phy-mode` for RTL8211E PHY.

Cheers,

Petr

2022-03-17 01:01:46

by Corentin Labbe

[permalink] [raw]
Subject: Re: [PATCH] Revert "ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode"

Le Tue, Mar 15, 2022 at 08:28:58AM +0100, Petr Štetiar a écrit :
> Petr Štetiar <[email protected]> [2022-03-08 13:55:30]:
>
> Hi Greg,
>
> one week has passed and as I didn't received any feedback, I'm providing more
> details in a hope to make it more clear, why I think, that this fix is wrong
> and should be reverted in LTS kernels 5.10 and 5.15.
>
> > This reverts commit 55dd7e059098ce4bd0a55c251cb78e74604abb57 as it breaks
> > network on my A20-olinuxino-lime2 hardware revision "K" which has Micrel
> > KSZ9031RNXCC-TR Gigabit PHY. Bastien has probably some previous hardware
> > revisions which were based on RTL8211E-VB-CG1 PHY and thus this fix was
> > working on his board.
>
> Disclaimer, I don't own A20-olinuxino-lime2 board with earlier HW revisions
> G/G1/G2 utilizing RTL8211E PHY.
>
> My understanding is, that up to kernel version 5.9 and specifically commit
> bbc4d71d6354 ("net: phy: realtek: fix rtl8211e rx/tx delay config") it was
> likely possible to use same DTS for A20-olinuxino-lime2 with KSZ9031 or
> RTL8211E PHYs (all HW revisions).
>
> At least I was using my A20-olinuxino-lime2 HW revision K with KSZ9031 PHY
> just fine with 4.19 kernel. After upgrade to 5.10 LTS kernel my network
> stopped working, reverting stable backport commit a90398438517 ("ARM: dts:
> sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode") fixed it.
>
> From my POV proper fix for earlier HW revisions G/G1/G2 is introduction of
> sun7i-a20-olinuxino-lime2-revG.dts with a proper `phy-mode` for RTL8211E PHY.
>
> Cheers,
>
> Petr
>

Hello

If your patch is applied, older revisions will stop working, right ?

What about adding a new dtb like sun7i-a20-olinuxino-lime2-revk.dts ?

Regards

> > Cc: [email protected]
> > Cc: Bastien Roucariès <[email protected]>
> > References: https://github.com/openwrt/openwrt/issues/9153
> > References: https://github.com/OLIMEX/OLINUXINO/blob/master/HARDWARE/A20-OLinuXino-LIME2/hardware_revision_changes_log.txt
> > Signed-off-by: Petr Štetiar <[email protected]>
> > ---
> > arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> > index ecb91fb899ff..8077f1716fbc 100644
> > --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> > +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> > @@ -112,7 +112,7 @@ &gmac {
> > pinctrl-names = "default";
> > pinctrl-0 = <&gmac_rgmii_pins>;
> > phy-handle = <&phy1>;
> > - phy-mode = "rgmii-id";
> > + phy-mode = "rgmii";
> > status = "okay";
> > };
>

2022-03-17 04:41:31

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] Revert "ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode"

On Tue, Mar 15, 2022 at 08:28:58AM +0100, Petr Štetiar wrote:
> Petr Štetiar <[email protected]> [2022-03-08 13:55:30]:
>
> Hi Greg,
>
> one week has passed and as I didn't received any feedback, I'm providing more
> details in a hope to make it more clear, why I think, that this fix is wrong
> and should be reverted in LTS kernels 5.10 and 5.15.

Why not reverted in Linus's tree first? Shouldn't that be also broken
here?

thanks,

greg k-h

2022-03-17 06:19:17

by Petr Štetiar

[permalink] [raw]
Subject: Re: [PATCH] Revert "ARM: dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode"

Petr Štetiar <[email protected]> [2022-03-08 13:55:30]:

Hi Greg,

one week has passed and as I didn't received any feedback, I'm providing more
details in a hope to make it more clear, why I think, that this fix is wrong
and should be reverted in LTS kernels 5.10 and 5.15.

> This reverts commit 55dd7e059098ce4bd0a55c251cb78e74604abb57 as it breaks
> network on my A20-olinuxino-lime2 hardware revision "K" which has Micrel
> KSZ9031RNXCC-TR Gigabit PHY. Bastien has probably some previous hardware
> revisions which were based on RTL8211E-VB-CG1 PHY and thus this fix was
> working on his board.

Disclaimer, I don't own A20-olinuxino-lime2 board with earlier HW revisions
G/G1/G2 utilizing RTL8211E PHY.

My understanding is, that up to kernel version 5.9 and specifically commit
bbc4d71d6354 ("net: phy: realtek: fix rtl8211e rx/tx delay config") it was
likely possible to use same DTS for A20-olinuxino-lime2 with KSZ9031 or
RTL8211E PHYs (all HW revisions).

At least I was using my A20-olinuxino-lime2 HW revision K with KSZ9031 PHY
just fine with 4.19 kernel. After upgrade to 5.10 LTS kernel my network
stopped working, reverting stable backport commit a90398438517 ("ARM: dts:
sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode") fixed it.

From my POV proper fix for earlier HW revisions G/G1/G2 is introduction of
sun7i-a20-olinuxino-lime2-revG.dts with a proper `phy-mode` for RTL8211E PHY.

Cheers,

Petr

> Cc: [email protected]
> Cc: Bastien Roucariès <[email protected]>
> References: https://github.com/openwrt/openwrt/issues/9153
> References: https://github.com/OLIMEX/OLINUXINO/blob/master/HARDWARE/A20-OLinuXino-LIME2/hardware_revision_changes_log.txt
> Signed-off-by: Petr Štetiar <[email protected]>
> ---
> arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> index ecb91fb899ff..8077f1716fbc 100644
> --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> @@ -112,7 +112,7 @@ &gmac {
> pinctrl-names = "default";
> pinctrl-0 = <&gmac_rgmii_pins>;
> phy-handle = <&phy1>;
> - phy-mode = "rgmii-id";
> + phy-mode = "rgmii";
> status = "okay";
> };