Lines Matching refs:mdio
1181 while (GRETH_REGLOAD(greth->regs->mdio) & GRETH_MII_BUSY) { in wait_for_mdio()
1196 GRETH_REGSAVE(greth->regs->mdio, ((phy & 0x1F) << 11) | ((reg & 0x1F) << 6) | 2); in greth_mdio_read()
1201 if (!(GRETH_REGLOAD(greth->regs->mdio) & GRETH_MII_NVALID)) { in greth_mdio_read()
1202 data = (GRETH_REGLOAD(greth->regs->mdio) >> 16) & 0xFFFF; in greth_mdio_read()
1217 GRETH_REGSAVE(greth->regs->mdio, in greth_mdio_write()
1286 phy = phy_find_first(greth->mdio); in greth_mdio_probe()
1331 greth->mdio = mdiobus_alloc(); in greth_mdio_init()
1332 if (!greth->mdio) { in greth_mdio_init()
1336 greth->mdio->name = "greth-mdio"; in greth_mdio_init()
1337 snprintf(greth->mdio->id, MII_BUS_ID_SIZE, "%s-%d", greth->mdio->name, greth->irq); in greth_mdio_init()
1338 greth->mdio->read = greth_mdio_read; in greth_mdio_init()
1339 greth->mdio->write = greth_mdio_write; in greth_mdio_init()
1340 greth->mdio->priv = greth; in greth_mdio_init()
1342 greth->mdio->irq = greth->mdio_irqs; in greth_mdio_init()
1345 greth->mdio->irq[phy] = PHY_POLL; in greth_mdio_init()
1347 ret = mdiobus_register(greth->mdio); in greth_mdio_init()
1374 mdiobus_unregister(greth->mdio); in greth_mdio_init()
1376 mdiobus_free(greth->mdio); in greth_mdio_init()
1443 greth->phyaddr = (GRETH_REGLOAD(regs->mdio) >> 11) & 0x1F; in greth_of_probe()
1561 mdiobus_unregister(greth->mdio); in greth_of_probe()
1581 mdiobus_unregister(greth->mdio); in greth_of_remove()