diff mbox series

[v2,2/2] ARM: dts: owl-s500-roseapplepi: Add ethernet support

Message ID d0e1fbf81984127f0352eb740c7129424b5e40f9.1623401998.git.cristian.ciocaltea@gmail.com
State Accepted
Commit 062f82a0b7a760db3fb08f33c9a919c301c2ad9b
Headers show
Series None | expand

Commit Message

Cristian Ciocaltea June 11, 2021, 9:11 a.m. UTC
Add pinctrl configuration for enabling the Ethernet MAC on RoseapplePi
SBC. Additionally, provide the necessary properties for the generic S500
ethernet node in order to setup PHY and MDIO.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
---
 arch/arm/boot/dts/owl-s500-roseapplepi.dts | 45 ++++++++++++++++++++++
 1 file changed, 45 insertions(+)

Comments

Manivannan Sadhasivam June 14, 2021, 11:27 a.m. UTC | #1
On Fri, Jun 11, 2021 at 12:11:33PM +0300, Cristian Ciocaltea wrote:
> Add pinctrl configuration for enabling the Ethernet MAC on RoseapplePi

> SBC. Additionally, provide the necessary properties for the generic S500

> ethernet node in order to setup PHY and MDIO.

> 

> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>


Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>


Thanks,
Mani 

> ---

>  arch/arm/boot/dts/owl-s500-roseapplepi.dts | 45 ++++++++++++++++++++++

>  1 file changed, 45 insertions(+)

> 

> diff --git a/arch/arm/boot/dts/owl-s500-roseapplepi.dts b/arch/arm/boot/dts/owl-s500-roseapplepi.dts

> index b8c5db2344aa..eb555f385283 100644

> --- a/arch/arm/boot/dts/owl-s500-roseapplepi.dts

> +++ b/arch/arm/boot/dts/owl-s500-roseapplepi.dts

> @@ -225,6 +225,27 @@ bias1-pinconf {

>  			bias-pull-down;

>  		};

>  	};

> +

> +	ethernet_pins: ethernet-pins {

> +		eth_rmii-pinmux {

> +			groups = "rmii_txd0_mfp", "rmii_txd1_mfp",

> +				 "rmii_rxd0_mfp", "rmii_rxd1_mfp",

> +				 "rmii_txen_mfp", "rmii_rxen_mfp",

> +				 "rmii_crs_dv_mfp", "rmii_ref_clk_mfp";

> +			function = "eth_rmii";

> +		};

> +

> +		phy_clk-pinmux {

> +			groups = "clko_25m_mfp";

> +			function = "clko_25m";

> +		};

> +

> +		ref_clk-pinconf {

> +			groups = "rmii_ref_clk_drv";

> +			drive-strength = <2>;

> +		};

> +

> +	};

>  };

>  

>  /* uSD */

> @@ -241,6 +262,30 @@ &mmc0 {

>  	vqmmc-supply = <&sd_vcc>;

>  };

>  

> +&ethernet {

> +	pinctrl-names = "default";

> +	pinctrl-0 = <&ethernet_pins>;

> +	phy-mode = "rmii";

> +	phy-handle = <&eth_phy>;

> +	status = "okay";

> +

> +	mdio {

> +		#address-cells = <1>;

> +		#size-cells = <0>;

> +

> +		reset-gpios = <&pinctrl 88 GPIO_ACTIVE_LOW>; /* GPIOC24 */

> +		reset-delay-us = <10000>;

> +		reset-post-delay-us = <150000>;

> +

> +		eth_phy: ethernet-phy@3 {

> +			reg = <0x3>;

> +			max-speed = <100>;

> +			interrupt-parent = <&sirq>;

> +			interrupts = <0 IRQ_TYPE_LEVEL_LOW>;

> +		};

> +	};

> +};

> +

>  &twd_timer {

>  	status = "okay";

>  };

> -- 

> 2.32.0

>
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/owl-s500-roseapplepi.dts b/arch/arm/boot/dts/owl-s500-roseapplepi.dts
index b8c5db2344aa..eb555f385283 100644
--- a/arch/arm/boot/dts/owl-s500-roseapplepi.dts
+++ b/arch/arm/boot/dts/owl-s500-roseapplepi.dts
@@ -225,6 +225,27 @@  bias1-pinconf {
 			bias-pull-down;
 		};
 	};
+
+	ethernet_pins: ethernet-pins {
+		eth_rmii-pinmux {
+			groups = "rmii_txd0_mfp", "rmii_txd1_mfp",
+				 "rmii_rxd0_mfp", "rmii_rxd1_mfp",
+				 "rmii_txen_mfp", "rmii_rxen_mfp",
+				 "rmii_crs_dv_mfp", "rmii_ref_clk_mfp";
+			function = "eth_rmii";
+		};
+
+		phy_clk-pinmux {
+			groups = "clko_25m_mfp";
+			function = "clko_25m";
+		};
+
+		ref_clk-pinconf {
+			groups = "rmii_ref_clk_drv";
+			drive-strength = <2>;
+		};
+
+	};
 };
 
 /* uSD */
@@ -241,6 +262,30 @@  &mmc0 {
 	vqmmc-supply = <&sd_vcc>;
 };
 
+&ethernet {
+	pinctrl-names = "default";
+	pinctrl-0 = <&ethernet_pins>;
+	phy-mode = "rmii";
+	phy-handle = <&eth_phy>;
+	status = "okay";
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		reset-gpios = <&pinctrl 88 GPIO_ACTIVE_LOW>; /* GPIOC24 */
+		reset-delay-us = <10000>;
+		reset-post-delay-us = <150000>;
+
+		eth_phy: ethernet-phy@3 {
+			reg = <0x3>;
+			max-speed = <100>;
+			interrupt-parent = <&sirq>;
+			interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+		};
+	};
+};
+
 &twd_timer {
 	status = "okay";
 };