diff options
author | joe <joe@FreeBSD.org> | 2002-04-06 20:50:21 +0000 |
---|---|---|
committer | joe <joe@FreeBSD.org> | 2002-04-06 20:50:21 +0000 |
commit | 6acac88074c7f94c902b7197828376b2d276fe87 (patch) | |
tree | 4dba9fb3973da21cba4988e493fc6b4394a045d9 /sys/dev/usb/if_aue.c | |
parent | 30f86800413b1dc7e831ab51a288fb9c62d42ffd (diff) | |
download | FreeBSD-src-6acac88074c7f94c902b7197828376b2d276fe87.zip FreeBSD-src-6acac88074c7f94c902b7197828376b2d276fe87.tar.gz |
Another step in merging our if_aue driver with NetBSD's.
Diffstat (limited to 'sys/dev/usb/if_aue.c')
-rw-r--r-- | sys/dev/usb/if_aue.c | 29 |
1 files changed, 9 insertions, 20 deletions
diff --git a/sys/dev/usb/if_aue.c b/sys/dev/usb/if_aue.c index a520099..17d2ef6 100644 --- a/sys/dev/usb/if_aue.c +++ b/sys/dev/usb/if_aue.c @@ -405,12 +405,10 @@ aue_read_eeprom(struct aue_softc *sc, caddr_t dest, int off, int cnt, int swap) Static int aue_miibus_readreg(device_ptr_t dev, int phy, int reg) { - struct aue_softc *sc; + struct aue_softc *sc = USBGETSOFTC(dev); int i; u_int16_t val = 0; - sc = device_get_softc(dev); - /* * The Am79C901 HomePNA PHY actually contains * two transceivers: a 1Mbps HomePNA PHY and a @@ -451,14 +449,12 @@ aue_miibus_readreg(device_ptr_t dev, int phy, int reg) Static int aue_miibus_writereg(device_ptr_t dev, int phy, int reg, int data) { - struct aue_softc *sc; + struct aue_softc *sc = USBGETSOFTC(dev); int i; if (phy == 3) return (0); - sc = device_get_softc(dev); - aue_csr_write_2(sc, AUE_PHY_DATA, data); aue_csr_write_1(sc, AUE_PHY_ADDR, phy); aue_csr_write_1(sc, AUE_PHY_CTL, reg | AUE_PHYCTL_WRITE); @@ -479,11 +475,8 @@ aue_miibus_writereg(device_ptr_t dev, int phy, int reg, int data) Static void aue_miibus_statchg(device_ptr_t dev) { - struct aue_softc *sc; - struct mii_data *mii; - - sc = device_get_softc(dev); - mii = device_get_softc(sc->aue_miibus); + struct aue_softc *sc = USBGETSOFTC(dev); + struct mii_data *mii = GET_MII(sc); AUE_CLRBIT(sc, AUE_CTL0, AUE_CTL0_RX_ENB | AUE_CTL0_TX_ENB); if (IFM_SUBTYPE(mii->mii_media_active) == IFM_100_TX) { @@ -1097,7 +1090,7 @@ aue_tick(void *xsc) AUE_LOCK(sc); ifp = &sc->arpcom.ac_if; - mii = device_get_softc(sc->aue_miibus); + mii = GET_MII(sc); if (mii == NULL) { AUE_UNLOCK(sc); return; @@ -1215,7 +1208,7 @@ aue_init(void *xsc) { struct aue_softc *sc = xsc; struct ifnet *ifp = &sc->arpcom.ac_if; - struct mii_data *mii; + struct mii_data *mii = GET_MII(sc); struct aue_chain *c; usbd_status err; int i; @@ -1232,8 +1225,6 @@ aue_init(void *xsc) */ aue_reset(sc); - mii = device_get_softc(sc->aue_miibus); - /* Set MAC address */ for (i = 0; i < ETHER_ADDR_LEN; i++) aue_csr_write_1(sc, AUE_PAR0 + i, sc->arpcom.ac_enaddr[i]); @@ -1329,9 +1320,8 @@ Static int aue_ifmedia_upd(struct ifnet *ifp) { struct aue_softc *sc = ifp->if_softc; - struct mii_data *mii; + struct mii_data *mii = GET_MII(sc); - mii = device_get_softc(sc->aue_miibus); sc->aue_link = 0; if (mii->mii_instance) { struct mii_softc *miisc; @@ -1350,9 +1340,8 @@ Static void aue_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) { struct aue_softc *sc = ifp->if_softc; - struct mii_data *mii; + struct mii_data *mii = GET_MII(sc); - mii = device_get_softc(sc->aue_miibus); mii_pollstat(mii); ifmr->ifm_active = mii->mii_media_active; ifmr->ifm_status = mii->mii_media_status; @@ -1402,7 +1391,7 @@ aue_ioctl(struct ifnet *ifp, u_long command, caddr_t data) break; case SIOCGIFMEDIA: case SIOCSIFMEDIA: - mii = device_get_softc(sc->aue_miibus); + mii = GET_MII(sc); error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, command); break; default: |