realtek: Add support for the RTL8221B PHY
The RTL8221B PHY is a newer version of the RTL8226, also supporting 2.5GBit Ethernet. It is found with RTL931X devices such as the EdgeCore ECS4125-10P Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com> Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
This commit is contained in:
		
				
					committed by
					
						
						Daniel Golle
					
				
			
			
				
	
			
			
			
						parent
						
							08cf48c344
						
					
				
				
					commit
					caaac9ab3b
				
			@@ -4025,6 +4025,23 @@ static struct phy_driver rtl83xx_phy_driver[] = {
 | 
				
			|||||||
		.set_eee	= rtl8218d_set_eee,
 | 
							.set_eee	= rtl8218d_set_eee,
 | 
				
			||||||
		.get_eee	= rtl8218d_get_eee,
 | 
							.get_eee	= rtl8218d_get_eee,
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							PHY_ID_MATCH_MODEL(PHY_ID_RTL8221B),
 | 
				
			||||||
 | 
							.name           = "REALTEK RTL8221B",
 | 
				
			||||||
 | 
							.features       = PHY_GBIT_FEATURES,
 | 
				
			||||||
 | 
							.probe          = rtl8226_phy_probe,
 | 
				
			||||||
 | 
							.suspend        = genphy_suspend,
 | 
				
			||||||
 | 
							.resume         = genphy_resume,
 | 
				
			||||||
 | 
							.set_loopback   = genphy_loopback,
 | 
				
			||||||
 | 
							.read_mmd       = rtl8226_read_mmd,
 | 
				
			||||||
 | 
							.write_mmd      = rtl8226_write_mmd,
 | 
				
			||||||
 | 
							.read_page      = rtl8226_read_page,
 | 
				
			||||||
 | 
							.write_page     = rtl8226_write_page,
 | 
				
			||||||
 | 
							.read_status    = rtl8226_read_status,
 | 
				
			||||||
 | 
							.config_aneg    = rtl8226_config_aneg,
 | 
				
			||||||
 | 
							.set_eee        = rtl8226_set_eee,
 | 
				
			||||||
 | 
							.get_eee        = rtl8226_get_eee,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		PHY_ID_MATCH_MODEL(PHY_ID_RTL8226),
 | 
							PHY_ID_MATCH_MODEL(PHY_ID_RTL8226),
 | 
				
			||||||
		.name		= "REALTEK RTL8226",
 | 
							.name		= "REALTEK RTL8226",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -30,6 +30,7 @@ struct __attribute__ ((__packed__)) fw_header {
 | 
				
			|||||||
#define PHY_ID_RTL8218B_E	0x001cc981
 | 
					#define PHY_ID_RTL8218B_E	0x001cc981
 | 
				
			||||||
#define PHY_ID_RTL8218D		0x001cc983
 | 
					#define PHY_ID_RTL8218D		0x001cc983
 | 
				
			||||||
#define PHY_ID_RTL8218B_I	0x001cca40
 | 
					#define PHY_ID_RTL8218B_I	0x001cca40
 | 
				
			||||||
 | 
					#define PHY_ID_RTL8221B		0x001cc849
 | 
				
			||||||
#define PHY_ID_RTL8226		0x001cc838
 | 
					#define PHY_ID_RTL8226		0x001cc838
 | 
				
			||||||
#define PHY_ID_RTL8390_GENERIC	0x001ccab0
 | 
					#define PHY_ID_RTL8390_GENERIC	0x001ccab0
 | 
				
			||||||
#define PHY_ID_RTL8393_I	0x001c8393
 | 
					#define PHY_ID_RTL8393_I	0x001c8393
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user