Lines Matching defs:mii_bus

18 	struct mii_bus *mii_bus;
29 struct mii_bus *mii_bus;
38 static int mdio_mux_read(struct mii_bus *bus, int phy_id, int regnum)
44 mutex_lock_nested(&pb->mii_bus->mdio_lock, MDIO_MUTEX_MUX);
51 r = pb->mii_bus->read(pb->mii_bus, phy_id, regnum);
53 mutex_unlock(&pb->mii_bus->mdio_lock);
58 static int mdio_mux_read_c45(struct mii_bus *bus, int phy_id, int dev_addr,
65 mutex_lock_nested(&pb->mii_bus->mdio_lock, MDIO_MUTEX_MUX);
72 r = pb->mii_bus->read_c45(pb->mii_bus, phy_id, dev_addr, regnum);
74 mutex_unlock(&pb->mii_bus->mdio_lock);
82 static int mdio_mux_write(struct mii_bus *bus, int phy_id,
90 mutex_lock_nested(&pb->mii_bus->mdio_lock, MDIO_MUTEX_MUX);
97 r = pb->mii_bus->write(pb->mii_bus, phy_id, regnum, val);
99 mutex_unlock(&pb->mii_bus->mdio_lock);
104 static int mdio_mux_write_c45(struct mii_bus *bus, int phy_id, int dev_addr,
112 mutex_lock_nested(&pb->mii_bus->mdio_lock, MDIO_MUTEX_MUX);
119 r = pb->mii_bus->write_c45(pb->mii_bus, phy_id, dev_addr, regnum, val);
121 mutex_unlock(&pb->mii_bus->mdio_lock);
133 mdiobus_unregister(cb->mii_bus);
134 mdiobus_free(cb->mii_bus);
144 struct mii_bus *mux_bus)
149 struct mii_bus *parent_bus;
184 pb->mii_bus = parent_bus;
206 cb->mii_bus = mdiobus_alloc();
207 if (!cb->mii_bus) {
211 cb->mii_bus->priv = cb;
213 cb->mii_bus->name = "mdio_mux";
214 snprintf(cb->mii_bus->id, MII_BUS_ID_SIZE, "%s-%x.%x",
215 cb->mii_bus->name, pb->parent_id, v);
216 cb->mii_bus->parent = dev;
218 cb->mii_bus->read = mdio_mux_read;
220 cb->mii_bus->write = mdio_mux_write;
222 cb->mii_bus->read_c45 = mdio_mux_read_c45;
224 cb->mii_bus->write_c45 = mdio_mux_write_c45;
225 r = of_mdiobus_register(cb->mii_bus, child_bus_node);
227 mdiobus_free(cb->mii_bus);
264 put_device(&pb->mii_bus->dev);