Lines Matching refs:lp

20 int axienet_mdio_wait_until_ready(struct axienet_local *lp)  in axienet_mdio_wait_until_ready()  argument
23 while (!(axienet_ior(lp, XAE_MDIO_MCR_OFFSET) & in axienet_mdio_wait_until_ready()
50 struct axienet_local *lp = bus->priv; in axienet_mdio_read() local
52 ret = axienet_mdio_wait_until_ready(lp); in axienet_mdio_read()
56 axienet_iow(lp, XAE_MDIO_MCR_OFFSET, in axienet_mdio_read()
64 ret = axienet_mdio_wait_until_ready(lp); in axienet_mdio_read()
68 rc = axienet_ior(lp, XAE_MDIO_MRD_OFFSET) & 0x0000FFFF; in axienet_mdio_read()
70 dev_dbg(lp->dev, "axienet_mdio_read(phy_id=%i, reg=%x) == %x\n", in axienet_mdio_read()
93 struct axienet_local *lp = bus->priv; in axienet_mdio_write() local
95 dev_dbg(lp->dev, "axienet_mdio_write(phy_id=%i, reg=%x, val=%x)\n", in axienet_mdio_write()
98 ret = axienet_mdio_wait_until_ready(lp); in axienet_mdio_write()
102 axienet_iow(lp, XAE_MDIO_MWD_OFFSET, (u32) val); in axienet_mdio_write()
103 axienet_iow(lp, XAE_MDIO_MCR_OFFSET, in axienet_mdio_write()
111 ret = axienet_mdio_wait_until_ready(lp); in axienet_mdio_write()
128 int axienet_mdio_setup(struct axienet_local *lp, struct device_node *np) in axienet_mdio_setup() argument
195 axienet_iow(lp, XAE_MDIO_MC_OFFSET, in axienet_mdio_setup()
198 ret = axienet_mdio_wait_until_ready(lp); in axienet_mdio_setup()
206 np1 = of_get_parent(lp->phy_node); in axienet_mdio_setup()
211 bus->priv = lp; in axienet_mdio_setup()
215 bus->parent = lp->dev; in axienet_mdio_setup()
216 bus->irq = lp->mdio_irqs; /* preallocated IRQ table */ in axienet_mdio_setup()
217 lp->mii_bus = bus; in axienet_mdio_setup()
233 void axienet_mdio_teardown(struct axienet_local *lp) in axienet_mdio_teardown() argument
235 mdiobus_unregister(lp->mii_bus); in axienet_mdio_teardown()
236 kfree(lp->mii_bus->irq); in axienet_mdio_teardown()
237 mdiobus_free(lp->mii_bus); in axienet_mdio_teardown()
238 lp->mii_bus = NULL; in axienet_mdio_teardown()