diff mbox series

[5/5] arm64: dts: renesas: r8a779f0: spider: Enable Ethernet Switch

Message ID 20220909132614.1967276-6-yoshihiro.shimoda.uh@renesas.com
State New
Headers show
Series [1/5] clk: renesas: r8a779f0: Add Ethernet Switch clocks | expand

Commit Message

Yoshihiro Shimoda Sept. 9, 2022, 1:26 p.m. UTC
Enable Ethernet Switch for R-Car S4-8 (r8a779f0).

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
---
 .../dts/renesas/r8a779f0-spider-ethernet.dtsi | 44 +++++++++++++++++++
 1 file changed, 44 insertions(+)

Comments

Andrew Lunn Sept. 13, 2022, 12:16 a.m. UTC | #1
> +	ports {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		port@0 {
> +			reg = <0>;
> +			phy-handle = <&etha0>;
> +			phy-mode = "sgmii";
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			etha0: ethernet-phy@0 {
> +				reg = <1>;

reg = 1 means you should have @1.


> +				compatible = "ethernet-phy-ieee802.3-c45";
> +			};
> +		};

You are mixing Ethernet and MDIO properties in one node. Past
experience says this is a bad idea, particularly when you have
switches involved. I would suggest you add an mdio container:


> +		port@1 {
> +			reg = <1>;
> +			phy-handle = <&etha1>;
> +			phy-mode = "sgmii";
> +			#address-cells = <1>;
> +			#size-cells = <0>;

                        mdio {
> +			    etha1: ethernet-phy@1 {
> +				reg = <2>;
> +				compatible = "ethernet-phy-ieee802.3-c45";
> +			    };
                        };
> +		};
> +		port@2 {
> +			reg = <2>;
> +			phy-handle = <&etha2>;
> +			phy-mode = "sgmii";
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +			etha2: ethernet-phy@2 {
> +				reg = <3>;
> +				compatible = "ethernet-phy-ieee802.3-c45";
> +			};
> +		};

I find it interesting you have PHYs are address 1, 2, 3, even though
they are on individual busses. Why pay for the extra pullup/down
resistors when they could all have the same address?

	  Andrew
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/renesas/r8a779f0-spider-ethernet.dtsi b/arch/arm64/boot/dts/renesas/r8a779f0-spider-ethernet.dtsi
index 15e8d1ebf575..db3b6e51e2b6 100644
--- a/arch/arm64/boot/dts/renesas/r8a779f0-spider-ethernet.dtsi
+++ b/arch/arm64/boot/dts/renesas/r8a779f0-spider-ethernet.dtsi
@@ -13,3 +13,47 @@  eeprom@52 {
 		pagesize = <8>;
 	};
 };
+
+&rswitch {
+	status = "okay";
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		port@0 {
+			reg = <0>;
+			phy-handle = <&etha0>;
+			phy-mode = "sgmii";
+			#address-cells = <1>;
+			#size-cells = <0>;
+			etha0: ethernet-phy@0 {
+				reg = <1>;
+				compatible = "ethernet-phy-ieee802.3-c45";
+			};
+		};
+		port@1 {
+			reg = <1>;
+			phy-handle = <&etha1>;
+			phy-mode = "sgmii";
+			#address-cells = <1>;
+			#size-cells = <0>;
+			etha1: ethernet-phy@1 {
+				reg = <2>;
+				compatible = "ethernet-phy-ieee802.3-c45";
+			};
+		};
+		port@2 {
+			reg = <2>;
+			phy-handle = <&etha2>;
+			phy-mode = "sgmii";
+			#address-cells = <1>;
+			#size-cells = <0>;
+			etha2: ethernet-phy@2 {
+				reg = <3>;
+				compatible = "ethernet-phy-ieee802.3-c45";
+			};
+		};
+	};
+};