diff mbox series

[v6,06/11] ARM: dts: sunxi: h3/h5: represent the mdio switch used by sun8i-h3-emac

Message ID 20170927073414.17361-7-clabbe.montjoie@gmail.com
State Changes Requested, archived
Delegated to: David Miller
Headers show
Series net: stmmac: dwmac-sun8i: Handle integrated PHY | expand

Commit Message

Corentin Labbe Sept. 27, 2017, 7:34 a.m. UTC
Since dwmac-sun8i could use either an integrated PHY or an external PHY
(which could be at same MDIO address), we need to represent this selection
by a MDIO switch.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
---
 arch/arm/boot/dts/sunxi-h3-h5.dtsi | 31 +++++++++++++++++++++++++------
 1 file changed, 25 insertions(+), 6 deletions(-)

Comments

Maxime Ripard Sept. 27, 2017, 10:16 a.m. UTC | #1
On Wed, Sep 27, 2017 at 07:34:09AM +0000, Corentin Labbe wrote:
> Since dwmac-sun8i could use either an integrated PHY or an external PHY
> (which could be at same MDIO address), we need to represent this selection
> by a MDIO switch.
> 
> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> ---
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 31 +++++++++++++++++++++++++------
>  1 file changed, 25 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> index 3b7d953429a6..a8e9b8f378ba 100644
> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> @@ -422,14 +422,33 @@
>  			#size-cells = <0>;
>  			status = "disabled";
>  
> -			mdio: mdio {
> +			mdio0: mdio {
>  				#address-cells = <1>;
>  				#size-cells = <0>;
> -				int_mii_phy: ethernet-phy@1 {
> -					compatible = "ethernet-phy-ieee802.3-c22";
> -					reg = <1>;
> -					clocks = <&ccu CLK_BUS_EPHY>;
> -					resets = <&ccu RST_BUS_EPHY>;
> +				compatible = "snps,dwmac-mdio";
> +
> +				mdio-mux {
> +					compatible = "mdio-mux";
> +					#address-cells = <1>;
> +					#size-cells = <0>;

Newline

> +					/* Only one MDIO is usable at the time */
> +					internal_mdio: mdio@1 {
> +						reg = <1>;
> +						#address-cells = <1>;
> +						#size-cells = <0>;

Newline

> +						int_mii_phy: ethernet-phy@1 {
> +							compatible = "ethernet-phy-ieee802.3-c22";
> +							reg = <1>;
> +							clocks = <&ccu CLK_BUS_EPHY>;
> +							resets = <&ccu RST_BUS_EPHY>;
> +							phy-is-integrated;
> +						};
> +					};

Newline

> +					mdio: mdio@2 {

This is quite confusing. Why not call the label external_mdio?

Thanks
Corentin Labbe Sept. 27, 2017, 1:47 p.m. UTC | #2
On Wed, Sep 27, 2017 at 12:16:22PM +0200, Maxime Ripard wrote:
> On Wed, Sep 27, 2017 at 07:34:09AM +0000, Corentin Labbe wrote:
> > Since dwmac-sun8i could use either an integrated PHY or an external PHY
> > (which could be at same MDIO address), we need to represent this selection
> > by a MDIO switch.
> > 
> > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> > ---
> >  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 31 +++++++++++++++++++++++++------
> >  1 file changed, 25 insertions(+), 6 deletions(-)
> > 
> > diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> > index 3b7d953429a6..a8e9b8f378ba 100644
> > --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> > +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> > @@ -422,14 +422,33 @@
> >  			#size-cells = <0>;
> >  			status = "disabled";
> >  
> > -			mdio: mdio {
> > +			mdio0: mdio {
> >  				#address-cells = <1>;
> >  				#size-cells = <0>;
> > -				int_mii_phy: ethernet-phy@1 {
> > -					compatible = "ethernet-phy-ieee802.3-c22";
> > -					reg = <1>;
> > -					clocks = <&ccu CLK_BUS_EPHY>;
> > -					resets = <&ccu RST_BUS_EPHY>;
> > +				compatible = "snps,dwmac-mdio";
> > +
> > +				mdio-mux {
> > +					compatible = "mdio-mux";
> > +					#address-cells = <1>;
> > +					#size-cells = <0>;
> 
> Newline
> 
> > +					/* Only one MDIO is usable at the time */
> > +					internal_mdio: mdio@1 {
> > +						reg = <1>;
> > +						#address-cells = <1>;
> > +						#size-cells = <0>;
> 
> Newline
> 
> > +						int_mii_phy: ethernet-phy@1 {
> > +							compatible = "ethernet-phy-ieee802.3-c22";
> > +							reg = <1>;
> > +							clocks = <&ccu CLK_BUS_EPHY>;
> > +							resets = <&ccu RST_BUS_EPHY>;
> > +							phy-is-integrated;
> > +						};
> > +					};
> 
> Newline
> 
> > +					mdio: mdio@2 {
> 
> This is quite confusing. Why not call the label external_mdio?
> 

I will do it. (at origin I was not changing it for limiting changes on board with external PHY, but now all DT are reverted, it will be easy)

Regards
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
index 3b7d953429a6..a8e9b8f378ba 100644
--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
@@ -422,14 +422,33 @@ 
 			#size-cells = <0>;
 			status = "disabled";
 
-			mdio: mdio {
+			mdio0: mdio {
 				#address-cells = <1>;
 				#size-cells = <0>;
-				int_mii_phy: ethernet-phy@1 {
-					compatible = "ethernet-phy-ieee802.3-c22";
-					reg = <1>;
-					clocks = <&ccu CLK_BUS_EPHY>;
-					resets = <&ccu RST_BUS_EPHY>;
+				compatible = "snps,dwmac-mdio";
+
+				mdio-mux {
+					compatible = "mdio-mux";
+					#address-cells = <1>;
+					#size-cells = <0>;
+					/* Only one MDIO is usable at the time */
+					internal_mdio: mdio@1 {
+						reg = <1>;
+						#address-cells = <1>;
+						#size-cells = <0>;
+						int_mii_phy: ethernet-phy@1 {
+							compatible = "ethernet-phy-ieee802.3-c22";
+							reg = <1>;
+							clocks = <&ccu CLK_BUS_EPHY>;
+							resets = <&ccu RST_BUS_EPHY>;
+							phy-is-integrated;
+						};
+					};
+					mdio: mdio@2 {
+						reg = <2>;
+						#address-cells = <1>;
+						#size-cells = <0>;
+					};
 				};
 			};
 		};