generic: rtl8366{s,rb}: remove the PHY driver.

Since the PHY driver is only used for the WAN port and there is virtually
no difference between it and the generic PHY driver, we can sefely remove
it.

Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26600 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Gabor Juhos 2011-04-12 09:29:07 +00:00
parent 4db6664002
commit 6c38894393
2 changed files with 2 additions and 104 deletions

View File

@ -26,7 +26,6 @@
#define RTL8366RB_PHY_NO_MAX 4 #define RTL8366RB_PHY_NO_MAX 4
#define RTL8366RB_PHY_PAGE_MAX 7 #define RTL8366RB_PHY_PAGE_MAX 7
#define RTL8366RB_PHY_ADDR_MAX 31 #define RTL8366RB_PHY_ADDR_MAX 31
#define RTL8366RB_PHY_WAN 4
/* Switch Global Configuration register */ /* Switch Global Configuration register */
#define RTL8366RB_SGCR 0x0000 #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; 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) static int rtl8366rb_setup(struct rtl8366_smi *smi)
{ {
int ret; int ret;
@ -1282,36 +1275,6 @@ static int __devinit rtl8366rb_probe(struct platform_device *pdev)
return err; 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) static int __devexit rtl8366rb_remove(struct platform_device *pdev)
{ {
struct rtl8366_smi *smi = platform_get_drvdata(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) static int __init rtl8366rb_module_init(void)
{ {
int ret; return platform_driver_register(&rtl8366rb_driver);
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;
} }
module_init(rtl8366rb_module_init); module_init(rtl8366rb_module_init);
static void __exit rtl8366rb_module_exit(void) static void __exit rtl8366rb_module_exit(void)
{ {
phy_driver_unregister(&rtl8366rb_phy_driver);
platform_driver_unregister(&rtl8366rb_driver); platform_driver_unregister(&rtl8366rb_driver);
} }
module_exit(rtl8366rb_module_exit); module_exit(rtl8366rb_module_exit);

View File

@ -25,7 +25,6 @@
#define RTL8366S_PHY_NO_MAX 4 #define RTL8366S_PHY_NO_MAX 4
#define RTL8366S_PHY_PAGE_MAX 7 #define RTL8366S_PHY_PAGE_MAX 7
#define RTL8366S_PHY_ADDR_MAX 31 #define RTL8366S_PHY_ADDR_MAX 31
#define RTL8366S_PHY_WAN 4
/* Switch Global Configuration register */ /* Switch Global Configuration register */
#define RTL8366S_SGCR 0x0000 #define RTL8366S_SGCR 0x0000
@ -986,12 +985,6 @@ static int rtl8366s_mii_write(struct mii_bus *bus, int addr, int reg, u16 val)
return err; return err;
} }
static int rtl8366s_mii_bus_match(struct mii_bus *bus)
{
return (bus->read == rtl8366s_mii_read &&
bus->write == rtl8366s_mii_write);
}
static int rtl8366s_setup(struct rtl8366_smi *smi) static int rtl8366s_setup(struct rtl8366_smi *smi)
{ {
int ret; int ret;
@ -1111,36 +1104,6 @@ static int __devinit rtl8366s_probe(struct platform_device *pdev)
return err; return err;
} }
static int rtl8366s_phy_config_init(struct phy_device *phydev)
{
if (!rtl8366s_mii_bus_match(phydev->bus))
return -EINVAL;
return 0;
}
static int rtl8366s_phy_config_aneg(struct phy_device *phydev)
{
/* phy 4 might be connected to a second mac, allow aneg config */
if (phydev->addr == RTL8366S_PHY_WAN)
return genphy_config_aneg(phydev);
return 0;
}
static struct phy_driver rtl8366s_phy_driver = {
.phy_id = 0x001cc960,
.name = "Realtek RTL8366S",
.phy_id_mask = 0x1ffffff0,
.features = PHY_GBIT_FEATURES,
.config_aneg = rtl8366s_phy_config_aneg,
.config_init = rtl8366s_phy_config_init,
.read_status = genphy_read_status,
.driver = {
.owner = THIS_MODULE,
},
};
static int __devexit rtl8366s_remove(struct platform_device *pdev) static int __devexit rtl8366s_remove(struct platform_device *pdev)
{ {
struct rtl8366_smi *smi = platform_get_drvdata(pdev); struct rtl8366_smi *smi = platform_get_drvdata(pdev);
@ -1166,26 +1129,12 @@ static struct platform_driver rtl8366s_driver = {
static int __init rtl8366s_module_init(void) static int __init rtl8366s_module_init(void)
{ {
int ret; return platform_driver_register(&rtl8366s_driver);
ret = platform_driver_register(&rtl8366s_driver);
if (ret)
return ret;
ret = phy_driver_register(&rtl8366s_phy_driver);
if (ret)
goto err_platform_unregister;
return 0;
err_platform_unregister:
platform_driver_unregister(&rtl8366s_driver);
return ret;
} }
module_init(rtl8366s_module_init); module_init(rtl8366s_module_init);
static void __exit rtl8366s_module_exit(void) static void __exit rtl8366s_module_exit(void)
{ {
phy_driver_unregister(&rtl8366s_phy_driver);
platform_driver_unregister(&rtl8366s_driver); platform_driver_unregister(&rtl8366s_driver);
} }
module_exit(rtl8366s_module_exit); module_exit(rtl8366s_module_exit);