[PATCH] net: phy: micrel: make *-skew-ps check more lenient

Subsystems: ethernet phy library, networking drivers, the rest

STALE1766d LANDED

Landed in mainline as 67ca5159dbe2 on 2021-10-15.

6 messages, 3 authors, 2021-10-15 · open the first message on its own page

[PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: Matthias Schiffer <hidden>
Date: 2021-10-12 10:34:41

It seems reasonable to fine-tune only some of the skew values when using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the driver
should not warn about it.

Signed-off-by: Matthias Schiffer <redacted>
---
 drivers/net/phy/micrel.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index c330a5a9f665..03e58ebf68af 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -863,9 +863,9 @@ static int ksz9031_config_init(struct phy_device *phydev)
 				MII_KSZ9031RN_TX_DATA_PAD_SKEW, 4,
 				tx_data_skews, 4, &update);
 
-		if (update && phydev->interface != PHY_INTERFACE_MODE_RGMII)
+		if (update && !phy_interface_is_rgmii(phydev))
 			phydev_warn(phydev,
-				    "*-skew-ps values should be used only with phy-mode = \"rgmii\"\n");
+				    "*-skew-ps values should be used only with RGMII PHY modes\n");
 
 		/* Silicon Errata Sheet (DS80000691D or DS80000692D):
 		 * When the device links in the 1000BASE-T slave mode only,
-- 
2.17.1

Re: [PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: Philippe Schenker <hidden>
Date: 2021-10-13 08:26:00

On Tue, 2021-10-12 at 12:34 +0200, Matthias Schiffer wrote:
It seems reasonable to fine-tune only some of the skew values when
using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the
driver
should not warn about it.
I don't think your commit message is right. The rgmii-*id PHY modes are
no longer just for documentation purposes on KSZ9031 PHY. They are used
to set the skew-registers according to .

The warning is there, that in case you override the skew registers of
one of the modes rgmii-id, rgmii-txid, rgmii-rxid with *-skew-ps
settings in DT.

Therefore I also think the warning is valuable and should be kept. We
may want to reword it though.

Philippe
quoted hunk
Signed-off-by: Matthias Schiffer <redacted>
---
 drivers/net/phy/micrel.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index c330a5a9f665..03e58ebf68af 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -863,9 +863,9 @@ static int ksz9031_config_init(struct phy_device
*phydev)
                                MII_KSZ9031RN_TX_DATA_PAD_SKEW, 4,
                                tx_data_skews, 4, &update);
 
-               if (update && phydev->interface !=
PHY_INTERFACE_MODE_RGMII)
+               if (update && !phy_interface_is_rgmii(phydev))
                        phydev_warn(phydev,
-                                   "*-skew-ps values should be used
only with phy-mode = \"rgmii\"\n");
+                                   "*-skew-ps values should be used
only with RGMII PHY modes\n");
 
                /* Silicon Errata Sheet (DS80000691D or DS80000692D):
                 * When the device links in the 1000BASE-T slave mode
only,

Re: [PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: Matthias Schiffer <hidden>
Date: 2021-10-13 08:46:31

On Wed, 2021-10-13 at 08:25 +0000, Philippe Schenker wrote:
On Tue, 2021-10-12 at 12:34 +0200, Matthias Schiffer wrote:
quoted
It seems reasonable to fine-tune only some of the skew values when
using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the
driver
should not warn about it.
I don't think your commit message is right. The rgmii-*id PHY modes are
no longer just for documentation purposes on KSZ9031 PHY. They are used
to set the skew-registers according to .
Yes, this was implemented in [1]. The commit message explicitly states
that fine-tuning is still possible using *-skew-ps.
The warning is there, that in case you override the skew registers of
one of the modes rgmii-id, rgmii-txid, rgmii-rxid with *-skew-ps
settings in DT.
The "rgmii" mode should not be handled differently from "rgmii-*id" in
my opinion. Otherwise for a device that is basically "rgmii-id", but
requires slight fine-tuning, you have to set the mode to the incorrect
value "rgmii" in the DTS to avoid this warning.

Therefore I also think the warning is valuable and should be kept. We
may want to reword it though.

Philippe
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/net/phy/micrel.c?id=bcf3440c6dd78bfe5836ec0990fe36d7b4bb7d20

quoted
Signed-off-by: Matthias Schiffer <redacted>
---
 drivers/net/phy/micrel.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index c330a5a9f665..03e58ebf68af 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -863,9 +863,9 @@ static int ksz9031_config_init(struct phy_device
*phydev)
                                MII_KSZ9031RN_TX_DATA_PAD_SKEW, 4,
                                tx_data_skews, 4, &update);
 
-               if (update && phydev->interface !=
PHY_INTERFACE_MODE_RGMII)
+               if (update && !phy_interface_is_rgmii(phydev))
                        phydev_warn(phydev,
-                                   "*-skew-ps values should be used
only with phy-mode = \"rgmii\"\n");
+                                   "*-skew-ps values should be used
only with RGMII PHY modes\n");
 
                /* Silicon Errata Sheet (DS80000691D or DS80000692D):
                 * When the device links in the 1000BASE-T slave mode
only,

Re: [PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: Philippe Schenker <hidden>
Date: 2021-10-13 10:19:13

On Wed, 2021-10-13 at 10:46 +0200, Matthias Schiffer wrote:
On Wed, 2021-10-13 at 08:25 +0000, Philippe Schenker wrote:
quoted
On Tue, 2021-10-12 at 12:34 +0200, Matthias Schiffer wrote:
quoted
It seems reasonable to fine-tune only some of the skew values when
using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for
documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the
driver
should not warn about it.
I don't think your commit message is right. The rgmii-*id PHY modes
are
no longer just for documentation purposes on KSZ9031 PHY. They are
used
to set the skew-registers according to .
Yes, this was implemented in [1]. The commit message explicitly states
that fine-tuning is still possible using *-skew-ps.
quoted
The warning is there, that in case you override the skew registers
of
one of the modes rgmii-id, rgmii-txid, rgmii-rxid with *-skew-ps
settings in DT.
The "rgmii" mode should not be handled differently from "rgmii-*id" in
my opinion. Otherwise for a device that is basically "rgmii-id", but
requires slight fine-tuning, you have to set the mode to the incorrect
value "rgmii" in the DTS to avoid this warning.
Now I have understood your argument. But then I suggest to delete the
warning entirely as it completely changes its meaning with that patch.

Philippe
quoted
Therefore I also think the warning is valuable and should be kept.
We
may want to reword it though.

Philippe
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/net/phy/micrel.c?id=bcf3440c6dd78bfe5836ec0990fe36d7b4bb7d20

quoted
quoted
Signed-off-by: Matthias Schiffer
[off-list ref]
---
 drivers/net/phy/micrel.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index c330a5a9f665..03e58ebf68af 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -863,9 +863,9 @@ static int ksz9031_config_init(struct
phy_device
*phydev)
                                MII_KSZ9031RN_TX_DATA_PAD_SKEW, 4,
                                tx_data_skews, 4, &update);
 
-               if (update && phydev->interface !=
PHY_INTERFACE_MODE_RGMII)
+               if (update && !phy_interface_is_rgmii(phydev))
                        phydev_warn(phydev,
-                                   "*-skew-ps values should be
used
only with phy-mode = \"rgmii\"\n");
+                                   "*-skew-ps values should be
used
only with RGMII PHY modes\n");
 
                /* Silicon Errata Sheet (DS80000691D or
DS80000692D):
                 * When the device links in the 1000BASE-T slave
mode
only,

Re: [PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: Matthias Schiffer <hidden>
Date: 2021-10-13 11:01:46

On Wed, 2021-10-13 at 10:18 +0000, Philippe Schenker wrote:
On Wed, 2021-10-13 at 10:46 +0200, Matthias Schiffer wrote:
quoted
On Wed, 2021-10-13 at 08:25 +0000, Philippe Schenker wrote:
quoted
On Tue, 2021-10-12 at 12:34 +0200, Matthias Schiffer wrote:
quoted
It seems reasonable to fine-tune only some of the skew values when
using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for
documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the
driver
should not warn about it.
I don't think your commit message is right. The rgmii-*id PHY modes
are
no longer just for documentation purposes on KSZ9031 PHY. They are
used
to set the skew-registers according to .
Yes, this was implemented in [1]. The commit message explicitly states
that fine-tuning is still possible using *-skew-ps.
quoted
The warning is there, that in case you override the skew registers
of
one of the modes rgmii-id, rgmii-txid, rgmii-rxid with *-skew-ps
settings in DT.
The "rgmii" mode should not be handled differently from "rgmii-*id" in
my opinion. Otherwise for a device that is basically "rgmii-id", but
requires slight fine-tuning, you have to set the mode to the incorrect
value "rgmii" in the DTS to avoid this warning.
Now I have understood your argument. But then I suggest to delete the
warning entirely as it completely changes its meaning with that patch.

Philippe
The KSZ9031 also supports MII and GMII though. I think it makes sense
to keep the warning for these cases (which is why I reworded the
warning the way I did).

quoted
quoted
Therefore I also think the warning is valuable and should be kept.
We
may want to reword it though.

Philippe
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/net/phy/micrel.c?id=bcf3440c6dd78bfe5836ec0990fe36d7b4bb7d20

quoted
quoted
Signed-off-by: Matthias Schiffer
[off-list ref]
---
 drivers/net/phy/micrel.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index c330a5a9f665..03e58ebf68af 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -863,9 +863,9 @@ static int ksz9031_config_init(struct
phy_device
*phydev)
                                MII_KSZ9031RN_TX_DATA_PAD_SKEW, 4,
                                tx_data_skews, 4, &update);
 
-               if (update && phydev->interface !=
PHY_INTERFACE_MODE_RGMII)
+               if (update && !phy_interface_is_rgmii(phydev))
                        phydev_warn(phydev,
-                                   "*-skew-ps values should be
used
only with phy-mode = \"rgmii\"\n");
+                                   "*-skew-ps values should be
used
only with RGMII PHY modes\n");
 
                /* Silicon Errata Sheet (DS80000691D or
DS80000692D):
                 * When the device links in the 1000BASE-T slave
mode
only,

Re: [PATCH] net: phy: micrel: make *-skew-ps check more lenient

From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-10-15 02:20:11

Hello:

This patch was applied to netdev/net-next.git (master)
by Jakub Kicinski [off-list ref]:

On Tue, 12 Oct 2021 12:34:02 +0200 you wrote:
It seems reasonable to fine-tune only some of the skew values when using
one of the rgmii-*id PHY modes, and even when all skew values are
specified, using the correct ID PHY mode makes sense for documentation
purposes. Such a configuration also appears in the binding docs in
Documentation/devicetree/bindings/net/micrel-ksz90x1.txt, so the driver
should not warn about it.

[...]
Here is the summary with links:
  - net: phy: micrel: make *-skew-ps check more lenient
    https://git.kernel.org/netdev/net-next/c/67ca5159dbe2

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help