Linux-Amlogic Archive on lore.kernel.org
 help / color / Atom feed
* [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string
@ 2021-03-25 12:42 Anand Moon
  2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
                   ` (7 more replies)
  0 siblings, 8 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

On most of the Amlogic SoC I observed that Ethernet would not get
initialize when try to deploy the mainline kernel, earlier I tried to
fix this issue with by setting ethernet reset but it did not resolve
the issue see below.
	resets = <&reset RESET_ETHERNET>;
	reset-names = "stmmaceth";

After checking what was the missing with Rockchip SoC dts
I tried to add this missing compatible string and then it
started to working on my setup.

Also I tried to fix the device tree binding to validate the changes.

Tested this on my Odroid-N2 and Odroid-C2 (64 bit) setup.
I do not have ready Odroid C1 (32 bit) setup so please somebody test.

Best Regards
-Anand

Anand Moon (6):
  dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy
    compatible string
  arm: dts: meson: Add missing ethernet phy mdio compatible string
  arm64: dts: meson-gxbb: Add missing ethernet phy mimo compatible
    string
  arm64: dts: meson-gxl: Add missing ethernet phy mdio compatible string
  arm64: dts: meson-g12: Add missing ethernet phy mdio compatible string
  arm64: dts: meson-glx: Fix the ethernet phy mdio compatible string

 Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
 arch/arm/boot/dts/meson8b-ec100.dts                     | 1 +
 arch/arm/boot/dts/meson8b-mxq.dts                       | 1 +
 arch/arm/boot/dts/meson8b-odroidc1.dts                  | 1 +
 arch/arm/boot/dts/meson8m2-mxiii-plus.dts               | 1 +
 arch/arm64/boot/dts/amlogic/meson-axg-s400.dts          | 1 +
 arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts      | 1 +
 arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi   | 3 ++-
 arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi        | 1 +
 arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi  | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts      | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts    | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts  | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts     | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts         | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi    | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi       | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts    | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxl.dtsi              | 2 +-
 arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts   | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts     | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts          | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts      | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts      | 1 +
 arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi      | 1 +
 arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi       | 1 +
 26 files changed, 29 insertions(+), 5 deletions(-)

-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 12:57   ` Andrew Lunn
  2021-03-25 16:56   ` Rob Herring
  2021-03-25 12:42 ` [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio " Anand Moon
                   ` (6 subsequent siblings)
  7 siblings, 2 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic,
	Rob Herring

Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
by the device tree to initialize the mdio phy.

As per the of_mdio below 2 are valid compatible string
	"ethernet-phy-ieee802.3-c22"
	"ethernet-phy-ieee802.3-c45"

Cc: Rob Herring <robh@kernel.org>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
index 2766fe45bb98..cfc7909d3e56 100644
--- a/Documentation/devicetree/bindings/net/ethernet-phy.yaml
+++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
@@ -33,7 +33,7 @@ properties:
         description: PHYs that implement IEEE802.3 clause 22
       - const: ethernet-phy-ieee802.3-c45
         description: PHYs that implement IEEE802.3 clause 45
-      - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
+      - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"
         description:
           If the PHY reports an incorrect ID (or none at all) then the
           compatible list may contain an entry with the correct PHY ID
@@ -44,10 +44,10 @@ properties:
           this is the chip vendor OUI bits 19:24, followed by 10
           bits of a vendor specific ID.
       - items:
-          - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
+          - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"
           - const: ethernet-phy-ieee802.3-c22
       - items:
-          - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
+          - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"
           - const: ethernet-phy-ieee802.3-c45
 
   reg:
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
  2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 12:59   ` Andrew Lunn
  2021-03-25 12:42 ` [PATCHv1 3/6] arm64: dts: meson-gxbb: Add missing ethernet phy mimo " Anand Moon
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

Add missing ethernet phy mdio comatible string to help
initiate the phy on Amlogic SoC SBC.

Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 arch/arm/boot/dts/meson8b-ec100.dts       | 1 +
 arch/arm/boot/dts/meson8b-mxq.dts         | 1 +
 arch/arm/boot/dts/meson8b-odroidc1.dts    | 1 +
 arch/arm/boot/dts/meson8m2-mxiii-plus.dts | 1 +
 4 files changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/meson8b-ec100.dts b/arch/arm/boot/dts/meson8b-ec100.dts
index 8e48ccc6b634..09ce822308de 100644
--- a/arch/arm/boot/dts/meson8b-ec100.dts
+++ b/arch/arm/boot/dts/meson8b-ec100.dts
@@ -262,6 +262,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* IC Plus IP101A/G (0x02430c54) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm/boot/dts/meson8b-mxq.dts b/arch/arm/boot/dts/meson8b-mxq.dts
index f3937d55472d..c1638f3c9edf 100644
--- a/arch/arm/boot/dts/meson8b-mxq.dts
+++ b/arch/arm/boot/dts/meson8b-mxq.dts
@@ -109,6 +109,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* IC Plus IP101A/G (0x02430c54) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm/boot/dts/meson8b-odroidc1.dts b/arch/arm/boot/dts/meson8b-odroidc1.dts
index c440ef94e082..ca439302c74d 100644
--- a/arch/arm/boot/dts/meson8b-odroidc1.dts
+++ b/arch/arm/boot/dts/meson8b-odroidc1.dts
@@ -216,6 +216,7 @@ mdio {
 
 		/* Realtek RTL8211F (0x001cc916) */
 		eth_phy: ethernet-phy@0 {
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm/boot/dts/meson8m2-mxiii-plus.dts b/arch/arm/boot/dts/meson8m2-mxiii-plus.dts
index fa6d55f1cfb9..6c9b22605264 100644
--- a/arch/arm/boot/dts/meson8m2-mxiii-plus.dts
+++ b/arch/arm/boot/dts/meson8m2-mxiii-plus.dts
@@ -73,6 +73,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 3/6] arm64: dts: meson-gxbb: Add missing ethernet phy mimo compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
  2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
  2021-03-25 12:42 ` [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio " Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 12:42 ` [PATCHv1 4/6] arm64: dts: meson-gxl: Add missing ethernet phy mdio " Anand Moon
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

Add missing ethernet phy mdio comatible string to help
initialize the phy on Amlogic SoC SBC.

Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts     | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts   | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts    | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts        | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi   | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi      | 1 +
 7 files changed, 7 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts
index e8394a8269ee..f3b0947b8586 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts
@@ -69,6 +69,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* IC Plus IP101GR (0x02430c54) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 			reset-assert-us = <10000>;
 			reset-deassert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
index 7273eed5292c..a4c09f1af24a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
@@ -202,6 +202,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
index f887bfb445fd..abbc5571efde 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts
@@ -209,6 +209,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* IC Plus IP101GR (0x02430c54) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
index bfaf7f41a2d6..4287d83d6f2a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
@@ -237,6 +237,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts
index 3c93d1898b40..f7a1ffe453bc 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts
@@ -75,6 +75,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@3 {
 			/* Micrel KSZ9031 (0x00221620) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <3>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi
index 9b0b81f191f1..0cf4bde81c6f 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi
@@ -123,6 +123,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
index a350fee1264d..e652f112bc45 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
@@ -144,6 +144,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 
 			reset-assert-us = <10000>;
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 4/6] arm64: dts: meson-gxl: Add missing ethernet phy mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
                   ` (2 preceding siblings ...)
  2021-03-25 12:42 ` [PATCHv1 3/6] arm64: dts: meson-gxbb: Add missing ethernet phy mimo " Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 12:42 ` [PATCHv1 5/6] arm64: dts: meson-g12: " Anand Moon
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

Add missing ethernet phy mdio comatible string to help
initialize the phy on Amlogic SoC SBC.

Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 arch/arm64/boot/dts/amlogic/meson-axg-s400.dts         | 1 +
 arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts   | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts  | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts    | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts         | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts     | 1 +
 arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts     | 1 +
 8 files changed, 8 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts b/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
index 359589d1dfa9..d7cfcde40fc6 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-axg-s400.dts
@@ -374,6 +374,7 @@ mdio {
 
 		eth_phy0: ethernet-phy@0 {
 			/* Realtek RTL8211F (0x001cc916) */
+			compatible = "ethernet-phy-ieee802.3-c22";
 			reg = <0>;
 			interrupt-parent = <&gpio_intc>;
 			interrupts = <98 IRQ_TYPE_LEVEL_LOW>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi
index 2d7032f41e4b..5bafb45f6c46 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi
@@ -272,6 +272,7 @@ &ethmac {
 
 &external_mdio {
 	external_phy: ethernet-phy@0 {
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 		reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts
index b2ab05c22090..c0c2505081a5 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts
@@ -77,6 +77,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
index 18a4b7a6c5df..7cb834dcc91b 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts
@@ -229,6 +229,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 
 		reset-assert-us = <10000>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
index dfa7a37a1281..abaf58b7b765 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts
@@ -108,6 +108,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts
index 8edbfe040805..1342ca285d44 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts
@@ -59,6 +59,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts
index dde7cfe12cff..c96fc23fd8f1 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts
@@ -110,6 +110,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts
index d3fdba4da9a6..a99a760f253b 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts
@@ -32,6 +32,7 @@ &ethmac {
 &external_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 	};
 };
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 5/6] arm64: dts: meson-g12: Add missing ethernet phy mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
                   ` (3 preceding siblings ...)
  2021-03-25 12:42 ` [PATCHv1 4/6] arm64: dts: meson-gxl: Add missing ethernet phy mdio " Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 12:42 ` [PATCHv1 6/6] arm64: dts: meson-glx: Fix the " Anand Moon
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

Add missing ethernet phy mdio comatible string to help
initialize the phy on Amlogic SoC sbc.

Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts    | 1 +
 arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi | 3 ++-
 arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi      | 1 +
 arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi    | 1 +
 arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi     | 1 +
 5 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
index 579f3d02d613..32c99035a18f 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
@@ -335,6 +335,7 @@ &pwm_AO_cd {
 &ext_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 		eee-broken-1000t;
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
index 58ce569b2ace..12f70b38ce67 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
@@ -410,7 +410,8 @@ &cpu103 {
 
 &ext_mdio {
 	external_phy: ethernet-phy@0 {
-		/* Realtek RTL8211F (0x001cc916) */	
+		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
index feb088504740..cfb89f5e6eef 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
@@ -260,6 +260,7 @@ cvbs_vdac_out: endpoint {
 &ext_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi b/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
index 877e3b989203..4d4a5d467bc7 100644
--- a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
@@ -273,6 +273,7 @@ map {
 &ext_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
index d14716b3d0f1..5bdbf0d09bc0 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
@@ -253,6 +253,7 @@ &cpu3 {
 &ext_mdio {
 	external_phy: ethernet-phy@0 {
 		/* Realtek RTL8211F (0x001cc916) */
+		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <0>;
 		max-speed = <1000>;
 
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCHv1 6/6] arm64: dts: meson-glx: Fix the ethernet phy mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
                   ` (4 preceding siblings ...)
  2021-03-25 12:42 ` [PATCHv1 5/6] arm64: dts: meson-g12: " Anand Moon
@ 2021-03-25 12:42 ` Anand Moon
  2021-03-25 13:02 ` [PATCHv1 0/6] Amlogic Soc - Add missing ethernet " Andrew Lunn
  2021-03-25 13:19 ` Heiner Kallweit
  7 siblings, 0 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 12:42 UTC (permalink / raw)
  To: Andrew Lunn, Heiner Kallweit, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, Anand Moon, linux-amlogic

Fix the ethernet phy mdio comatible string to help
initialize the phy on Amlogic SoC sbc.

make ARCH=arm64 dtbs_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/net/ethernet-phy.yaml

Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
---
 arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
index c3ac531c4f84..303f54384a9a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
@@ -773,7 +773,7 @@ internal_mdio: mdio@e40908ff {
 			#size-cells = <0>;
 
 			internal_phy: ethernet-phy@8 {
-				compatible = "ethernet-phy-id0181.4400";
+				compatible = "ethernet-phy-ieee802.3-c22";
 				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
 				reg = <8>;
 				max-speed = <100>;
-- 
2.31.0


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
@ 2021-03-25 12:57   ` Andrew Lunn
  2021-03-25 13:33     ` Anand Moon
  2021-03-25 16:56   ` Rob Herring
  1 sibling, 1 reply; 17+ messages in thread
From: Andrew Lunn @ 2021-03-25 12:57 UTC (permalink / raw)
  To: Anand Moon
  Cc: Heiner Kallweit, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic, Rob Herring

On Thu, Mar 25, 2021 at 12:42:20PM +0000, Anand Moon wrote:
> Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
> by the device tree to initialize the mdio phy.
> 
> As per the of_mdio below 2 are valid compatible string
> 	"ethernet-phy-ieee802.3-c22"
> 	"ethernet-phy-ieee802.3-c45"

Nope, this is not the full story. Yes, you can have these compatible
strings. But you can also use the PHY ID,
e.g. ethernet-phy-idAAAA.BBBB, where AAAA and BBBB are what you find in
registers 2 and 3 of the PHY.

> Cc: Rob Herring <robh@kernel.org>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
>  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> index 2766fe45bb98..cfc7909d3e56 100644
> --- a/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> +++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> @@ -33,7 +33,7 @@ properties:
>          description: PHYs that implement IEEE802.3 clause 22
>        - const: ethernet-phy-ieee802.3-c45
>          description: PHYs that implement IEEE802.3 clause 45
> -      - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
> +      - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"

So here you need, in addition to, not instead of.

Please test you change on for example imx6ul-14x14-evk.dtsi

   Andrew

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio compatible string
  2021-03-25 12:42 ` [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio " Anand Moon
@ 2021-03-25 12:59   ` Andrew Lunn
  0 siblings, 0 replies; 17+ messages in thread
From: Andrew Lunn @ 2021-03-25 12:59 UTC (permalink / raw)
  To: Anand Moon
  Cc: Heiner Kallweit, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic

On Thu, Mar 25, 2021 at 12:42:21PM +0000, Anand Moon wrote:
> Add missing ethernet phy mdio comatible string to help
> initiate the phy on Amlogic SoC SBC.

"ethernet-phy-ieee802.3-c22" is the default. So this is not wrong, but
it should not be required.

   Andrew

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
                   ` (5 preceding siblings ...)
  2021-03-25 12:42 ` [PATCHv1 6/6] arm64: dts: meson-glx: Fix the " Anand Moon
@ 2021-03-25 13:02 ` Andrew Lunn
  2021-03-25 13:19 ` Heiner Kallweit
  7 siblings, 0 replies; 17+ messages in thread
From: Andrew Lunn @ 2021-03-25 13:02 UTC (permalink / raw)
  To: Anand Moon
  Cc: Heiner Kallweit, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic

On Thu, Mar 25, 2021 at 12:42:19PM +0000, Anand Moon wrote:
> On most of the Amlogic SoC I observed that Ethernet would not get
> initialize when try to deploy the mainline kernel, earlier I tried to
> fix this issue with by setting ethernet reset but it did not resolve
> the issue see below.
> 	resets = <&reset RESET_ETHERNET>;
> 	reset-names = "stmmaceth";
> 
> After checking what was the missing with Rockchip SoC dts
> I tried to add this missing compatible string and then it
> started to working on my setup.

Adding

compatible = "ethernet-phy-ieee802.3-c22"

should not fix anything, since that is the default. We need to better
understand what is going on here.

	   Andrew

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string
  2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
                   ` (6 preceding siblings ...)
  2021-03-25 13:02 ` [PATCHv1 0/6] Amlogic Soc - Add missing ethernet " Andrew Lunn
@ 2021-03-25 13:19 ` Heiner Kallweit
  2021-03-25 15:40   ` Anand Moon
  7 siblings, 1 reply; 17+ messages in thread
From: Heiner Kallweit @ 2021-03-25 13:19 UTC (permalink / raw)
  To: Anand Moon, Andrew Lunn, Russell King, David S . Miller,
	Jakub Kicinski, Rob Herring, Florian Fainelli, Kevin Hilman,
	Neil Armstrong, Jerome Brunet, Martin Blumenstingl
  Cc: netdev, devicetree, linux-arm-kernel, linux-amlogic

On 25.03.2021 13:42, Anand Moon wrote:
> On most of the Amlogic SoC I observed that Ethernet would not get
> initialize when try to deploy the mainline kernel, earlier I tried to
> fix this issue with by setting ethernet reset but it did not resolve
> the issue see below.
> 	resets = <&reset RESET_ETHERNET>;
> 	reset-names = "stmmaceth";
> 
> After checking what was the missing with Rockchip SoC dts
> I tried to add this missing compatible string and then it
> started to working on my setup.
> 
> Also I tried to fix the device tree binding to validate the changes.
> 
> Tested this on my Odroid-N2 and Odroid-C2 (64 bit) setup.
> I do not have ready Odroid C1 (32 bit) setup so please somebody test.
> 

When working on the Odroid-C2 I did not have such a problem.
And if you look at of_mdiobus_child_is_phy() and
of_mdiobus_register_phy() you'll see that your change shouldn't be
needed.

Could you please elaborate on:
- What is the exact problem you're facing? Best add a dmesg log.
- Which kernel version are you using?


> Best Regards
> -Anand
> 
> Anand Moon (6):
>   dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy
>     compatible string
>   arm: dts: meson: Add missing ethernet phy mdio compatible string
>   arm64: dts: meson-gxbb: Add missing ethernet phy mimo compatible
>     string
>   arm64: dts: meson-gxl: Add missing ethernet phy mdio compatible string
>   arm64: dts: meson-g12: Add missing ethernet phy mdio compatible string
>   arm64: dts: meson-glx: Fix the ethernet phy mdio compatible string
> 
>  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
>  arch/arm/boot/dts/meson8b-ec100.dts                     | 1 +
>  arch/arm/boot/dts/meson8b-mxq.dts                       | 1 +
>  arch/arm/boot/dts/meson8b-odroidc1.dts                  | 1 +
>  arch/arm/boot/dts/meson8m2-mxiii-plus.dts               | 1 +
>  arch/arm64/boot/dts/amlogic/meson-axg-s400.dts          | 1 +
>  arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts      | 1 +
>  arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi   | 3 ++-
>  arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi        | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi  | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts      | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts    | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-nexbox-a95x.dts  | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts     | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts         | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi    | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi       | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dts    | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxl.dtsi              | 2 +-
>  arch/arm64/boot/dts/amlogic/meson-gxm-khadas-vim2.dts   | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxm-nexbox-a1.dts     | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxm-q200.dts          | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxm-rbox-pro.dts      | 1 +
>  arch/arm64/boot/dts/amlogic/meson-gxm-vega-s96.dts      | 1 +
>  arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi      | 1 +
>  arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi       | 1 +
>  26 files changed, 29 insertions(+), 5 deletions(-)
> 


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 12:57   ` Andrew Lunn
@ 2021-03-25 13:33     ` Anand Moon
  2021-03-25 13:42       ` Heiner Kallweit
  0 siblings, 1 reply; 17+ messages in thread
From: Anand Moon @ 2021-03-25 13:33 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Heiner Kallweit, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic, Rob Herring

Hi Andrew,

On Thu, 25 Mar 2021 at 18:27, Andrew Lunn <andrew@lunn.ch> wrote:
>
> On Thu, Mar 25, 2021 at 12:42:20PM +0000, Anand Moon wrote:
> > Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
> > by the device tree to initialize the mdio phy.
> >
> > As per the of_mdio below 2 are valid compatible string
> >       "ethernet-phy-ieee802.3-c22"
> >       "ethernet-phy-ieee802.3-c45"
>
> Nope, this is not the full story. Yes, you can have these compatible
> strings. But you can also use the PHY ID,
> e.g. ethernet-phy-idAAAA.BBBB, where AAAA and BBBB are what you find in
> registers 2 and 3 of the PHY.
>

Oops I did not read the drivers/net/mdio/of_mdio.c completely.
Thanks for letting me know so in the next series,
I will try to add the below compatible string as per the description in the dts.

               compatible = "ethernet-phy-id001c.c916",
                            "ethernet-phy-ieee802.3-c22";

> > Cc: Rob Herring <robh@kernel.org>
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> >  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> > index 2766fe45bb98..cfc7909d3e56 100644
> > --- a/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> > +++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
> > @@ -33,7 +33,7 @@ properties:
> >          description: PHYs that implement IEEE802.3 clause 22
> >        - const: ethernet-phy-ieee802.3-c45
> >          description: PHYs that implement IEEE802.3 clause 45
> > -      - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
> > +      - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"
>
> So here you need, in addition to, not instead of.
>
> Please test you change on for example imx6ul-14x14-evk.dtsi
>

Yes I have gone through the test case.

>    Andrew

- Anand

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 13:33     ` Anand Moon
@ 2021-03-25 13:42       ` Heiner Kallweit
  0 siblings, 0 replies; 17+ messages in thread
From: Heiner Kallweit @ 2021-03-25 13:42 UTC (permalink / raw)
  To: Anand Moon, Andrew Lunn
  Cc: Russell King, David S . Miller, Jakub Kicinski, Rob Herring,
	Florian Fainelli, Kevin Hilman, Neil Armstrong, Jerome Brunet,
	Martin Blumenstingl, netdev, devicetree, linux-arm-kernel,
	linux-amlogic, Rob Herring

On 25.03.2021 14:33, Anand Moon wrote:
> Hi Andrew,
> 
> On Thu, 25 Mar 2021 at 18:27, Andrew Lunn <andrew@lunn.ch> wrote:
>>
>> On Thu, Mar 25, 2021 at 12:42:20PM +0000, Anand Moon wrote:
>>> Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
>>> by the device tree to initialize the mdio phy.
>>>
>>> As per the of_mdio below 2 are valid compatible string
>>>       "ethernet-phy-ieee802.3-c22"
>>>       "ethernet-phy-ieee802.3-c45"
>>
>> Nope, this is not the full story. Yes, you can have these compatible
>> strings. But you can also use the PHY ID,
>> e.g. ethernet-phy-idAAAA.BBBB, where AAAA and BBBB are what you find in
>> registers 2 and 3 of the PHY.
>>
> 
> Oops I did not read the drivers/net/mdio/of_mdio.c completely.
> Thanks for letting me know so in the next series,
> I will try to add the below compatible string as per the description in the dts.

That's not needed, typically the PHY ID is auto-detected.
Before sending a new series, please describe in detail what
your problem is. Simply there shouldn't be a need for such a
series. As I said: e.g. Odroid-C2 worked fine for me with
a mainline kernel.

> 
>                compatible = "ethernet-phy-id001c.c916",
>                             "ethernet-phy-ieee802.3-c22";
> 
>>> Cc: Rob Herring <robh@kernel.org>
>>> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
>>> ---
>>>  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
>>>  1 file changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
>>> index 2766fe45bb98..cfc7909d3e56 100644
>>> --- a/Documentation/devicetree/bindings/net/ethernet-phy.yaml
>>> +++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
>>> @@ -33,7 +33,7 @@ properties:
>>>          description: PHYs that implement IEEE802.3 clause 22
>>>        - const: ethernet-phy-ieee802.3-c45
>>>          description: PHYs that implement IEEE802.3 clause 45
>>> -      - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
>>> +      - pattern: "^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$"
>>
>> So here you need, in addition to, not instead of.
>>
>> Please test you change on for example imx6ul-14x14-evk.dtsi
>>
> 
> Yes I have gone through the test case.
> 
>>    Andrew
> 
> - Anand
> 


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string
  2021-03-25 13:19 ` Heiner Kallweit
@ 2021-03-25 15:40   ` Anand Moon
  2021-03-25 15:55     ` Heiner Kallweit
  0 siblings, 1 reply; 17+ messages in thread
From: Anand Moon @ 2021-03-25 15:40 UTC (permalink / raw)
  To: Heiner Kallweit
  Cc: Andrew Lunn, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic

Hi Heiner


On Thu, 25 Mar 2021 at 18:49, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>
> On 25.03.2021 13:42, Anand Moon wrote:
> > On most of the Amlogic SoC I observed that Ethernet would not get
> > initialize when try to deploy the mainline kernel, earlier I tried to
> > fix this issue with by setting ethernet reset but it did not resolve
> > the issue see below.
> >       resets = <&reset RESET_ETHERNET>;
> >       reset-names = "stmmaceth";
> >
> > After checking what was the missing with Rockchip SoC dts
> > I tried to add this missing compatible string and then it
> > started to working on my setup.
> >
> > Also I tried to fix the device tree binding to validate the changes.
> >
> > Tested this on my Odroid-N2 and Odroid-C2 (64 bit) setup.
> > I do not have ready Odroid C1 (32 bit) setup so please somebody test.
> >
>
> When working on the Odroid-C2 I did not have such a problem.
> And if you look at of_mdiobus_child_is_phy() and
> of_mdiobus_register_phy() you'll see that your change shouldn't be
> needed.
I will check this out, thanks for your inputs.
>
> Could you please elaborate on:
> - What is the exact problem you're facing? Best add a dmesg log.
   1> I am aware all the distro kernel I have tested ethernet will work file
   2> My issue is when I compile the mainline kernel with the default setting,
       Ethernet interface will not receive any DHCP IP address from the router
       Although the Ethernet interface comes up properly.
      This does not happen frequently but I observed this at my end.
  3> I tried to collect logs but I did not observe any kernel issue
like panic or warning.

> - Which kernel version are you using?
     I am using the mainline kernel with default settings.

-Anand

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string
  2021-03-25 15:40   ` Anand Moon
@ 2021-03-25 15:55     ` Heiner Kallweit
  0 siblings, 0 replies; 17+ messages in thread
From: Heiner Kallweit @ 2021-03-25 15:55 UTC (permalink / raw)
  To: Anand Moon
  Cc: Andrew Lunn, Russell King, David S . Miller, Jakub Kicinski,
	Rob Herring, Florian Fainelli, Kevin Hilman, Neil Armstrong,
	Jerome Brunet, Martin Blumenstingl, netdev, devicetree,
	linux-arm-kernel, linux-amlogic

On 25.03.2021 16:40, Anand Moon wrote:
> Hi Heiner
> 
> 
> On Thu, 25 Mar 2021 at 18:49, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>>
>> On 25.03.2021 13:42, Anand Moon wrote:
>>> On most of the Amlogic SoC I observed that Ethernet would not get
>>> initialize when try to deploy the mainline kernel, earlier I tried to
>>> fix this issue with by setting ethernet reset but it did not resolve
>>> the issue see below.
>>>       resets = <&reset RESET_ETHERNET>;
>>>       reset-names = "stmmaceth";
>>>
>>> After checking what was the missing with Rockchip SoC dts
>>> I tried to add this missing compatible string and then it
>>> started to working on my setup.
>>>
>>> Also I tried to fix the device tree binding to validate the changes.
>>>
>>> Tested this on my Odroid-N2 and Odroid-C2 (64 bit) setup.
>>> I do not have ready Odroid C1 (32 bit) setup so please somebody test.
>>>
>>
>> When working on the Odroid-C2 I did not have such a problem.
>> And if you look at of_mdiobus_child_is_phy() and
>> of_mdiobus_register_phy() you'll see that your change shouldn't be
>> needed.
> I will check this out, thanks for your inputs.
>>
>> Could you please elaborate on:
>> - What is the exact problem you're facing? Best add a dmesg log.
>    1> I am aware all the distro kernel I have tested ethernet will work file
>    2> My issue is when I compile the mainline kernel with the default setting,
>        Ethernet interface will not receive any DHCP IP address from the router
>        Although the Ethernet interface comes up properly.
>       This does not happen frequently but I observed this at my end.

If the PHY wouldn't be detected, then your network would never work.
So there must be a different reason. You can manually assign a static IP
and then check what's going wrong: checking for missed / error packets,
running iperf, etc.


>   3> I tried to collect logs but I did not observe any kernel issue
> like panic or warning.
> 
>> - Which kernel version are you using?
>      I am using the mainline kernel with default settings.
> 
> -Anand
> 


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
  2021-03-25 12:57   ` Andrew Lunn
@ 2021-03-25 16:56   ` Rob Herring
  2021-03-25 17:37     ` Anand Moon
  1 sibling, 1 reply; 17+ messages in thread
From: Rob Herring @ 2021-03-25 16:56 UTC (permalink / raw)
  To: Anand Moon
  Cc: Rob Herring, Jakub Kicinski, Russell King, Florian Fainelli,
	Neil Armstrong, netdev, Kevin Hilman, Martin Blumenstingl,
	David S . Miller, devicetree, Andrew Lunn, Heiner Kallweit,
	linux-arm-kernel, Jerome Brunet, linux-amlogic

On Thu, 25 Mar 2021 12:42:20 +0000, Anand Moon wrote:
> Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
> by the device tree to initialize the mdio phy.
> 
> As per the of_mdio below 2 are valid compatible string
> 	"ethernet-phy-ieee802.3-c22"
> 	"ethernet-phy-ieee802.3-c45"
> 
> Cc: Rob Herring <robh@kernel.org>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
>  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/ethernet-phy.example.dt.yaml: ethernet-phy@0: compatible: 'oneOf' conditional failed, one must be fixed:
	['ethernet-phy-id0141.0e90', 'ethernet-phy-ieee802.3-c45'] is too long
	Additional items are not allowed ('ethernet-phy-ieee802.3-c45' was unexpected)
	'ethernet-phy-ieee802.3-c22' was expected
	'ethernet-phy-ieee802.3-c45' was expected
	'ethernet-phy-id0141.0e90' does not match '^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$'
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/ethernet-phy.yaml

See https://patchwork.ozlabs.org/patch/1458341

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy compatible string
  2021-03-25 16:56   ` Rob Herring
@ 2021-03-25 17:37     ` Anand Moon
  0 siblings, 0 replies; 17+ messages in thread
From: Anand Moon @ 2021-03-25 17:37 UTC (permalink / raw)
  To: Rob Herring
  Cc: Rob Herring, Jakub Kicinski, Russell King, Florian Fainelli,
	Neil Armstrong, netdev, Kevin Hilman, Martin Blumenstingl,
	David S . Miller, devicetree, Andrew Lunn, Heiner Kallweit,
	linux-arm-kernel, Jerome Brunet, linux-amlogic

Hi Rob

On Thu, 25 Mar 2021 at 22:26, Rob Herring <robh@kernel.org> wrote:
>
> On Thu, 25 Mar 2021 12:42:20 +0000, Anand Moon wrote:
> > Fix the parsing of check of pattern ethernet-phy-ieee802.3 used
> > by the device tree to initialize the mdio phy.
> >
> > As per the of_mdio below 2 are valid compatible string
> >       "ethernet-phy-ieee802.3-c22"
> >       "ethernet-phy-ieee802.3-c45"
> >
> > Cc: Rob Herring <robh@kernel.org>
> > Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> > ---
> >  Documentation/devicetree/bindings/net/ethernet-phy.yaml | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> >
>
> My bot found errors running 'make dt_binding_check' on your patch:
>
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/ethernet-phy.example.dt.yaml: ethernet-phy@0: compatible: 'oneOf' conditional failed, one must be fixed:
>         ['ethernet-phy-id0141.0e90', 'ethernet-phy-ieee802.3-c45'] is too long
>         Additional items are not allowed ('ethernet-phy-ieee802.3-c45' was unexpected)
>         'ethernet-phy-ieee802.3-c22' was expected
>         'ethernet-phy-ieee802.3-c45' was expected
>         'ethernet-phy-id0141.0e90' does not match '^ethernet-phy-ieee[0-9]{3}\\.[0-9][-][a-f0-9]{4}$'
>         From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/net/ethernet-phy.yaml
>
> See https://patchwork.ozlabs.org/patch/1458341
>
> This check can fail if there are any dependencies. The base for a patch
> series is generally the most recent rc1.
>
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
>
> pip3 install dtschema --upgrade
>
> Please check and re-submit.
>

Now I have a better understanding on device tree shema in
Documentation/devicetree/bindings/net/ethernet-phy.yaml
changes it meant to parse *ethernet-phy-id0181.4400* for example
and not ethernet-phy-ieee802.3-c22 and ethernet-phy-ieee802.3-c45.

So please dicard these changes.

-Anand

_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, back to index

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-25 12:42 [PATCHv1 0/6] Amlogic Soc - Add missing ethernet mdio compatible string Anand Moon
2021-03-25 12:42 ` [PATCHv1 1/6] dt-bindings: net: ethernet-phy: Fix the parsing of ethernet-phy " Anand Moon
2021-03-25 12:57   ` Andrew Lunn
2021-03-25 13:33     ` Anand Moon
2021-03-25 13:42       ` Heiner Kallweit
2021-03-25 16:56   ` Rob Herring
2021-03-25 17:37     ` Anand Moon
2021-03-25 12:42 ` [PATCHv1 2/6] arm: dts: meson: Add missing ethernet phy mdio " Anand Moon
2021-03-25 12:59   ` Andrew Lunn
2021-03-25 12:42 ` [PATCHv1 3/6] arm64: dts: meson-gxbb: Add missing ethernet phy mimo " Anand Moon
2021-03-25 12:42 ` [PATCHv1 4/6] arm64: dts: meson-gxl: Add missing ethernet phy mdio " Anand Moon
2021-03-25 12:42 ` [PATCHv1 5/6] arm64: dts: meson-g12: " Anand Moon
2021-03-25 12:42 ` [PATCHv1 6/6] arm64: dts: meson-glx: Fix the " Anand Moon
2021-03-25 13:02 ` [PATCHv1 0/6] Amlogic Soc - Add missing ethernet " Andrew Lunn
2021-03-25 13:19 ` Heiner Kallweit
2021-03-25 15:40   ` Anand Moon
2021-03-25 15:55     ` Heiner Kallweit

Linux-Amlogic Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-amlogic/0 linux-amlogic/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-amlogic linux-amlogic/ https://lore.kernel.org/linux-amlogic \
		linux-amlogic@lists.infradead.org
	public-inbox-index linux-amlogic

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-amlogic


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git