All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:28 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue
  Cc: icenowy, netdev, devicetree, linux-arm-kernel, linux-kernel,
	linux-sunxi, Corentin Labbe

Hello

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patchs series adds a new way to find if the PHY is internal, via its
compatible.

Corentin Labbe (3):
  dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
  ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
  net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible

 Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
 arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
 3 files changed, 14 insertions(+), 9 deletions(-)

-- 
2.13.0

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:28 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o
  Cc: icenowy-h8G6r0blFSE, netdev-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw, Corentin Labbe

Hello

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patchs series adds a new way to find if the PHY is internal, via its
compatible.

Corentin Labbe (3):
  dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
  ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
  net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible

 Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
 arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
 3 files changed, 14 insertions(+), 9 deletions(-)

-- 
2.13.0

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:28 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: linux-arm-kernel

Hello

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patchs series adds a new way to find if the PHY is internal, via its
compatible.

Corentin Labbe (3):
  dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
  ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
  net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible

 Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
 arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
 3 files changed, 14 insertions(+), 9 deletions(-)

-- 
2.13.0

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

* [PATCH 1/3] dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue
  Cc: icenowy, netdev, devicetree, linux-arm-kernel, linux-kernel,
	linux-sunxi, Corentin Labbe

The internal PHYs for H3 ans V3S now need to have their own compatible.
This patch rename them in the binding documentation.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
---
 Documentation/devicetree/bindings/net/dwmac-sun8i.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
index 725f3b187886..851e89052424 100644
--- a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
@@ -49,8 +49,8 @@ The device node referenced by "phy" or "phy-handle" should be a child node
 of the mdio node. See phy.txt for the generic PHY bindings.
 
 Required properties of the phy node with the following compatibles:
-  - "allwinner,sun8i-h3-emac",
-  - "allwinner,sun8i-v3s-emac":
+  - "allwinner,sun8i-h3-ephy",
+  - "allwinner,sun8i-v3s-ephy":
 - clocks: a phandle to the reference clock for the EPHY
 - resets: a phandle to the reset control for the EPHY
 
-- 
2.13.0

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

* [PATCH 1/3] dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o
  Cc: icenowy-h8G6r0blFSE, netdev-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw, Corentin Labbe

The internal PHYs for H3 ans V3S now need to have their own compatible.
This patch rename them in the binding documentation.

Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 Documentation/devicetree/bindings/net/dwmac-sun8i.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
index 725f3b187886..851e89052424 100644
--- a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
@@ -49,8 +49,8 @@ The device node referenced by "phy" or "phy-handle" should be a child node
 of the mdio node. See phy.txt for the generic PHY bindings.
 
 Required properties of the phy node with the following compatibles:
-  - "allwinner,sun8i-h3-emac",
-  - "allwinner,sun8i-v3s-emac":
+  - "allwinner,sun8i-h3-ephy",
+  - "allwinner,sun8i-v3s-ephy":
 - clocks: a phandle to the reference clock for the EPHY
 - resets: a phandle to the reset control for the EPHY
 
-- 
2.13.0

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

* [PATCH 1/3] dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: linux-arm-kernel

The internal PHYs for H3 ans V3S now need to have their own compatible.
This patch rename them in the binding documentation.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
---
 Documentation/devicetree/bindings/net/dwmac-sun8i.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
index 725f3b187886..851e89052424 100644
--- a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
@@ -49,8 +49,8 @@ The device node referenced by "phy" or "phy-handle" should be a child node
 of the mdio node. See phy.txt for the generic PHY bindings.
 
 Required properties of the phy node with the following compatibles:
-  - "allwinner,sun8i-h3-emac",
-  - "allwinner,sun8i-v3s-emac":
+  - "allwinner,sun8i-h3-ephy",
+  - "allwinner,sun8i-v3s-ephy":
 - clocks: a phandle to the reference clock for the EPHY
 - resets: a phandle to the reset control for the EPHY
 
-- 
2.13.0

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

* [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue
  Cc: icenowy, netdev, devicetree, linux-arm-kernel, linux-kernel,
	linux-sunxi, Corentin Labbe

This patch adds the sun8i-h3-ephy compatible to the internal PHY.

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

diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
index 4b599b5d26f6..7aaa837c2388 100644
--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
@@ -421,7 +421,8 @@
 				#address-cells = <1>;
 				#size-cells = <0>;
 				int_mii_phy: ethernet-phy@1 {
-					compatible = "ethernet-phy-ieee802.3-c22";
+					compatible = "allwinner,sun8i-h3-ephy",
+							"ethernet-phy-ieee802.3-c22";
 					reg = <1>;
 					clocks = <&ccu CLK_BUS_EPHY>;
 					resets = <&ccu RST_BUS_EPHY>;
-- 
2.13.0

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

* [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o
  Cc: icenowy-h8G6r0blFSE, netdev-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw, Corentin Labbe

This patch adds the sun8i-h3-ephy compatible to the internal PHY.

Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
index 4b599b5d26f6..7aaa837c2388 100644
--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
@@ -421,7 +421,8 @@
 				#address-cells = <1>;
 				#size-cells = <0>;
 				int_mii_phy: ethernet-phy@1 {
-					compatible = "ethernet-phy-ieee802.3-c22";
+					compatible = "allwinner,sun8i-h3-ephy",
+							"ethernet-phy-ieee802.3-c22";
 					reg = <1>;
 					clocks = <&ccu CLK_BUS_EPHY>;
 					resets = <&ccu RST_BUS_EPHY>;
-- 
2.13.0

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

* [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: linux-arm-kernel

This patch adds the sun8i-h3-ephy compatible to the internal PHY.

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

diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
index 4b599b5d26f6..7aaa837c2388 100644
--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
@@ -421,7 +421,8 @@
 				#address-cells = <1>;
 				#size-cells = <0>;
 				int_mii_phy: ethernet-phy at 1 {
-					compatible = "ethernet-phy-ieee802.3-c22";
+					compatible = "allwinner,sun8i-h3-ephy",
+							"ethernet-phy-ieee802.3-c22";
 					reg = <1>;
 					clocks = <&ccu CLK_BUS_EPHY>;
 					resets = <&ccu RST_BUS_EPHY>;
-- 
2.13.0

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

* [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue
  Cc: icenowy, netdev, devicetree, linux-arm-kernel, linux-kernel,
	linux-sunxi, Corentin Labbe

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patch adds a new way to find if the PHY is internal, via its
compatible.

Since the phy_mode of the internal PHY does need to be know, the
variant internal_phy member is converted to a boolean.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
---
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
index fffd6d5fc907..04f7ddd802b0 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
@@ -48,7 +48,7 @@
  */
 struct emac_variant {
 	u32 default_syscon_value;
-	int internal_phy;
+	bool internal_phy;
 	bool support_mii;
 	bool support_rmii;
 	bool support_rgmii;
@@ -75,7 +75,7 @@ struct sunxi_priv_data {
 
 static const struct emac_variant emac_variant_h3 = {
 	.default_syscon_value = 0x58000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -83,20 +83,20 @@ static const struct emac_variant emac_variant_h3 = {
 
 static const struct emac_variant emac_variant_v3s = {
 	.default_syscon_value = 0x38000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true
 };
 
 static const struct emac_variant emac_variant_a83t = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rgmii = true
 };
 
 static const struct emac_variant emac_variant_a64 = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -889,6 +889,10 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	struct sunxi_priv_data *gmac;
 	struct device *dev = &pdev->dev;
 	int ret;
+	static const struct of_device_id internal_phys[] = {
+		{ .compatible = "allwinner,sun8i-h3-ephy" },
+		{ .compatible = "allwinner,sun8i-v3s-ephy" },
+	};
 
 	ret = stmmac_get_platform_resources(pdev, &stmmac_res);
 	if (ret)
@@ -932,7 +936,7 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	}
 
 	plat_dat->interface = of_get_phy_mode(dev->of_node);
-	if (plat_dat->interface == gmac->variant->internal_phy) {
+	if (of_match_node(internal_phys, plat_dat->phy_node)) {
 		dev_info(&pdev->dev, "Will use internal PHY\n");
 		gmac->use_internal_phy = true;
 		gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0);
-- 
2.13.0

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

* [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o
  Cc: icenowy-h8G6r0blFSE, netdev-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw, Corentin Labbe

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patch adds a new way to find if the PHY is internal, via its
compatible.

Since the phy_mode of the internal PHY does need to be know, the
variant internal_phy member is converted to a boolean.

Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
index fffd6d5fc907..04f7ddd802b0 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
@@ -48,7 +48,7 @@
  */
 struct emac_variant {
 	u32 default_syscon_value;
-	int internal_phy;
+	bool internal_phy;
 	bool support_mii;
 	bool support_rmii;
 	bool support_rgmii;
@@ -75,7 +75,7 @@ struct sunxi_priv_data {
 
 static const struct emac_variant emac_variant_h3 = {
 	.default_syscon_value = 0x58000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -83,20 +83,20 @@ static const struct emac_variant emac_variant_h3 = {
 
 static const struct emac_variant emac_variant_v3s = {
 	.default_syscon_value = 0x38000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true
 };
 
 static const struct emac_variant emac_variant_a83t = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rgmii = true
 };
 
 static const struct emac_variant emac_variant_a64 = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -889,6 +889,10 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	struct sunxi_priv_data *gmac;
 	struct device *dev = &pdev->dev;
 	int ret;
+	static const struct of_device_id internal_phys[] = {
+		{ .compatible = "allwinner,sun8i-h3-ephy" },
+		{ .compatible = "allwinner,sun8i-v3s-ephy" },
+	};
 
 	ret = stmmac_get_platform_resources(pdev, &stmmac_res);
 	if (ret)
@@ -932,7 +936,7 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	}
 
 	plat_dat->interface = of_get_phy_mode(dev->of_node);
-	if (plat_dat->interface == gmac->variant->internal_phy) {
+	if (of_match_node(internal_phys, plat_dat->phy_node)) {
 		dev_info(&pdev->dev, "Will use internal PHY\n");
 		gmac->use_internal_phy = true;
 		gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0);
-- 
2.13.0

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

* [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:28   ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:28 UTC (permalink / raw)
  To: linux-arm-kernel

The current way to find if the phy is internal is to compare DT phy-mode
and emac_variant/internal_phy.
But it will negate a possible future SoC where an external PHY use the
same phy mode than the internal one.

This patch adds a new way to find if the PHY is internal, via its
compatible.

Since the phy_mode of the internal PHY does need to be know, the
variant internal_phy member is converted to a boolean.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
---
 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
index fffd6d5fc907..04f7ddd802b0 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
@@ -48,7 +48,7 @@
  */
 struct emac_variant {
 	u32 default_syscon_value;
-	int internal_phy;
+	bool internal_phy;
 	bool support_mii;
 	bool support_rmii;
 	bool support_rgmii;
@@ -75,7 +75,7 @@ struct sunxi_priv_data {
 
 static const struct emac_variant emac_variant_h3 = {
 	.default_syscon_value = 0x58000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -83,20 +83,20 @@ static const struct emac_variant emac_variant_h3 = {
 
 static const struct emac_variant emac_variant_v3s = {
 	.default_syscon_value = 0x38000,
-	.internal_phy = PHY_INTERFACE_MODE_MII,
+	.internal_phy = true,
 	.support_mii = true
 };
 
 static const struct emac_variant emac_variant_a83t = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rgmii = true
 };
 
 static const struct emac_variant emac_variant_a64 = {
 	.default_syscon_value = 0,
-	.internal_phy = 0,
+	.internal_phy = false,
 	.support_mii = true,
 	.support_rmii = true,
 	.support_rgmii = true
@@ -889,6 +889,10 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	struct sunxi_priv_data *gmac;
 	struct device *dev = &pdev->dev;
 	int ret;
+	static const struct of_device_id internal_phys[] = {
+		{ .compatible = "allwinner,sun8i-h3-ephy" },
+		{ .compatible = "allwinner,sun8i-v3s-ephy" },
+	};
 
 	ret = stmmac_get_platform_resources(pdev, &stmmac_res);
 	if (ret)
@@ -932,7 +936,7 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
 	}
 
 	plat_dat->interface = of_get_phy_mode(dev->of_node);
-	if (plat_dat->interface == gmac->variant->internal_phy) {
+	if (of_match_node(internal_phys, plat_dat->phy_node)) {
 		dev_info(&pdev->dev, "Will use internal PHY\n");
 		gmac->use_internal_phy = true;
 		gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0);
-- 
2.13.0

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

* Re: [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
  2017-07-28  9:28   ` Corentin Labbe
@ 2017-07-28  9:44     ` Chen-Yu Tsai
  -1 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:44 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	Russell King, Giuseppe Cavallaro, alexandre.torgue,
	Icenowy Zheng, netdev, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> This patch adds the sun8i-h3-ephy compatible to the internal PHY.
>
> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> ---
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-

To avoid repeating the past, this patch, if approved, will be merged
through the sunxi tree, not netdev nor net-next.

>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> index 4b599b5d26f6..7aaa837c2388 100644
> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> @@ -421,7 +421,8 @@
>                                 #address-cells = <1>;
>                                 #size-cells = <0>;
>                                 int_mii_phy: ethernet-phy@1 {
> -                                       compatible = "ethernet-phy-ieee802.3-c22";
> +                                       compatible = "allwinner,sun8i-h3-ephy",
> +                                                       "ethernet-phy-ieee802.3-c22";

Are you expecting people to override this properly?

As it currently is, any external phy at address 1 will simply
reuse the same device node. And if they don't override the
property correctly, the driver will end up trying to use
the internal phy, while the user is expecting the external
one to be used.

Maybe you could move this to some other address, maybe the last
valid one, or second last valid one?

ChenYu

>                                         reg = <1>;
>                                         clocks = <&ccu CLK_BUS_EPHY>;
>                                         resets = <&ccu RST_BUS_EPHY>;
> --
> 2.13.0
>

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

* [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:44     ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:44 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> This patch adds the sun8i-h3-ephy compatible to the internal PHY.
>
> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> ---
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-

To avoid repeating the past, this patch, if approved, will be merged
through the sunxi tree, not netdev nor net-next.

>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> index 4b599b5d26f6..7aaa837c2388 100644
> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
> @@ -421,7 +421,8 @@
>                                 #address-cells = <1>;
>                                 #size-cells = <0>;
>                                 int_mii_phy: ethernet-phy at 1 {
> -                                       compatible = "ethernet-phy-ieee802.3-c22";
> +                                       compatible = "allwinner,sun8i-h3-ephy",
> +                                                       "ethernet-phy-ieee802.3-c22";

Are you expecting people to override this properly?

As it currently is, any external phy at address 1 will simply
reuse the same device node. And if they don't override the
property correctly, the driver will end up trying to use
the internal phy, while the user is expecting the external
one to be used.

Maybe you could move this to some other address, maybe the last
valid one, or second last valid one?

ChenYu

>                                         reg = <1>;
>                                         clocks = <&ccu CLK_BUS_EPHY>;
>                                         resets = <&ccu RST_BUS_EPHY>;
> --
> 2.13.0
>

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

* Re: [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:46       ` Icenowy Zheng
  0 siblings, 0 replies; 56+ messages in thread
From: Icenowy Zheng @ 2017-07-28  9:46 UTC (permalink / raw)
  To: Chen-Yu Tsai, Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Russell King,
	Giuseppe Cavallaro, alexandre.torgue, netdev, devicetree,
	linux-arm-kernel, linux-kernel, linux-sunxi



于 2017年7月28日 GMT+08:00 下午5:44:51, Chen-Yu Tsai <wens@csie.org> 写到:
>On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
><clabbe.montjoie@gmail.com> wrote:
>> This patch adds the sun8i-h3-ephy compatible to the internal PHY.
>>
>> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
>> ---
>>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-
>
>To avoid repeating the past, this patch, if approved, will be merged
>through the sunxi tree, not netdev nor net-next.
>
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> index 4b599b5d26f6..7aaa837c2388 100644
>> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> @@ -421,7 +421,8 @@
>>                                 #address-cells = <1>;
>>                                 #size-cells = <0>;
>>                                 int_mii_phy: ethernet-phy@1 {
>> -                                       compatible =
>"ethernet-phy-ieee802.3-c22";
>> +                                       compatible =
>"allwinner,sun8i-h3-ephy",
>> +                                                      
>"ethernet-phy-ieee802.3-c22";
>
>Are you expecting people to override this properly?
>
>As it currently is, any external phy at address 1 will simply
>reuse the same device node. And if they don't override the
>property correctly, the driver will end up trying to use
>the internal phy, while the user is expecting the external
>one to be used.
>
>Maybe you could move this to some other address, maybe the last
>valid one, or second last valid one?

Some board designers may use other address.

For example, on Nano Pi NEO2 the PHY is attached at address 0x7.

>
>ChenYu
>
>>                                         reg = <1>;
>>                                         clocks = <&ccu CLK_BUS_EPHY>;
>>                                         resets = <&ccu RST_BUS_EPHY>;
>> --
>> 2.13.0
>>

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

* Re: [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:46       ` Icenowy Zheng
  0 siblings, 0 replies; 56+ messages in thread
From: Icenowy Zheng @ 2017-07-28  9:46 UTC (permalink / raw)
  To: Chen-Yu Tsai, Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Russell King,
	Giuseppe Cavallaro, alexandre.torgue-qxv4g6HH51o, netdev,
	devicetree, linux-arm-kernel, linux-kernel, linux-sunxi



于 2017年7月28日 GMT+08:00 下午5:44:51, Chen-Yu Tsai <wens-jdAy2FN1RRM@public.gmane.org> 写到:
>On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
><clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> This patch adds the sun8i-h3-ephy compatible to the internal PHY.
>>
>> Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>> ---
>>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-
>
>To avoid repeating the past, this patch, if approved, will be merged
>through the sunxi tree, not netdev nor net-next.
>
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> index 4b599b5d26f6..7aaa837c2388 100644
>> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> @@ -421,7 +421,8 @@
>>                                 #address-cells = <1>;
>>                                 #size-cells = <0>;
>>                                 int_mii_phy: ethernet-phy@1 {
>> -                                       compatible =
>"ethernet-phy-ieee802.3-c22";
>> +                                       compatible =
>"allwinner,sun8i-h3-ephy",
>> +                                                      
>"ethernet-phy-ieee802.3-c22";
>
>Are you expecting people to override this properly?
>
>As it currently is, any external phy at address 1 will simply
>reuse the same device node. And if they don't override the
>property correctly, the driver will end up trying to use
>the internal phy, while the user is expecting the external
>one to be used.
>
>Maybe you could move this to some other address, maybe the last
>valid one, or second last valid one?

Some board designers may use other address.

For example, on Nano Pi NEO2 the PHY is attached at address 0x7.

>
>ChenYu
>
>>                                         reg = <1>;
>>                                         clocks = <&ccu CLK_BUS_EPHY>;
>>                                         resets = <&ccu RST_BUS_EPHY>;
>> --
>> 2.13.0
>>
--
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

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

* [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
@ 2017-07-28  9:46       ` Icenowy Zheng
  0 siblings, 0 replies; 56+ messages in thread
From: Icenowy Zheng @ 2017-07-28  9:46 UTC (permalink / raw)
  To: linux-arm-kernel



? 2017?7?28? GMT+08:00 ??5:44:51, Chen-Yu Tsai <wens@csie.org> ??:
>On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
><clabbe.montjoie@gmail.com> wrote:
>> This patch adds the sun8i-h3-ephy compatible to the internal PHY.
>>
>> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
>> ---
>>  arch/arm/boot/dts/sunxi-h3-h5.dtsi | 3 ++-
>
>To avoid repeating the past, this patch, if approved, will be merged
>through the sunxi tree, not netdev nor net-next.
>
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> index 4b599b5d26f6..7aaa837c2388 100644
>> --- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
>> @@ -421,7 +421,8 @@
>>                                 #address-cells = <1>;
>>                                 #size-cells = <0>;
>>                                 int_mii_phy: ethernet-phy at 1 {
>> -                                       compatible =
>"ethernet-phy-ieee802.3-c22";
>> +                                       compatible =
>"allwinner,sun8i-h3-ephy",
>> +                                                      
>"ethernet-phy-ieee802.3-c22";
>
>Are you expecting people to override this properly?
>
>As it currently is, any external phy at address 1 will simply
>reuse the same device node. And if they don't override the
>property correctly, the driver will end up trying to use
>the internal phy, while the user is expecting the external
>one to be used.
>
>Maybe you could move this to some other address, maybe the last
>valid one, or second last valid one?

Some board designers may use other address.

For example, on Nano Pi NEO2 the PHY is attached at address 0x7.

>
>ChenYu
>
>>                                         reg = <1>;
>>                                         clocks = <&ccu CLK_BUS_EPHY>;
>>                                         resets = <&ccu RST_BUS_EPHY>;
>> --
>> 2.13.0
>>

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

* Re: [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:49     ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:49 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	Russell King, Giuseppe Cavallaro, alexandre.torgue,
	Icenowy Zheng, netdev, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patch adds a new way to find if the PHY is internal, via its
> compatible.
>
> Since the phy_mode of the internal PHY does need to be know, the
> variant internal_phy member is converted to a boolean.
>
> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> ---
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> index fffd6d5fc907..04f7ddd802b0 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> @@ -48,7 +48,7 @@
>   */
>  struct emac_variant {
>         u32 default_syscon_value;
> -       int internal_phy;
> +       bool internal_phy;

Nit: please add a verb to the name, like "has_internal_phy",
or even "soc_has_internal_phy". This makes it clear what this
property represents.

ChenYu

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

* Re: [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:49     ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:49 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	Russell King, Giuseppe Cavallaro, alexandre.torgue-qxv4g6HH51o,
	Icenowy Zheng, netdev, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patch adds a new way to find if the PHY is internal, via its
> compatible.
>
> Since the phy_mode of the internal PHY does need to be know, the
> variant internal_phy member is converted to a boolean.
>
> Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> ---
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> index fffd6d5fc907..04f7ddd802b0 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> @@ -48,7 +48,7 @@
>   */
>  struct emac_variant {
>         u32 default_syscon_value;
> -       int internal_phy;
> +       bool internal_phy;

Nit: please add a verb to the name, like "has_internal_phy",
or even "soc_has_internal_phy". This makes it clear what this
property represents.

ChenYu

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

* [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:49     ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:49 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patch adds a new way to find if the PHY is internal, via its
> compatible.
>
> Since the phy_mode of the internal PHY does need to be know, the
> variant internal_phy member is converted to a boolean.
>
> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> ---
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> index fffd6d5fc907..04f7ddd802b0 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> @@ -48,7 +48,7 @@
>   */
>  struct emac_variant {
>         u32 default_syscon_value;
> -       int internal_phy;
> +       bool internal_phy;

Nit: please add a verb to the name, like "has_internal_phy",
or even "soc_has_internal_phy". This makes it clear what this
property represents.

ChenYu

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:53   ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:53 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	Russell King, Giuseppe Cavallaro, alexandre.torgue,
	Icenowy Zheng, netdev, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> Hello
>
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

You've already joined in on the discussion for the patch "net: stmmac:
dwmac-rk: Add internal phy support". It is pretty much the same issue.
Please wait for it to come to a proper conclusion. At least then we can
agree on something so different platforms with the same problem don't
have diverging solutions.

ChenYu

>
> Corentin Labbe (3):
>   dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
>   ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
>   net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
>
>  Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
>  3 files changed, 14 insertions(+), 9 deletions(-)
>
> --
> 2.13.0
>

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:53   ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:53 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Chen-Yu Tsai,
	Russell King, Giuseppe Cavallaro, alexandre.torgue-qxv4g6HH51o,
	Icenowy Zheng, netdev, devicetree, linux-arm-kernel,
	linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> Hello
>
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

You've already joined in on the discussion for the patch "net: stmmac:
dwmac-rk: Add internal phy support". It is pretty much the same issue.
Please wait for it to come to a proper conclusion. At least then we can
agree on something so different platforms with the same problem don't
have diverging solutions.

ChenYu

>
> Corentin Labbe (3):
>   dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
>   ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
>   net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
>
>  Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
>  3 files changed, 14 insertions(+), 9 deletions(-)
>
> --
> 2.13.0
>

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28  9:53   ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-28  9:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> Hello
>
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
>
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

You've already joined in on the discussion for the patch "net: stmmac:
dwmac-rk: Add internal phy support". It is pretty much the same issue.
Please wait for it to come to a proper conclusion. At least then we can
agree on something so different platforms with the same problem don't
have diverging solutions.

ChenYu

>
> Corentin Labbe (3):
>   dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs
>   ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible
>   net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
>
>  Documentation/devicetree/bindings/net/dwmac-sun8i.txt |  4 ++--
>  arch/arm/boot/dts/sunxi-h3-h5.dtsi                    |  3 ++-
>  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c     | 16 ++++++++++------
>  3 files changed, 14 insertions(+), 9 deletions(-)
>
> --
> 2.13.0
>

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

* Re: [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:54       ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:54 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Russell King,
	Giuseppe Cavallaro, alexandre.torgue, Icenowy Zheng, netdev,
	devicetree, linux-arm-kernel, linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 05:49:55PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patch adds a new way to find if the PHY is internal, via its
> > compatible.
> >
> > Since the phy_mode of the internal PHY does need to be know, the
> > variant internal_phy member is converted to a boolean.
> >
> > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> > ---
> >  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
> >  1 file changed, 10 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > index fffd6d5fc907..04f7ddd802b0 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > @@ -48,7 +48,7 @@
> >   */
> >  struct emac_variant {
> >         u32 default_syscon_value;
> > -       int internal_phy;
> > +       bool internal_phy;
> 
> Nit: please add a verb to the name, like "has_internal_phy",
> or even "soc_has_internal_phy". This makes it clear what this
> property represents.
> 
> ChenYu

I will use soc_has_internal_phy

Thanks

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

* Re: [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:54       ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:54 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Rob Herring, Mark Rutland, Maxime Ripard, Russell King,
	Giuseppe Cavallaro, alexandre.torgue-qxv4g6HH51o, Icenowy Zheng,
	netdev, devicetree, linux-arm-kernel, linux-kernel, linux-sunxi

On Fri, Jul 28, 2017 at 05:49:55PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patch adds a new way to find if the PHY is internal, via its
> > compatible.
> >
> > Since the phy_mode of the internal PHY does need to be know, the
> > variant internal_phy member is converted to a boolean.
> >
> > Signed-off-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> > ---
> >  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
> >  1 file changed, 10 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > index fffd6d5fc907..04f7ddd802b0 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > @@ -48,7 +48,7 @@
> >   */
> >  struct emac_variant {
> >         u32 default_syscon_value;
> > -       int internal_phy;
> > +       bool internal_phy;
> 
> Nit: please add a verb to the name, like "has_internal_phy",
> or even "soc_has_internal_phy". This makes it clear what this
> property represents.
> 
> ChenYu

I will use soc_has_internal_phy

Thanks

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

* [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible
@ 2017-07-28  9:54       ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28  9:54 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 05:49:55PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patch adds a new way to find if the PHY is internal, via its
> > compatible.
> >
> > Since the phy_mode of the internal PHY does need to be know, the
> > variant internal_phy member is converted to a boolean.
> >
> > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
> > ---
> >  drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 16 ++++++++++------
> >  1 file changed, 10 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > index fffd6d5fc907..04f7ddd802b0 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
> > @@ -48,7 +48,7 @@
> >   */
> >  struct emac_variant {
> >         u32 default_syscon_value;
> > -       int internal_phy;
> > +       bool internal_phy;
> 
> Nit: please add a verb to the name, like "has_internal_phy",
> or even "soc_has_internal_phy". This makes it clear what this
> property represents.
> 
> ChenYu

I will use soc_has_internal_phy

Thanks

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:47     ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:47 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Corentin Labbe, Mark Rutland, devicetree, alexandre.torgue,
	netdev, linux-sunxi, Russell King, linux-kernel, Rob Herring,
	Giuseppe Cavallaro, Maxime Ripard, linux-arm-kernel,
	Icenowy Zheng

On Fri, Jul 28, 2017 at 05:53:40PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > Hello
> >
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> You've already joined in on the discussion for the patch "net: stmmac:
> dwmac-rk: Add internal phy support". It is pretty much the same issue.
> Please wait for it to come to a proper conclusion. At least then we can
> agree on something so different platforms with the same problem don't
> have diverging solutions.

Yes, this is important.

     Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:47     ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:47 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Corentin Labbe, Mark Rutland, devicetree,
	alexandre.torgue-qxv4g6HH51o, netdev, linux-sunxi, Russell King,
	linux-kernel, Rob Herring, Giuseppe Cavallaro, Maxime Ripard,
	linux-arm-kernel, Icenowy Zheng

On Fri, Jul 28, 2017 at 05:53:40PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> > Hello
> >
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> You've already joined in on the discussion for the patch "net: stmmac:
> dwmac-rk: Add internal phy support". It is pretty much the same issue.
> Please wait for it to come to a proper conclusion. At least then we can
> agree on something so different platforms with the same problem don't
> have diverging solutions.

Yes, this is important.

     Andrew

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:47     ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 05:53:40PM +0800, Chen-Yu Tsai wrote:
> On Fri, Jul 28, 2017 at 5:28 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > Hello
> >
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> >
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> You've already joined in on the discussion for the patch "net: stmmac:
> dwmac-rk: Add internal phy support". It is pretty much the same issue.
> Please wait for it to come to a proper conclusion. At least then we can
> agree on something so different platforms with the same problem don't
> have diverging solutions.

Yes, this is important.

     Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:55   ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:55 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> Hello
> 
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
> 
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144

Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
warning. But still, your device tree gives the wrong idea.

I've probably asked this before: Does the internal PHY use a different
PHY ID in registers 2 and 3?

    Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:55   ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:55 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> Hello
> 
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
> 
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144

Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
warning. But still, your device tree gives the wrong idea.

I've probably asked this before: Does the internal PHY use a different
PHY ID in registers 2 and 3?

    Andrew

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 13:55   ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 13:55 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> Hello
> 
> The current way to find if the phy is internal is to compare DT phy-mode
> and emac_variant/internal_phy.
> But it will negate a possible future SoC where an external PHY use the
> same phy mode than the internal one.
> 
> This patchs series adds a new way to find if the PHY is internal, via its
> compatible.

http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144

Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
warning. But still, your device tree gives the wrong idea.

I've probably asked this before: Does the internal PHY use a different
PHY ID in registers 2 and 3?

    Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:25     ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:25 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

On Fri, Jul 28, 2017 at 03:55:44PM +0200, Andrew Lunn wrote:
> On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> > Hello
> > 
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> > 
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144
> 
> Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
> warning. But still, your device tree gives the wrong idea.
> 
> I've probably asked this before: Does the internal PHY use a different
> PHY ID in registers 2 and 3?
> 

yes

reg2: 0x0044
reg3: 0X1500

Regards

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:25     ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:25 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

On Fri, Jul 28, 2017 at 03:55:44PM +0200, Andrew Lunn wrote:
> On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> > Hello
> > 
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> > 
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144
> 
> Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
> warning. But still, your device tree gives the wrong idea.
> 
> I've probably asked this before: Does the internal PHY use a different
> PHY ID in registers 2 and 3?
> 

yes

reg2: 0x0044
reg3: 0X1500

Regards

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:25     ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 03:55:44PM +0200, Andrew Lunn wrote:
> On Fri, Jul 28, 2017 at 11:28:15AM +0200, Corentin Labbe wrote:
> > Hello
> > 
> > The current way to find if the phy is internal is to compare DT phy-mode
> > and emac_variant/internal_phy.
> > But it will negate a possible future SoC where an external PHY use the
> > same phy mode than the internal one.
> > 
> > This patchs series adds a new way to find if the PHY is internal, via its
> > compatible.
> 
> http://elixir.free-electrons.com/linux/latest/source/drivers/of/of_mdio.c#L144
> 
> Since you also have "ethernet-phy-ieee802.3-c22", you won't get the
> warning. But still, your device tree gives the wrong idea.
> 
> I've probably asked this before: Does the internal PHY use a different
> PHY ID in registers 2 and 3?
> 

yes

reg2: 0x0044
reg3: 0X1500

Regards

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
  2017-07-28 14:25     ` Corentin Labbe
  (?)
@ 2017-07-28 14:36       ` Andrew Lunn
  -1 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:36 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

> > I've probably asked this before: Does the internal PHY use a different
> > PHY ID in registers 2 and 3?
> > 
> 
> yes
> 
> reg2: 0x0044
> reg3: 0X1500

So this is not about loading the correct PHY driver. You can already
do this based on the PHY IDs...

This is about selecting which PHY to use. Internal or External?	

     Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:36       ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:36 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

> > I've probably asked this before: Does the internal PHY use a different
> > PHY ID in registers 2 and 3?
> > 
> 
> yes
> 
> reg2: 0x0044
> reg3: 0X1500

So this is not about loading the correct PHY driver. You can already
do this based on the PHY IDs...

This is about selecting which PHY to use. Internal or External?	

     Andrew
--
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

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:36       ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:36 UTC (permalink / raw)
  To: linux-arm-kernel

> > I've probably asked this before: Does the internal PHY use a different
> > PHY ID in registers 2 and 3?
> > 
> 
> yes
> 
> reg2: 0x0044
> reg3: 0X1500

So this is not about loading the correct PHY driver. You can already
do this based on the PHY IDs...

This is about selecting which PHY to use. Internal or External?	

     Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:44         ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:44 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> > > I've probably asked this before: Does the internal PHY use a different
> > > PHY ID in registers 2 and 3?
> > > 
> > 
> > yes
> > 
> > reg2: 0x0044
> > reg3: 0X1500

Copy/paste error, its 1400

> 
> So this is not about loading the correct PHY driver. You can already
> do this based on the PHY IDs...
> 
> This is about selecting which PHY to use. Internal or External?	
> 
>      Andrew

It is too late when we know the PHY ID.
We need to set a syscon for choosing external/internal PHY.
So we can rely only on DT.

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:44         ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:44 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> > > I've probably asked this before: Does the internal PHY use a different
> > > PHY ID in registers 2 and 3?
> > > 
> > 
> > yes
> > 
> > reg2: 0x0044
> > reg3: 0X1500

Copy/paste error, its 1400

> 
> So this is not about loading the correct PHY driver. You can already
> do this based on the PHY IDs...
> 
> This is about selecting which PHY to use. Internal or External?	
> 
>      Andrew

It is too late when we know the PHY ID.
We need to set a syscon for choosing external/internal PHY.
So we can rely only on DT.

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:44         ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-28 14:44 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> > > I've probably asked this before: Does the internal PHY use a different
> > > PHY ID in registers 2 and 3?
> > > 
> > 
> > yes
> > 
> > reg2: 0x0044
> > reg3: 0X1500

Copy/paste error, its 1400

> 
> So this is not about loading the correct PHY driver. You can already
> do this based on the PHY IDs...
> 
> This is about selecting which PHY to use. Internal or External?	
> 
>      Andrew

It is too late when we know the PHY ID.
We need to set a syscon for choosing external/internal PHY.
So we can rely only on DT.

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
  2017-07-28 14:44         ` Corentin Labbe
  (?)
@ 2017-07-28 14:51           ` Andrew Lunn
  -1 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:51 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

> It is too late when we know the PHY ID.
> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

The point is, its not a property of the PHY. It is a syscon or a MAC
property. Having it as a MAC property would be more generic.

   Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:51           ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:51 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

> It is too late when we know the PHY ID.
> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

The point is, its not a property of the PHY. It is a syscon or a MAC
property. Having it as a MAC property would be more generic.

   Andrew

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 14:51           ` Andrew Lunn
  0 siblings, 0 replies; 56+ messages in thread
From: Andrew Lunn @ 2017-07-28 14:51 UTC (permalink / raw)
  To: linux-arm-kernel

> It is too late when we know the PHY ID.
> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

The point is, its not a property of the PHY. It is a syscon or a MAC
property. Having it as a MAC property would be more generic.

   Andrew

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
  2017-07-28 14:44         ` Corentin Labbe
  (?)
@ 2017-07-28 17:54           ` Florian Fainelli
  -1 siblings, 0 replies; 56+ messages in thread
From: Florian Fainelli @ 2017-07-28 17:54 UTC (permalink / raw)
  To: Corentin Labbe, Andrew Lunn
  Cc: robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>>>> I've probably asked this before: Does the internal PHY use a different
>>>> PHY ID in registers 2 and 3?
>>>>
>>>
>>> yes
>>>
>>> reg2: 0x0044
>>> reg3: 0X1500
> 
> Copy/paste error, its 1400
> 
>>
>> So this is not about loading the correct PHY driver. You can already
>> do this based on the PHY IDs...
>>
>> This is about selecting which PHY to use. Internal or External?	
>>
>>      Andrew
> 
> It is too late when we know the PHY ID.

> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

Since the Device Tree needs to be correct to identify which PHY to use
(internal or external), if you use the standard compatible string for
the PHY that contains its OUI, e.g:

compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"

then you can have your Ethernet MAC identify whether this is an internal
PHY by having a list of compatible strings to match against.

Corentin, can you make sure you copy netdev, Andrew and myself on the
next submissions so we don't have to keep track of seemingly identical
threads (this one + the rockchip dwmac changes) and we can work towards
one solution?

Thanks
-- 
Florian

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 17:54           ` Florian Fainelli
  0 siblings, 0 replies; 56+ messages in thread
From: Florian Fainelli @ 2017-07-28 17:54 UTC (permalink / raw)
  To: Corentin Labbe, Andrew Lunn
  Cc: robh+dt-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>>>> I've probably asked this before: Does the internal PHY use a different
>>>> PHY ID in registers 2 and 3?
>>>>
>>>
>>> yes
>>>
>>> reg2: 0x0044
>>> reg3: 0X1500
> 
> Copy/paste error, its 1400
> 
>>
>> So this is not about loading the correct PHY driver. You can already
>> do this based on the PHY IDs...
>>
>> This is about selecting which PHY to use. Internal or External?	
>>
>>      Andrew
> 
> It is too late when we know the PHY ID.

> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

Since the Device Tree needs to be correct to identify which PHY to use
(internal or external), if you use the standard compatible string for
the PHY that contains its OUI, e.g:

compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"

then you can have your Ethernet MAC identify whether this is an internal
PHY by having a list of compatible strings to match against.

Corentin, can you make sure you copy netdev, Andrew and myself on the
next submissions so we don't have to keep track of seemingly identical
threads (this one + the rockchip dwmac changes) and we can work towards
one solution?

Thanks
-- 
Florian
--
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

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-28 17:54           ` Florian Fainelli
  0 siblings, 0 replies; 56+ messages in thread
From: Florian Fainelli @ 2017-07-28 17:54 UTC (permalink / raw)
  To: linux-arm-kernel

On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>>>> I've probably asked this before: Does the internal PHY use a different
>>>> PHY ID in registers 2 and 3?
>>>>
>>>
>>> yes
>>>
>>> reg2: 0x0044
>>> reg3: 0X1500
> 
> Copy/paste error, its 1400
> 
>>
>> So this is not about loading the correct PHY driver. You can already
>> do this based on the PHY IDs...
>>
>> This is about selecting which PHY to use. Internal or External?	
>>
>>      Andrew
> 
> It is too late when we know the PHY ID.

> We need to set a syscon for choosing external/internal PHY.
> So we can rely only on DT.

Since the Device Tree needs to be correct to identify which PHY to use
(internal or external), if you use the standard compatible string for
the PHY that contains its OUI, e.g:

compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"

then you can have your Ethernet MAC identify whether this is an internal
PHY by having a list of compatible strings to match against.

Corentin, can you make sure you copy netdev, Andrew and myself on the
next submissions so we don't have to keep track of seemingly identical
threads (this one + the rockchip dwmac changes) and we can work towards
one solution?

Thanks
-- 
Florian

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-29  6:48             ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-29  6:48 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Andrew Lunn, robh+dt, mark.rutland, maxime.ripard, wens, linux,
	peppe.cavallaro, alexandre.torgue, devicetree, netdev,
	linux-kernel, linux-sunxi, linux-arm-kernel, icenowy

On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >>>> I've probably asked this before: Does the internal PHY use a different
> >>>> PHY ID in registers 2 and 3?
> >>>>
> >>>
> >>> yes
> >>>
> >>> reg2: 0x0044
> >>> reg3: 0X1500
> > 
> > Copy/paste error, its 1400
> > 
> >>
> >> So this is not about loading the correct PHY driver. You can already
> >> do this based on the PHY IDs...
> >>
> >> This is about selecting which PHY to use. Internal or External?	
> >>
> >>      Andrew
> > 
> > It is too late when we know the PHY ID.
> 
> > We need to set a syscon for choosing external/internal PHY.
> > So we can rely only on DT.
> 
> Since the Device Tree needs to be correct to identify which PHY to use
> (internal or external), if you use the standard compatible string for
> the PHY that contains its OUI, e.g:
> 
> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> 
> then you can have your Ethernet MAC identify whether this is an internal
> PHY by having a list of compatible strings to match against.

So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

> 
> Corentin, can you make sure you copy netdev, Andrew and myself on the
> next submissions so we don't have to keep track of seemingly identical
> threads (this one + the rockchip dwmac changes) and we can work towards
> one solution?

Ok

Thanks
Corentin Labbe

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-29  6:48             ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-29  6:48 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Andrew Lunn, robh+dt-DgEjT+Ai2ygdnm+yROfE0A,
	mark.rutland-5wv7dgnIgG8,
	maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8, wens-jdAy2FN1RRM,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw, peppe.cavallaro-qxv4g6HH51o,
	alexandre.torgue-qxv4g6HH51o, devicetree-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linux-sunxi-/JYPxA39Uh5TLH3MbocFFw,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	icenowy-h8G6r0blFSE

On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >>>> I've probably asked this before: Does the internal PHY use a different
> >>>> PHY ID in registers 2 and 3?
> >>>>
> >>>
> >>> yes
> >>>
> >>> reg2: 0x0044
> >>> reg3: 0X1500
> > 
> > Copy/paste error, its 1400
> > 
> >>
> >> So this is not about loading the correct PHY driver. You can already
> >> do this based on the PHY IDs...
> >>
> >> This is about selecting which PHY to use. Internal or External?	
> >>
> >>      Andrew
> > 
> > It is too late when we know the PHY ID.
> 
> > We need to set a syscon for choosing external/internal PHY.
> > So we can rely only on DT.
> 
> Since the Device Tree needs to be correct to identify which PHY to use
> (internal or external), if you use the standard compatible string for
> the PHY that contains its OUI, e.g:
> 
> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> 
> then you can have your Ethernet MAC identify whether this is an internal
> PHY by having a list of compatible strings to match against.

So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

> 
> Corentin, can you make sure you copy netdev, Andrew and myself on the
> next submissions so we don't have to keep track of seemingly identical
> threads (this one + the rockchip dwmac changes) and we can work towards
> one solution?

Ok

Thanks
Corentin Labbe
--
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

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-29  6:48             ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-29  6:48 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >>>> I've probably asked this before: Does the internal PHY use a different
> >>>> PHY ID in registers 2 and 3?
> >>>>
> >>>
> >>> yes
> >>>
> >>> reg2: 0x0044
> >>> reg3: 0X1500
> > 
> > Copy/paste error, its 1400
> > 
> >>
> >> So this is not about loading the correct PHY driver. You can already
> >> do this based on the PHY IDs...
> >>
> >> This is about selecting which PHY to use. Internal or External?	
> >>
> >>      Andrew
> > 
> > It is too late when we know the PHY ID.
> 
> > We need to set a syscon for choosing external/internal PHY.
> > So we can rely only on DT.
> 
> Since the Device Tree needs to be correct to identify which PHY to use
> (internal or external), if you use the standard compatible string for
> the PHY that contains its OUI, e.g:
> 
> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> 
> then you can have your Ethernet MAC identify whether this is an internal
> PHY by having a list of compatible strings to match against.

So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

> 
> Corentin, can you make sure you copy netdev, Andrew and myself on the
> next submissions so we don't have to keep track of seemingly identical
> threads (this one + the rockchip dwmac changes) and we can work towards
> one solution?

Ok

Thanks
Corentin Labbe

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
  2017-07-29  6:48             ` Corentin Labbe
  (?)
@ 2017-07-31 12:19               ` Chen-Yu Tsai
  -1 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-31 12:19 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Florian Fainelli, Andrew Lunn, Rob Herring, Mark Rutland,
	Maxime Ripard, Chen-Yu Tsai, Russell King, Giuseppe Cavallaro,
	alexandre.torgue, devicetree, netdev, linux-kernel, linux-sunxi,
	linux-arm-kernel, Icenowy Zheng

On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
>> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
>> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>> >>>> I've probably asked this before: Does the internal PHY use a different
>> >>>> PHY ID in registers 2 and 3?
>> >>>>
>> >>>
>> >>> yes
>> >>>
>> >>> reg2: 0x0044
>> >>> reg3: 0X1500
>> >
>> > Copy/paste error, its 1400
>> >
>> >>
>> >> So this is not about loading the correct PHY driver. You can already
>> >> do this based on the PHY IDs...
>> >>
>> >> This is about selecting which PHY to use. Internal or External?
>> >>
>> >>      Andrew
>> >
>> > It is too late when we know the PHY ID.
>>
>> > We need to set a syscon for choosing external/internal PHY.
>> > So we can rely only on DT.
>>
>> Since the Device Tree needs to be correct to identify which PHY to use
>> (internal or external), if you use the standard compatible string for
>> the PHY that contains its OUI, e.g:
>>
>> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
>>
>> then you can have your Ethernet MAC identify whether this is an internal
>> PHY by having a list of compatible strings to match against.
>
> So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
Do you remember if this is true?

If someone were crazy enough to hook that up to the H3, then we still
wouldn't be able to tell if it's the internal or external one.

ChenYu

>
>>
>> Corentin, can you make sure you copy netdev, Andrew and myself on the
>> next submissions so we don't have to keep track of seemingly identical
>> threads (this one + the rockchip dwmac changes) and we can work towards
>> one solution?
>
> Ok
>
> Thanks
> Corentin Labbe

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-31 12:19               ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-31 12:19 UTC (permalink / raw)
  To: Corentin Labbe
  Cc: Florian Fainelli, Andrew Lunn, Rob Herring, Mark Rutland,
	Maxime Ripard, Chen-Yu Tsai, Russell King, Giuseppe Cavallaro,
	alexandre.torgue-qxv4g6HH51o, devicetree, netdev, linux-kernel,
	linux-sunxi, linux-arm-kernel, Icenowy Zheng

On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
<clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
>> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
>> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>> >>>> I've probably asked this before: Does the internal PHY use a different
>> >>>> PHY ID in registers 2 and 3?
>> >>>>
>> >>>
>> >>> yes
>> >>>
>> >>> reg2: 0x0044
>> >>> reg3: 0X1500
>> >
>> > Copy/paste error, its 1400
>> >
>> >>
>> >> So this is not about loading the correct PHY driver. You can already
>> >> do this based on the PHY IDs...
>> >>
>> >> This is about selecting which PHY to use. Internal or External?
>> >>
>> >>      Andrew
>> >
>> > It is too late when we know the PHY ID.
>>
>> > We need to set a syscon for choosing external/internal PHY.
>> > So we can rely only on DT.
>>
>> Since the Device Tree needs to be correct to identify which PHY to use
>> (internal or external), if you use the standard compatible string for
>> the PHY that contains its OUI, e.g:
>>
>> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
>>
>> then you can have your Ethernet MAC identify whether this is an internal
>> PHY by having a list of compatible strings to match against.
>
> So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
Do you remember if this is true?

If someone were crazy enough to hook that up to the H3, then we still
wouldn't be able to tell if it's the internal or external one.

ChenYu

>
>>
>> Corentin, can you make sure you copy netdev, Andrew and myself on the
>> next submissions so we don't have to keep track of seemingly identical
>> threads (this one + the rockchip dwmac changes) and we can work towards
>> one solution?
>
> Ok
>
> Thanks
> Corentin Labbe
--
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

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-31 12:19               ` Chen-Yu Tsai
  0 siblings, 0 replies; 56+ messages in thread
From: Chen-Yu Tsai @ 2017-07-31 12:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
<clabbe.montjoie@gmail.com> wrote:
> On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
>> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
>> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
>> >>>> I've probably asked this before: Does the internal PHY use a different
>> >>>> PHY ID in registers 2 and 3?
>> >>>>
>> >>>
>> >>> yes
>> >>>
>> >>> reg2: 0x0044
>> >>> reg3: 0X1500
>> >
>> > Copy/paste error, its 1400
>> >
>> >>
>> >> So this is not about loading the correct PHY driver. You can already
>> >> do this based on the PHY IDs...
>> >>
>> >> This is about selecting which PHY to use. Internal or External?
>> >>
>> >>      Andrew
>> >
>> > It is too late when we know the PHY ID.
>>
>> > We need to set a syscon for choosing external/internal PHY.
>> > So we can rely only on DT.
>>
>> Since the Device Tree needs to be correct to identify which PHY to use
>> (internal or external), if you use the standard compatible string for
>> the PHY that contains its OUI, e.g:
>>
>> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
>>
>> then you can have your Ethernet MAC identify whether this is an internal
>> PHY by having a list of compatible strings to match against.
>
> So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?

IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
Do you remember if this is true?

If someone were crazy enough to hook that up to the H3, then we still
wouldn't be able to tell if it's the internal or external one.

ChenYu

>
>>
>> Corentin, can you make sure you copy netdev, Andrew and myself on the
>> next submissions so we don't have to keep track of seemingly identical
>> threads (this one + the rockchip dwmac changes) and we can work towards
>> one solution?
>
> Ok
>
> Thanks
> Corentin Labbe

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-31 12:26                 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-31 12:26 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Florian Fainelli, Andrew Lunn, Rob Herring, Mark Rutland,
	Maxime Ripard, Russell King, Giuseppe Cavallaro,
	alexandre.torgue, devicetree, netdev, linux-kernel, linux-sunxi,
	linux-arm-kernel, Icenowy Zheng

On Mon, Jul 31, 2017 at 08:19:40PM +0800, Chen-Yu Tsai wrote:
> On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> >> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> >> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >> >>>> I've probably asked this before: Does the internal PHY use a different
> >> >>>> PHY ID in registers 2 and 3?
> >> >>>>
> >> >>>
> >> >>> yes
> >> >>>
> >> >>> reg2: 0x0044
> >> >>> reg3: 0X1500
> >> >
> >> > Copy/paste error, its 1400
> >> >
> >> >>
> >> >> So this is not about loading the correct PHY driver. You can already
> >> >> do this based on the PHY IDs...
> >> >>
> >> >> This is about selecting which PHY to use. Internal or External?
> >> >>
> >> >>      Andrew
> >> >
> >> > It is too late when we know the PHY ID.
> >>
> >> > We need to set a syscon for choosing external/internal PHY.
> >> > So we can rely only on DT.
> >>
> >> Since the Device Tree needs to be correct to identify which PHY to use
> >> (internal or external), if you use the standard compatible string for
> >> the PHY that contains its OUI, e.g:
> >>
> >> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> >>
> >> then you can have your Ethernet MAC identify whether this is an internal
> >> PHY by having a list of compatible strings to match against.
> >
> > So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?
> 
> IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
> Do you remember if this is true?

Yes it's certainly a AC200 PHY in the H3.

> 
> If someone were crazy enough to hook that up to the H3, then we still
> wouldn't be able to tell if it's the internal or external one.
> 

Why someone would put the same external PHY than the internal one ?
Yeah its totally crazy and I think we are safe by saying "it's not supported".

Regards

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

* Re: [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-31 12:26                 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-31 12:26 UTC (permalink / raw)
  To: Chen-Yu Tsai
  Cc: Florian Fainelli, Andrew Lunn, Rob Herring, Mark Rutland,
	Maxime Ripard, Russell King, Giuseppe Cavallaro,
	alexandre.torgue-qxv4g6HH51o, devicetree, netdev, linux-kernel,
	linux-sunxi, linux-arm-kernel, Icenowy Zheng

On Mon, Jul 31, 2017 at 08:19:40PM +0800, Chen-Yu Tsai wrote:
> On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
> <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> > On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> >> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> >> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >> >>>> I've probably asked this before: Does the internal PHY use a different
> >> >>>> PHY ID in registers 2 and 3?
> >> >>>>
> >> >>>
> >> >>> yes
> >> >>>
> >> >>> reg2: 0x0044
> >> >>> reg3: 0X1500
> >> >
> >> > Copy/paste error, its 1400
> >> >
> >> >>
> >> >> So this is not about loading the correct PHY driver. You can already
> >> >> do this based on the PHY IDs...
> >> >>
> >> >> This is about selecting which PHY to use. Internal or External?
> >> >>
> >> >>      Andrew
> >> >
> >> > It is too late when we know the PHY ID.
> >>
> >> > We need to set a syscon for choosing external/internal PHY.
> >> > So we can rely only on DT.
> >>
> >> Since the Device Tree needs to be correct to identify which PHY to use
> >> (internal or external), if you use the standard compatible string for
> >> the PHY that contains its OUI, e.g:
> >>
> >> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> >>
> >> then you can have your Ethernet MAC identify whether this is an internal
> >> PHY by having a list of compatible strings to match against.
> >
> > So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?
> 
> IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
> Do you remember if this is true?

Yes it's certainly a AC200 PHY in the H3.

> 
> If someone were crazy enough to hook that up to the H3, then we still
> wouldn't be able to tell if it's the internal or external one.
> 

Why someone would put the same external PHY than the internal one ?
Yeah its totally crazy and I think we are safe by saying "it's not supported".

Regards

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

* [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode
@ 2017-07-31 12:26                 ` Corentin Labbe
  0 siblings, 0 replies; 56+ messages in thread
From: Corentin Labbe @ 2017-07-31 12:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jul 31, 2017 at 08:19:40PM +0800, Chen-Yu Tsai wrote:
> On Sat, Jul 29, 2017 at 2:48 PM, Corentin Labbe
> <clabbe.montjoie@gmail.com> wrote:
> > On Fri, Jul 28, 2017 at 10:54:30AM -0700, Florian Fainelli wrote:
> >> On 07/28/2017 07:44 AM, Corentin Labbe wrote:
> >> > On Fri, Jul 28, 2017 at 04:36:00PM +0200, Andrew Lunn wrote:
> >> >>>> I've probably asked this before: Does the internal PHY use a different
> >> >>>> PHY ID in registers 2 and 3?
> >> >>>>
> >> >>>
> >> >>> yes
> >> >>>
> >> >>> reg2: 0x0044
> >> >>> reg3: 0X1500
> >> >
> >> > Copy/paste error, its 1400
> >> >
> >> >>
> >> >> So this is not about loading the correct PHY driver. You can already
> >> >> do this based on the PHY IDs...
> >> >>
> >> >> This is about selecting which PHY to use. Internal or External?
> >> >>
> >> >>      Andrew
> >> >
> >> > It is too late when we know the PHY ID.
> >>
> >> > We need to set a syscon for choosing external/internal PHY.
> >> > So we can rely only on DT.
> >>
> >> Since the Device Tree needs to be correct to identify which PHY to use
> >> (internal or external), if you use the standard compatible string for
> >> the PHY that contains its OUI, e.g:
> >>
> >> compatible = "ethernet-phy-id0044.1400", "ethernet-phy-ieee802.3-c22"
> >>
> >> then you can have your Ethernet MAC identify whether this is an internal
> >> PHY by having a list of compatible strings to match against.
> >
> > So basicly, I replace sun8i-h3-ephy by ethernet-phy-id0044.1400 and it is good ?
> 
> IIRC you mentioned some time ago the PHY in the AC200 also has this ID?
> Do you remember if this is true?

Yes it's certainly a AC200 PHY in the H3.

> 
> If someone were crazy enough to hook that up to the H3, then we still
> wouldn't be able to tell if it's the internal or external one.
> 

Why someone would put the same external PHY than the internal one ?
Yeah its totally crazy and I think we are safe by saying "it's not supported".

Regards

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

end of thread, other threads:[~2017-07-31 12:26 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-28  9:28 [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode Corentin Labbe
2017-07-28  9:28 ` Corentin Labbe
2017-07-28  9:28 ` Corentin Labbe
2017-07-28  9:28 ` [PATCH 1/3] dt-bindings: net: add compatible for internal sun8i-h3/sun8i-v3s PHYs Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:28 ` [PATCH 2/3] ARM: sunxi: h3/h5: Add sun8i-h3-ephy compatible Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:44   ` Chen-Yu Tsai
2017-07-28  9:44     ` Chen-Yu Tsai
2017-07-28  9:46     ` Icenowy Zheng
2017-07-28  9:46       ` Icenowy Zheng
2017-07-28  9:46       ` Icenowy Zheng
2017-07-28  9:28 ` [PATCH 3/3] net-next: stmmac: dwmac-sun8i: choose internal PHY via compatible Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:28   ` Corentin Labbe
2017-07-28  9:49   ` Chen-Yu Tsai
2017-07-28  9:49     ` Chen-Yu Tsai
2017-07-28  9:49     ` Chen-Yu Tsai
2017-07-28  9:54     ` Corentin Labbe
2017-07-28  9:54       ` Corentin Labbe
2017-07-28  9:54       ` Corentin Labbe
2017-07-28  9:53 ` [PATCH 0/3] net-next: stmmac: support future possible different internal phy mode Chen-Yu Tsai
2017-07-28  9:53   ` Chen-Yu Tsai
2017-07-28  9:53   ` Chen-Yu Tsai
2017-07-28 13:47   ` Andrew Lunn
2017-07-28 13:47     ` Andrew Lunn
2017-07-28 13:47     ` Andrew Lunn
2017-07-28 13:55 ` Andrew Lunn
2017-07-28 13:55   ` Andrew Lunn
2017-07-28 13:55   ` Andrew Lunn
2017-07-28 14:25   ` Corentin Labbe
2017-07-28 14:25     ` Corentin Labbe
2017-07-28 14:25     ` Corentin Labbe
2017-07-28 14:36     ` Andrew Lunn
2017-07-28 14:36       ` Andrew Lunn
2017-07-28 14:36       ` Andrew Lunn
2017-07-28 14:44       ` Corentin Labbe
2017-07-28 14:44         ` Corentin Labbe
2017-07-28 14:44         ` Corentin Labbe
2017-07-28 14:51         ` Andrew Lunn
2017-07-28 14:51           ` Andrew Lunn
2017-07-28 14:51           ` Andrew Lunn
2017-07-28 17:54         ` Florian Fainelli
2017-07-28 17:54           ` Florian Fainelli
2017-07-28 17:54           ` Florian Fainelli
2017-07-29  6:48           ` Corentin Labbe
2017-07-29  6:48             ` Corentin Labbe
2017-07-29  6:48             ` Corentin Labbe
2017-07-31 12:19             ` Chen-Yu Tsai
2017-07-31 12:19               ` Chen-Yu Tsai
2017-07-31 12:19               ` Chen-Yu Tsai
2017-07-31 12:26               ` Corentin Labbe
2017-07-31 12:26                 ` Corentin Labbe
2017-07-31 12:26                 ` Corentin Labbe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.