Lines Matching defs:sc
50 #define MVNETA_READ(sc, reg) \
51 bus_space_read_4((sc)->sc_iot, (sc)->sc_ioh, (reg))
52 #define MVNETA_WRITE(sc, reg, val) \
53 bus_space_write_4((sc)->sc_iot, (sc)->sc_ioh, (reg), (val))
90 struct mvmdio_softc *sc = (struct mvmdio_softc *) self;
98 sc->sc_iot = faa->fa_iot;
99 if (bus_space_map(sc->sc_iot, faa->fa_reg[0].addr,
100 faa->fa_reg[0].size, 0, &sc->sc_ioh)) {
108 mtx_init(&sc->sc_mtx, IPL_NET);
110 sc->sc_mii.md_node = faa->fa_node;
111 sc->sc_mii.md_cookie = sc;
112 sc->sc_mii.md_readreg = mvmdio_smi_readreg;
113 sc->sc_mii.md_writereg = mvmdio_smi_writereg;
114 mii_register(&sc->sc_mii);
116 simplebus_attach(parent, &sc->sc_sbus.sc_dev, faa);
122 struct mvmdio_softc *sc = (struct mvmdio_softc *) dev;
126 mtx_enter(&sc->sc_mtx);
130 if (!(MVNETA_READ(sc, 0) & MVNETA_SMI_BUSY))
134 printf("%s: SMI busy timeout\n", sc->sc_sbus.sc_dev.dv_xname);
135 mtx_leave(&sc->sc_mtx);
141 MVNETA_WRITE(sc, 0, smi);
145 smi = MVNETA_READ(sc, 0);
150 mtx_leave(&sc->sc_mtx);
160 struct mvmdio_softc *sc = (struct mvmdio_softc *) dev;
164 mtx_enter(&sc->sc_mtx);
168 if (!(MVNETA_READ(sc, 0) & MVNETA_SMI_BUSY))
172 printf("%s: SMI busy timeout\n", sc->sc_sbus.sc_dev.dv_xname);
173 mtx_leave(&sc->sc_mtx);
179 MVNETA_WRITE(sc, 0, smi);
183 if (!(MVNETA_READ(sc, 0) & MVNETA_SMI_BUSY))
187 mtx_leave(&sc->sc_mtx);
190 printf("%s: phy write timed out\n", sc->sc_sbus.sc_dev.dv_xname);