netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021
@ 2019-09-26  7:54 Hans Andersson
  2019-09-26 12:09 ` Andrew Lunn
  2019-09-27 18:29 ` [PATCH] " David Miller
  0 siblings, 2 replies; 5+ messages in thread
From: Hans Andersson @ 2019-09-26  7:54 UTC (permalink / raw)
  To: andrew
  Cc: f.fainelli, hkallweit1, davem, netdev, linux-kernel,
	antoine.tenart, Hans Andersson

From: Hans Andersson <hans.andersson@cellavision.se>

The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
Pause capability is set. This issue is described in a Silicon Errata
(DS80000691D or DS80000692D), which advises to always disable the
capability.

Micrel KSZ9021 has no errata, but has the same issue with Asymmetric Pause.
This patch apply the same workaround as the one for KSZ9031.

Signed-off-by: Hans Andersson <hans.andersson@cellavision.se>
---
 drivers/net/phy/micrel.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index 3c8186f..2fea554 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -763,6 +763,8 @@ static int ksz9031_get_features(struct phy_device *phydev)
 	 * Whenever the device's Asymmetric Pause capability is set to 1,
 	 * link-up may fail after a link-up to link-down transition.
 	 *
+	 * The Errata Sheet is for ksz9031, but ksz9021 has the same issue
+	 *
 	 * Workaround:
 	 * Do not enable the Asymmetric Pause capability bit.
 	 */
@@ -1076,6 +1078,7 @@ static struct phy_driver ksphy_driver[] = {
 	/* PHY_GBIT_FEATURES */
 	.driver_data	= &ksz9021_type,
 	.probe		= kszphy_probe,
+	.get_features	= ksz9031_get_features,
 	.config_init	= ksz9021_config_init,
 	.ack_interrupt	= kszphy_ack_interrupt,
 	.config_intr	= kszphy_config_intr,
-- 
2.17.1


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

* Re: [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021
  2019-09-26  7:54 [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021 Hans Andersson
@ 2019-09-26 12:09 ` Andrew Lunn
  2019-09-27  7:58   ` [PATCH v2] " Hans Andersson
  2019-09-27 18:29 ` [PATCH] " David Miller
  1 sibling, 1 reply; 5+ messages in thread
From: Andrew Lunn @ 2019-09-26 12:09 UTC (permalink / raw)
  To: Hans Andersson
  Cc: f.fainelli, hkallweit1, davem, netdev, linux-kernel,
	antoine.tenart, Hans Andersson

On Thu, Sep 26, 2019 at 09:54:37AM +0200, Hans Andersson wrote:
> From: Hans Andersson <hans.andersson@cellavision.se>
> 
> The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
> Pause capability is set. This issue is described in a Silicon Errata
> (DS80000691D or DS80000692D), which advises to always disable the
> capability.
> 
> Micrel KSZ9021 has no errata, but has the same issue with Asymmetric Pause.
> This patch apply the same workaround as the one for KSZ9031.
> 
> Signed-off-by: Hans Andersson <hans.andersson@cellavision.se>

Fixes: 3aed3e2a143c ("net: phy: micrel: add Asym Pause workaround")

This is not the best fixes: tag, since it was not that change which
broke it. But going further back will be hard.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew

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

* [PATCH v2] net: phy: micrel: add Asym Pause workaround for KSZ9021
  2019-09-26 12:09 ` Andrew Lunn
@ 2019-09-27  7:58   ` Hans Andersson
  2019-09-27 18:22     ` Florian Fainelli
  0 siblings, 1 reply; 5+ messages in thread
From: Hans Andersson @ 2019-09-27  7:58 UTC (permalink / raw)
  To: andrew
  Cc: f.fainelli, hkallweit1, davem, netdev, linux-kernel,
	antoine.tenart, Hans Andersson

From: Hans Andersson <hans.andersson@cellavision.se>

The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
Pause capability is set. This issue is described in a Silicon Errata
(DS80000691D or DS80000692D), which advises to always disable the
capability.

Micrel KSZ9021 has no errata, but has the same issue with Asymmetric Pause.
This patch apply the same workaround as the one for KSZ9031.

Fixes: 3aed3e2a143c ("net: phy: micrel: add Asym Pause workaround")
Signed-off-by: Hans Andersson <hans.andersson@cellavision.se>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
---
 drivers/net/phy/micrel.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index 3c8186f269f9..2fea5541c35a 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -763,6 +763,8 @@ static int ksz9031_get_features(struct phy_device *phydev)
 	 * Whenever the device's Asymmetric Pause capability is set to 1,
 	 * link-up may fail after a link-up to link-down transition.
 	 *
+	 * The Errata Sheet is for ksz9031, but ksz9021 has the same issue
+	 *
 	 * Workaround:
 	 * Do not enable the Asymmetric Pause capability bit.
 	 */
@@ -1076,6 +1078,7 @@ static struct phy_driver ksphy_driver[] = {
 	/* PHY_GBIT_FEATURES */
 	.driver_data	= &ksz9021_type,
 	.probe		= kszphy_probe,
+	.get_features	= ksz9031_get_features,
 	.config_init	= ksz9021_config_init,
 	.ack_interrupt	= kszphy_ack_interrupt,
 	.config_intr	= kszphy_config_intr,
-- 
2.21.0.windows.1


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

* Re: [PATCH v2] net: phy: micrel: add Asym Pause workaround for KSZ9021
  2019-09-27  7:58   ` [PATCH v2] " Hans Andersson
@ 2019-09-27 18:22     ` Florian Fainelli
  0 siblings, 0 replies; 5+ messages in thread
From: Florian Fainelli @ 2019-09-27 18:22 UTC (permalink / raw)
  To: Hans Andersson, andrew
  Cc: hkallweit1, davem, netdev, linux-kernel, antoine.tenart, Hans Andersson

On 9/27/19 12:58 AM, Hans Andersson wrote:
> From: Hans Andersson <hans.andersson@cellavision.se>
> 
> The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
> Pause capability is set. This issue is described in a Silicon Errata
> (DS80000691D or DS80000692D), which advises to always disable the
> capability.
> 
> Micrel KSZ9021 has no errata, but has the same issue with Asymmetric Pause.
> This patch apply the same workaround as the one for KSZ9031.
> 
> Fixes: 3aed3e2a143c ("net: phy: micrel: add Asym Pause workaround")
> Signed-off-by: Hans Andersson <hans.andersson@cellavision.se>
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>

Reviewed-by: Florian Fainelli <f.fainellI@gmail.com>
-- 
Florian

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

* Re: [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021
  2019-09-26  7:54 [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021 Hans Andersson
  2019-09-26 12:09 ` Andrew Lunn
@ 2019-09-27 18:29 ` David Miller
  1 sibling, 0 replies; 5+ messages in thread
From: David Miller @ 2019-09-27 18:29 UTC (permalink / raw)
  To: haan
  Cc: andrew, f.fainelli, hkallweit1, netdev, linux-kernel,
	antoine.tenart, hans.andersson

From: Hans Andersson <haan@cellavision.se>
Date: Thu, 26 Sep 2019 09:54:37 +0200

> From: Hans Andersson <hans.andersson@cellavision.se>
> 
> The Micrel KSZ9031 PHY may fail to establish a link when the Asymmetric
> Pause capability is set. This issue is described in a Silicon Errata
> (DS80000691D or DS80000692D), which advises to always disable the
> capability.
> 
> Micrel KSZ9021 has no errata, but has the same issue with Asymmetric Pause.
> This patch apply the same workaround as the one for KSZ9031.
> 
> Signed-off-by: Hans Andersson <hans.andersson@cellavision.se>

Applied and queued up for -stable.

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

end of thread, other threads:[~2019-09-27 18:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-26  7:54 [PATCH] net: phy: micrel: add Asym Pause workaround for KSZ9021 Hans Andersson
2019-09-26 12:09 ` Andrew Lunn
2019-09-27  7:58   ` [PATCH v2] " Hans Andersson
2019-09-27 18:22     ` Florian Fainelli
2019-09-27 18:29 ` [PATCH] " David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).