Thread (1 message) 1 message, 1 author, 2017-01-18

Re: [PATCH 3/5] ARM64: dts: meson-gxbb-p20x: add reset for the ethernet PHY

From: Martin Blumenstingl <hidden>
Date: 2017-01-18 14:26:22
Also in: linux-amlogic, linux-arm-kernel

On Wed, Jan 18, 2017 at 11:36 AM, Jerome Brunet [off-list ref] wrote:
On Tue, 2017-01-17 at 22:26 +0100, Martin Blumenstingl wrote:
quoted
On Tue, Jan 17, 2017 at 8:22 PM, Jerome Brunet [off-list ref]
wrote:
quoted
On Sat, 2016-12-03 at 00:47 +0100, Martin Blumenstingl wrote:
quoted
This resets the ethernet PHY during boot to get the PHY into a
"clean"
state. While here also specify the phy-handle of the ethmac node
to
make the PHY configuration similar to the one we have on GXL
devices.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemai
l.co
m>
Tested-by: Neil Armstrong <narmstrong-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
---
 arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi | 15
+++++++++++++++
 1 file changed, 15 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
index 203be28..2abc553 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi
@@ -134,10 +134,25 @@
      pinctrl-names = "default";
 };

+&mdio0 {
+     ethernet_phy0: ethernet-phy@0 {
+             compatible = "ethernet-phy-ieee802.3-c22";
+             reg = <0>;
Sorry for the late reply.
I just tried on the p200 and this patch (serie) breaks the network
on
it. The PHY is not detected anymore.

From the KSZ9031 Datasheet : "PHY Address 0h is supported as the
unique
PHY address only; it is not supported as the broadcast PHY address
[...]"

So we can't just use the broadcast address here:
reg should be <3>.
OK, I'll fix that in a follow-up. as mentioned in the other thread:
can you confirm that the PHY ID is 0x00221620?
That's right.
thanks for confirming this
quoted
It seems that I also broke meson-gxbb-nexbox-a95x.dts with that
series
(no idea why that slipped through): according to the photos from
Neil's wiki [0] this seems to use an IC+ 10/100 ethernet PHY
(probably
an IP101A)
IP101GR from what I can see on the board.
thanks :)
quoted
quoted
quoted

+     };
+};
+
 &ethmac {
      status = "okay";
      pinctrl-0 = <&eth_rgmii_pins>;
      pinctrl-names = "default";
+
+     phy-handle = <&ethernet_phy0>;
+
+     snps,reset-gpio = <&gpio GPIOZ_14 0>;
+     snps,reset-delays-us = <0 10000 1000000>;
+     snps,reset-active-low;
+
+     phy-mode = "rgmii";
We can't define this in p20x. actually the p201 uses an rmii.
I have not idea about gpio reset, or the phy address for the p201.

I suppose it would be better to move this to meson-gxbb_p200.dts

I don't know if anybody has a p201, but until we can confirm a
working
Ethernet configuration, we should probably drop it for the p201

Of course the problem was already there before this patch ...
indeed, that seems to be a problem.
the GXBB Nexbox A95x I mentioned above is based on the p201 board.
Amlogic's .dts also toggles GPIOZ_14 for it: [1]
chances are high that it also features an IP101A PHY (this is pure
speculation though).
Agreed, chances are high it'll be this way.
quoted
I propose four patches to fix all this situation:
- add the GPIOZ_14 reset and an ethernet_phy0 (with reg = <0>) to
meson-gxbb-nexbox-a95x.dts
- add the ethernet_phy0 node with reg = <0> (and ideally I also want
to include the KSZ9031 PHY ID) to meson-gxbb-p200.dtsi along with
phy-mode = "rgmii"
you mean with reg = <3> ?
you're right, another typo there!
quoted
- add the ethernet_phy0 node with reg = <0> (without any PHY ID as we
don't know which one is used) to meson-gxbb-p201.dtsi along with
phy-mode = "rgmii"
- remove "phy-mode" and ethernet_phy0 from meson-gxbb-p20x.dtsi and
add a comment that both, the RGMII and the RMII PHY have GPIOZ_14
connected to their reset line
I'm not too sure about these last 2 points. As you mentioned, we are
only speculating regarding the p201. I would prefer to avoid putting
things we are not sure about in the DT (as much as possible).

We could disable the ethernet for p201:
1) if nobody complains, situation remains unchanged, ethernet is not
working on that board
2) if someone complains, then we will be able to some facts from
him/her, and get it working properly.

After all, that's not a regression. With what we had in the meson-gxbb-
p20x.dtsi so far, ethernet never worked on that board.
fine for me as well
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help