* [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE
@ 2025-12-02 9:07 Ivan Galkin
2025-12-02 16:38 ` Vladimir Oltean
2025-12-04 11:20 ` patchwork-bot+netdevbpf
0 siblings, 2 replies; 3+ messages in thread
From: Ivan Galkin @ 2025-12-02 9:07 UTC (permalink / raw)
To: Andrew Lunn, Heiner Kallweit, Russell King, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Russell King (Oracle),
Marek Vasut, Maxime Chevallier
Cc: netdev, linux-kernel, kernel, Ivan Galkin
When support for RTL8211F(D)(I)-VD-CG was introduced in commit
bb726b753f75 ("net: phy: realtek: add support for RTL8211F(D)(I)-VD-CG")
the implementation assumed that this PHY model doesn't have the
control register PHYCR2 (Page 0xa43 Address 0x19). This
assumption was based on the differences in CLKOUT configurations
between RTL8211FVD and the remaining RTL8211F PHYs. In the latter
commit 2c67301584f2
("net: phy: realtek: Avoid PHYCR2 access if PHYCR2 not present")
this assumption was expanded to the PHY-mode EEE.
I performed tests on RTL8211FI-VD-CG and confirmed that disabling
PHY-mode EEE works correctly and is uniform with other PHYs
supported by the driver. To validate the correctness,
I contacted Realtek support. Realtek confirmed that PHY-mode EEE on
RTL8211F(D)(I)-VD-CG is configured via Page 0xa43 Address 0x19 bit 5.
Moreover, Realtek informed me that the most recent datasheet
for RTL8211F(D)(I)-VD-CG v1.1 is incomplete and the naming of
control registers is partly inconsistent. The errata I
received from Realtek corrects the naming as follows:
| Register | Datasheet v1.1 | Errata |
|-------------------------|----------------|--------|
| Page 0xa44 Address 0x11 | PHYCR2 | PHYCR3 |
| Page 0xa43 Address 0x19 | N/A | PHYCR2 |
This information confirms that the supposedly missing control register,
PHYCR2, exists in the RTL8211F(D)(I)-VD-CG under the same address and
the same name. It controls widely the same configs as other PHYs from
the RTL8211F series (e.g. PHY-mode EEE). Clock out configuration is an
exception.
Given all this information, restore disabling of the PHY-mode EEE.
Fixes: 2c67301584f2 ("net: phy: realtek: Avoid PHYCR2 access if PHYCR2 not present")
Signed-off-by: Ivan Galkin <ivan.galkin@axis.com>
---
drivers/net/phy/realtek/realtek_main.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/net/phy/realtek/realtek_main.c b/drivers/net/phy/realtek/realtek_main.c
index 67ecf3d4af2b..6ff0385201a5 100644
--- a/drivers/net/phy/realtek/realtek_main.c
+++ b/drivers/net/phy/realtek/realtek_main.c
@@ -691,10 +691,6 @@ static int rtl8211f_config_aldps(struct phy_device *phydev)
static int rtl8211f_config_phy_eee(struct phy_device *phydev)
{
- /* RTL8211FVD has no PHYCR2 register */
- if (phydev->drv->phy_id == RTL_8211FVD_PHYID)
- return 0;
-
/* Disable PHY-mode EEE so LPI is passed to the MAC */
return phy_modify_paged(phydev, RTL8211F_PHYCR_PAGE, RTL8211F_PHYCR2,
RTL8211F_PHYCR2_PHY_EEE_ENABLE, 0);
---
base-commit: 31a3ed492dd41908b60b57d82f0ba878eae685fd
change-id: 20251201-phy_eee-c44005b9e2c7
Best regards,
--
Ivan Galkin <ivan.galkin@axis.com>
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE
2025-12-02 9:07 [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE Ivan Galkin
@ 2025-12-02 16:38 ` Vladimir Oltean
2025-12-04 11:20 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: Vladimir Oltean @ 2025-12-02 16:38 UTC (permalink / raw)
To: Ivan Galkin
Cc: Andrew Lunn, Heiner Kallweit, Russell King, David S. Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Russell King (Oracle),
Marek Vasut, Maxime Chevallier, netdev, linux-kernel, kernel
On Tue, Dec 02, 2025 at 10:07:42AM +0100, Ivan Galkin wrote:
> When support for RTL8211F(D)(I)-VD-CG was introduced in commit
> bb726b753f75 ("net: phy: realtek: add support for RTL8211F(D)(I)-VD-CG")
> the implementation assumed that this PHY model doesn't have the
> control register PHYCR2 (Page 0xa43 Address 0x19). This
> assumption was based on the differences in CLKOUT configurations
> between RTL8211FVD and the remaining RTL8211F PHYs. In the latter
> commit 2c67301584f2
> ("net: phy: realtek: Avoid PHYCR2 access if PHYCR2 not present")
> this assumption was expanded to the PHY-mode EEE.
>
> I performed tests on RTL8211FI-VD-CG and confirmed that disabling
> PHY-mode EEE works correctly and is uniform with other PHYs
> supported by the driver. To validate the correctness,
> I contacted Realtek support. Realtek confirmed that PHY-mode EEE on
> RTL8211F(D)(I)-VD-CG is configured via Page 0xa43 Address 0x19 bit 5.
>
> Moreover, Realtek informed me that the most recent datasheet
> for RTL8211F(D)(I)-VD-CG v1.1 is incomplete and the naming of
> control registers is partly inconsistent. The errata I
> received from Realtek corrects the naming as follows:
>
> | Register | Datasheet v1.1 | Errata |
> |-------------------------|----------------|--------|
> | Page 0xa44 Address 0x11 | PHYCR2 | PHYCR3 |
> | Page 0xa43 Address 0x19 | N/A | PHYCR2 |
>
> This information confirms that the supposedly missing control register,
> PHYCR2, exists in the RTL8211F(D)(I)-VD-CG under the same address and
> the same name. It controls widely the same configs as other PHYs from
> the RTL8211F series (e.g. PHY-mode EEE). Clock out configuration is an
> exception.
>
> Given all this information, restore disabling of the PHY-mode EEE.
>
> Fixes: 2c67301584f2 ("net: phy: realtek: Avoid PHYCR2 access if PHYCR2 not present")
> Signed-off-by: Ivan Galkin <ivan.galkin@axis.com>
> ---
Makes sense. Thanks for the in-depth analysis.
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE
2025-12-02 9:07 [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE Ivan Galkin
2025-12-02 16:38 ` Vladimir Oltean
@ 2025-12-04 11:20 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-12-04 11:20 UTC (permalink / raw)
To: Ivan Galkin
Cc: andrew, hkallweit1, linux, davem, edumazet, kuba, pabeni,
rmk+kernel, marek.vasut, maxime.chevallier, netdev, linux-kernel,
kernel
Hello:
This patch was applied to netdev/net.git (main)
by Paolo Abeni <pabeni@redhat.com>:
On Tue, 2 Dec 2025 10:07:42 +0100 you wrote:
> When support for RTL8211F(D)(I)-VD-CG was introduced in commit
> bb726b753f75 ("net: phy: realtek: add support for RTL8211F(D)(I)-VD-CG")
> the implementation assumed that this PHY model doesn't have the
> control register PHYCR2 (Page 0xa43 Address 0x19). This
> assumption was based on the differences in CLKOUT configurations
> between RTL8211FVD and the remaining RTL8211F PHYs. In the latter
> commit 2c67301584f2
> ("net: phy: realtek: Avoid PHYCR2 access if PHYCR2 not present")
> this assumption was expanded to the PHY-mode EEE.
>
> [...]
Here is the summary with links:
- [net-next] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE
https://git.kernel.org/netdev/net/c/4f0638b12451
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-12-04 11:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-02 9:07 [net-next PATCH] net: phy: RTL8211FVD: Restore disabling of PHY-mode EEE Ivan Galkin
2025-12-02 16:38 ` Vladimir Oltean
2025-12-04 11:20 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox