Lines Matching refs:mdio
222 struct mii_bus *mdio; member
674 phy = priv->mdio->phy_map[priv->phy_id]; in ethoc_mdio_probe()
676 phy = phy_find_first(priv->mdio); in ethoc_mdio_probe()
752 struct mii_ioctl_data *mdio = if_mii(ifr); in ethoc_ioctl() local
759 if (mdio->phy_id >= PHY_MAX_ADDR) in ethoc_ioctl()
762 phy = priv->mdio->phy_map[mdio->phy_id]; in ethoc_ioctl()
1191 priv->mdio = mdiobus_alloc(); in ethoc_probe()
1192 if (!priv->mdio) { in ethoc_probe()
1197 priv->mdio->name = "ethoc-mdio"; in ethoc_probe()
1198 snprintf(priv->mdio->id, MII_BUS_ID_SIZE, "%s-%d", in ethoc_probe()
1199 priv->mdio->name, pdev->id); in ethoc_probe()
1200 priv->mdio->read = ethoc_mdio_read; in ethoc_probe()
1201 priv->mdio->write = ethoc_mdio_write; in ethoc_probe()
1202 priv->mdio->priv = priv; in ethoc_probe()
1204 priv->mdio->irq = kmalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL); in ethoc_probe()
1205 if (!priv->mdio->irq) { in ethoc_probe()
1211 priv->mdio->irq[phy] = PHY_POLL; in ethoc_probe()
1213 ret = mdiobus_register(priv->mdio); in ethoc_probe()
1247 mdiobus_unregister(priv->mdio); in ethoc_probe()
1249 kfree(priv->mdio->irq); in ethoc_probe()
1250 mdiobus_free(priv->mdio); in ethoc_probe()
1273 if (priv->mdio) { in ethoc_remove()
1274 mdiobus_unregister(priv->mdio); in ethoc_remove()
1275 kfree(priv->mdio->irq); in ethoc_remove()
1276 mdiobus_free(priv->mdio); in ethoc_remove()