1
0
Fork 0

net: mdio: Add mdio_free() and mdio_unregister() API

Currently there is no API to uninitialize mdio. Add two APIs for this.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
utp
Bin Meng 2015-10-07 21:32:37 -07:00 committed by Joe Hershberger
parent 17ecfa9b45
commit cb6baca77b
2 changed files with 21 additions and 0 deletions

View File

@ -152,6 +152,11 @@ struct mii_dev *mdio_alloc(void)
return bus;
}
void mdio_free(struct mii_dev *bus)
{
free(bus);
}
int mdio_register(struct mii_dev *bus)
{
if (!bus || !bus->name || !bus->read || !bus->write)
@ -173,6 +178,20 @@ int mdio_register(struct mii_dev *bus)
return 0;
}
int mdio_unregister(struct mii_dev *bus)
{
if (!bus)
return 0;
/* delete it from the list */
list_del(&bus->link);
if (current_mii == bus)
current_mii = NULL;
return 0;
}
void mdio_list_devices(void)
{
struct list_head *entry;

View File

@ -59,7 +59,9 @@ struct phy_device *mdio_phydev_for_ethname(const char *devname);
void miiphy_listdev(void);
struct mii_dev *mdio_alloc(void);
void mdio_free(struct mii_dev *bus);
int mdio_register(struct mii_dev *bus);
int mdio_unregister(struct mii_dev *bus);
void mdio_list_devices(void);
#ifdef CONFIG_BITBANGMII