|
|
@@ -1,48 +0,0 @@
|
|
|
-From 225990c487c1023e7b3aa89beb6a68011fbc0461 Mon Sep 17 00:00:00 2001
|
|
|
-From: Mark Mentovai <[email protected]>
|
|
|
-Date: Thu, 25 Jul 2024 16:41:44 -0400
|
|
|
-Subject: [PATCH] net: phy: realtek: add support for RTL8366S Gigabit PHY
|
|
|
-
|
|
|
-The PHY built in to the Realtek RTL8366S switch controller was
|
|
|
-previously supported by genphy_driver. This PHY does not implement MMD
|
|
|
-operations. Since commit 9b01c885be36 ("net: phy: c22: migrate to
|
|
|
-genphy_c45_write_eee_adv()"), MMD register reads have been made during
|
|
|
-phy_probe to determine EEE support. For genphy_driver, these reads are
|
|
|
-transformed into 802.3 annex 22D clause 45-over-clause 22
|
|
|
-mmd_phy_indirect operations that perform MII register writes to
|
|
|
-MII_MMD_CTRL and MII_MMD_DATA. This overwrites those two MII registers,
|
|
|
-which on this PHY are reserved and have another function, rendering the
|
|
|
-PHY unusable while so configured.
|
|
|
-
|
|
|
-Proper support for this PHY is restored by providing a phy_driver that
|
|
|
-declares MMD operations as unsupported by using the helper functions
|
|
|
-provided for that purpose, while remaining otherwise identical to
|
|
|
-genphy_driver.
|
|
|
-
|
|
|
-Fixes: 9b01c885be36 ("net: phy: c22: migrate to genphy_c45_write_eee_adv()")
|
|
|
-Reported-by: Russell Senior <[email protected]>
|
|
|
-Closes: https://github.com/openwrt/openwrt/issues/15981
|
|
|
-Link: https://github.com/openwrt/openwrt/issues/15739
|
|
|
-Signed-off-by: Mark Mentovai <[email protected]>
|
|
|
-Reviewed-by: Maxime Chevallier <[email protected]>
|
|
|
-Signed-off-by: David S. Miller <[email protected]>
|
|
|
----
|
|
|
- drivers/net/phy/realtek.c | 7 +++++++
|
|
|
- 1 file changed, 7 insertions(+)
|
|
|
-
|
|
|
---- a/drivers/net/phy/realtek.c
|
|
|
-+++ b/drivers/net/phy/realtek.c
|
|
|
-@@ -1083,6 +1083,13 @@ static struct phy_driver realtek_drvs[]
|
|
|
- .handle_interrupt = genphy_handle_interrupt_no_ack,
|
|
|
- .suspend = genphy_suspend,
|
|
|
- .resume = genphy_resume,
|
|
|
-+ }, {
|
|
|
-+ PHY_ID_MATCH_EXACT(0x001cc960),
|
|
|
-+ .name = "RTL8366S Gigabit Ethernet",
|
|
|
-+ .suspend = genphy_suspend,
|
|
|
-+ .resume = genphy_resume,
|
|
|
-+ .read_mmd = genphy_read_mmd_unsupported,
|
|
|
-+ .write_mmd = genphy_write_mmd_unsupported,
|
|
|
- },
|
|
|
- };
|
|
|
-
|