diff mbox series

[net-next] net: phy: realtek: add generic Realtek PHY driver

Message ID 74416e89-bcd5-6c3d-b38a-2ed9ad6a0c0b@gmail.com
State Accepted
Delegated to: David Miller
Headers show
Series [net-next] net: phy: realtek: add generic Realtek PHY driver | expand

Commit Message

Heiner Kallweit Feb. 3, 2019, 3:07 p.m. UTC
The integrated PHY's of later RTL8168 network chips report the generic
PHYID 0x001cc800 (Realtek OUI, model and revision number both set to
zero) and therefore currently the genphy driver is used.

To be able to use the paged version of e.g. phy_write() we need a
PHY driver with the read_page and write_page callbacks implemented.
So basically make a copy of the genphy driver, just with the
read_page and write_page callbacks being set.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
 drivers/net/phy/realtek.c | 9 +++++++++
 1 file changed, 9 insertions(+)

Comments

David Miller Feb. 3, 2019, 5:37 p.m. UTC | #1
From: Heiner Kallweit <hkallweit1@gmail.com>
Date: Sun, 3 Feb 2019 16:07:33 +0100

> The integrated PHY's of later RTL8168 network chips report the generic
> PHYID 0x001cc800 (Realtek OUI, model and revision number both set to
> zero) and therefore currently the genphy driver is used.
> 
> To be able to use the paged version of e.g. phy_write() we need a
> PHY driver with the read_page and write_page callbacks implemented.
> So basically make a copy of the genphy driver, just with the
> read_page and write_page callbacks being set.
> 
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>

Applied, thanks.
diff mbox series

Patch

diff --git a/drivers/net/phy/realtek.c b/drivers/net/phy/realtek.c
index 75543f937..d8c4b9ae0 100644
--- a/drivers/net/phy/realtek.c
+++ b/drivers/net/phy/realtek.c
@@ -272,6 +272,15 @@  static struct phy_driver realtek_drvs[] = {
 		.resume		= genphy_resume,
 		.read_page	= rtl821x_read_page,
 		.write_page	= rtl821x_write_page,
+	}, {
+		PHY_ID_MATCH_EXACT(0x001cc800),
+		.name		= "Generic Realtek PHY",
+		.features	= PHY_GBIT_FEATURES,
+		.config_init	= genphy_config_init,
+		.suspend	= genphy_suspend,
+		.resume		= genphy_resume,
+		.read_page	= rtl821x_read_page,
+		.write_page	= rtl821x_write_page,
 	}, {
 		PHY_ID_MATCH_EXACT(0x001cc961),
 		.name		= "RTL8366RB Gigabit Ethernet",