Lines Matching refs:bus
28 static int mpc52xx_fec_mdio_transfer(struct mii_bus *bus, int phy_id, in mpc52xx_fec_mdio_transfer() argument
31 struct mpc52xx_fec_mdio_priv *priv = bus->priv; in mpc52xx_fec_mdio_transfer()
52 static int mpc52xx_fec_mdio_read(struct mii_bus *bus, int phy_id, int reg) in mpc52xx_fec_mdio_read() argument
54 return mpc52xx_fec_mdio_transfer(bus, phy_id, reg, FEC_MII_READ_FRAME); in mpc52xx_fec_mdio_read()
57 static int mpc52xx_fec_mdio_write(struct mii_bus *bus, int phy_id, int reg, in mpc52xx_fec_mdio_write() argument
60 return mpc52xx_fec_mdio_transfer(bus, phy_id, reg, in mpc52xx_fec_mdio_write()
68 struct mii_bus *bus; in mpc52xx_fec_mdio_probe() local
73 bus = mdiobus_alloc(); in mpc52xx_fec_mdio_probe()
74 if (bus == NULL) in mpc52xx_fec_mdio_probe()
82 bus->name = "mpc52xx MII bus"; in mpc52xx_fec_mdio_probe()
83 bus->read = mpc52xx_fec_mdio_read; in mpc52xx_fec_mdio_probe()
84 bus->write = mpc52xx_fec_mdio_write; in mpc52xx_fec_mdio_probe()
87 bus->irq = priv->mdio_irqs; in mpc52xx_fec_mdio_probe()
99 snprintf(bus->id, MII_BUS_ID_SIZE, "%x", res.start); in mpc52xx_fec_mdio_probe()
100 bus->priv = priv; in mpc52xx_fec_mdio_probe()
102 bus->parent = dev; in mpc52xx_fec_mdio_probe()
103 dev_set_drvdata(dev, bus); in mpc52xx_fec_mdio_probe()
109 err = of_mdiobus_register(bus, np); in mpc52xx_fec_mdio_probe()
119 mdiobus_free(bus); in mpc52xx_fec_mdio_probe()
126 struct mii_bus *bus = platform_get_drvdata(of); in mpc52xx_fec_mdio_remove() local
127 struct mpc52xx_fec_mdio_priv *priv = bus->priv; in mpc52xx_fec_mdio_remove()
129 mdiobus_unregister(bus); in mpc52xx_fec_mdio_remove()
132 mdiobus_free(bus); in mpc52xx_fec_mdio_remove()