2023-03-24 13:44:05

by Oleksij Rempel

[permalink] [raw]
Subject: [PATCH net v1 1/1] net: phy: micrel: correct KSZ9131RNX EEE capabilities and advertisement

The KSZ9131RNX incorrectly shows EEE capabilities in its registers.
Although the "EEE control and capability 1" (Register 3.20) is set to 0,
indicating no EEE support, the "EEE advertisement 1" (Register 7.60) is
set to 0x6, advertising EEE support for 1000BaseT/Full and
100BaseT/Full.
This inconsistency causes PHYlib to assume there is no EEE support,
preventing control over EEE advertisement, which is enabled by default.

This patch resolves the issue by utilizing the ksz9477_get_features()
function to correctly set the EEE capabilities for the KSZ9131RNX. This
adjustment allows proper control over EEE advertisement and ensures
accurate representation of the device's capabilities.

Fixes: 8b68710a3121 ("net: phy: start using genphy_c45_ethtool_get/set_eee()")
Reported-by: Marek Vasut <[email protected]>
Tested-by: Marek Vasut <[email protected]>
Signed-off-by: Oleksij Rempel <[email protected]>
---
drivers/net/phy/micrel.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
index 2c84fccef4f6..4e884e4ba0ea 100644
--- a/drivers/net/phy/micrel.c
+++ b/drivers/net/phy/micrel.c
@@ -4151,6 +4151,7 @@ static struct phy_driver ksphy_driver[] = {
.resume = kszphy_resume,
.cable_test_start = ksz9x31_cable_test_start,
.cable_test_get_status = ksz9x31_cable_test_get_status,
+ .get_features = ksz9477_get_features,
}, {
.phy_id = PHY_ID_KSZ8873MLL,
.phy_id_mask = MICREL_PHY_ID_MASK,
--
2.30.2


2023-03-27 07:23:27

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH net v1 1/1] net: phy: micrel: correct KSZ9131RNX EEE capabilities and advertisement

Hello:

This patch was applied to netdev/net.git (main)
by David S. Miller <[email protected]>:

On Fri, 24 Mar 2023 14:39:08 +0100 you wrote:
> The KSZ9131RNX incorrectly shows EEE capabilities in its registers.
> Although the "EEE control and capability 1" (Register 3.20) is set to 0,
> indicating no EEE support, the "EEE advertisement 1" (Register 7.60) is
> set to 0x6, advertising EEE support for 1000BaseT/Full and
> 100BaseT/Full.
> This inconsistency causes PHYlib to assume there is no EEE support,
> preventing control over EEE advertisement, which is enabled by default.
>
> [...]

Here is the summary with links:
- [net,v1,1/1] net: phy: micrel: correct KSZ9131RNX EEE capabilities and advertisement
https://git.kernel.org/netdev/net/c/f2e9d083f768

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