Lines Matching refs:mii_bus
165 static int macb_mdio_read(struct mii_bus *bus, int mii_id, int regnum) in macb_mdio_read()
185 static int macb_mdio_write(struct mii_bus *bus, int mii_id, int regnum, in macb_mdio_write()
324 phydev = phy_find_first(bp->mii_bus); in macb_mii_probe()
375 bp->mii_bus = mdiobus_alloc(); in macb_mii_init()
376 if (bp->mii_bus == NULL) { in macb_mii_init()
381 bp->mii_bus->name = "MACB_mii_bus"; in macb_mii_init()
382 bp->mii_bus->read = &macb_mdio_read; in macb_mii_init()
383 bp->mii_bus->write = &macb_mdio_write; in macb_mii_init()
384 snprintf(bp->mii_bus->id, MII_BUS_ID_SIZE, "%s-%x", in macb_mii_init()
386 bp->mii_bus->priv = bp; in macb_mii_init()
387 bp->mii_bus->parent = &bp->dev->dev; in macb_mii_init()
390 bp->mii_bus->irq = kmalloc(sizeof(int)*PHY_MAX_ADDR, GFP_KERNEL); in macb_mii_init()
391 if (!bp->mii_bus->irq) { in macb_mii_init()
396 dev_set_drvdata(&bp->dev->dev, bp->mii_bus); in macb_mii_init()
401 err = of_mdiobus_register(bp->mii_bus, np); in macb_mii_init()
405 if (!err && !phy_find_first(bp->mii_bus)) { in macb_mii_init()
409 phydev = mdiobus_scan(bp->mii_bus, i); in macb_mii_init()
421 bp->mii_bus->irq[i] = PHY_POLL; in macb_mii_init()
424 bp->mii_bus->phy_mask = pdata->phy_mask; in macb_mii_init()
426 err = mdiobus_register(bp->mii_bus); in macb_mii_init()
439 mdiobus_unregister(bp->mii_bus); in macb_mii_init()
441 kfree(bp->mii_bus->irq); in macb_mii_init()
443 mdiobus_free(bp->mii_bus); in macb_mii_init()
2874 mdiobus_unregister(bp->mii_bus); in macb_remove()
2875 kfree(bp->mii_bus->irq); in macb_remove()
2876 mdiobus_free(bp->mii_bus); in macb_remove()