@ -26,7 +26,6 @@
# define RTL8366RB_PHY_NO_MAX 4
# define RTL8366RB_PHY_PAGE_MAX 7
# define RTL8366RB_PHY_ADDR_MAX 31
# define RTL8366RB_PHY_WAN 4
/* Switch Global Configuration register */
# define RTL8366RB_SGCR 0x0000
@ -1157,12 +1156,6 @@ static int rtl8366rb_mii_write(struct mii_bus *bus, int addr, int reg, u16 val)
return err ;
}
static int rtl8366rb_mii_bus_match ( struct mii_bus * bus )
{
return ( bus - > read = = rtl8366rb_mii_read & &
bus - > write = = rtl8366rb_mii_write ) ;
}
static int rtl8366rb_setup ( struct rtl8366_smi * smi )
{
int ret ;
@ -1282,36 +1275,6 @@ static int __devinit rtl8366rb_probe(struct platform_device *pdev)
return err ;
}
static int rtl8366rb_phy_config_init ( struct phy_device * phydev )
{
if ( ! rtl8366rb_mii_bus_match ( phydev - > bus ) )
return - EINVAL ;
return 0 ;
}
static int rtl8366rb_phy_config_aneg ( struct phy_device * phydev )
{
/* phy 4 might be connected to a second mac, allow aneg config */
if ( phydev - > addr = = RTL8366RB_PHY_WAN )
return genphy_config_aneg ( phydev ) ;
return 0 ;
}
static struct phy_driver rtl8366rb_phy_driver = {
. phy_id = 0x001cc960 ,
. name = " Realtek RTL8366RB " ,
. phy_id_mask = 0x1ffffff0 ,
. features = PHY_GBIT_FEATURES ,
. config_aneg = rtl8366rb_phy_config_aneg ,
. config_init = rtl8366rb_phy_config_init ,
. read_status = genphy_read_status ,
. driver = {
. owner = THIS_MODULE ,
} ,
} ;
static int __devexit rtl8366rb_remove ( struct platform_device * pdev )
{
struct rtl8366_smi * smi = platform_get_drvdata ( pdev ) ;
@ -1337,26 +1300,12 @@ static struct platform_driver rtl8366rb_driver = {
static int __init rtl8366rb_module_init ( void )
{
int ret ;
ret = platform_driver_register ( & rtl8366rb_driver ) ;
if ( ret )
return ret ;
ret = phy_driver_register ( & rtl8366rb_phy_driver ) ;
if ( ret )
goto err_platform_unregister ;
return 0 ;
err_platform_unregister :
platform_driver_unregister ( & rtl8366rb_driver ) ;
return ret ;
return platform_driver_register ( & rtl8366rb_driver ) ;
}
module_init ( rtl8366rb_module_init ) ;
static void __exit rtl8366rb_module_exit ( void )
{
phy_driver_unregister ( & rtl8366rb_phy_driver ) ;
platform_driver_unregister ( & rtl8366rb_driver ) ;
}
module_exit ( rtl8366rb_module_exit ) ;