Date: Mon, 25 Feb 2008 18:55:31 GMT From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 136178 for review Message-ID: <200802251855.m1PItV1G003789@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=136178 Change 136178 by sam@sam_ebb on 2008/02/25 18:55:23 parent devices must handle [GS]IFMEDIA directly for ifconfig to report their status Affected files ... .. //depot/projects/vap/sys/dev/ipw/if_ipw.c#9 edit .. //depot/projects/vap/sys/dev/iwi/if_iwi.c#14 edit .. //depot/projects/vap/sys/dev/ral/rt2560.c#16 edit .. //depot/projects/vap/sys/dev/ral/rt2661.c#13 edit .. //depot/projects/vap/sys/dev/usb/if_rum.c#8 edit .. //depot/projects/vap/sys/dev/usb/if_ural.c#10 edit .. //depot/projects/vap/sys/dev/usb/if_zyd.c#9 edit .. //depot/projects/vap/sys/dev/wpi/if_wpi.c#8 edit Differences ... ==== //depot/projects/vap/sys/dev/ipw/if_ipw.c#9 (text+ko) ==== @@ -1727,6 +1727,8 @@ ipw_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct ipw_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; IPW_LOCK_DECL; @@ -1742,7 +1744,10 @@ ipw_stop_locked(sc); } break; - + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); } ==== //depot/projects/vap/sys/dev/iwi/if_iwi.c#14 (text+ko) ==== @@ -1978,6 +1978,8 @@ iwi_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct iwi_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; IWI_LOCK_DECL; @@ -2008,7 +2010,10 @@ } } break; - + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); } ==== //depot/projects/vap/sys/dev/ral/rt2560.c#16 (text) ==== @@ -2067,6 +2067,9 @@ rt2560_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct rt2560_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; + int error = 0; switch (cmd) { case SIOCSIFFLAGS: @@ -2082,10 +2085,15 @@ rt2560_stop(sc); } break; + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: - return ether_ioctl(ifp, cmd, data); + error = ether_ioctl(ifp, cmd, data); + break; } - return 0; + return error; } static void ==== //depot/projects/vap/sys/dev/ral/rt2661.c#13 (text) ==== @@ -1905,6 +1905,9 @@ rt2661_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct rt2661_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; + int error = 0; switch (cmd) { case SIOCSIFFLAGS: @@ -1918,9 +1921,13 @@ rt2661_stop(sc); } break; - + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: - return ether_ioctl(ifp, cmd, data); + error = ether_ioctl(ifp, cmd, data); + break; } return 0; } ==== //depot/projects/vap/sys/dev/usb/if_rum.c#8 (text+ko) ==== @@ -1432,6 +1432,8 @@ rum_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct rum_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; RUM_LOCK(sc); @@ -1448,6 +1450,10 @@ rum_stop(sc); } break; + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); } ==== //depot/projects/vap/sys/dev/usb/if_ural.c#10 (text+ko) ==== @@ -1536,6 +1536,8 @@ ural_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct ural_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; RAL_LOCK(sc); @@ -1552,9 +1554,13 @@ ural_stop(sc); } break; - + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); + break; } RAL_UNLOCK(sc); ==== //depot/projects/vap/sys/dev/usb/if_zyd.c#9 (text+ko) ==== @@ -2473,6 +2473,8 @@ zyd_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct zyd_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; ZYD_LOCK(sc); @@ -2492,15 +2494,18 @@ } sc->sc_if_flags = ifp->if_flags; break; - case SIOCADDMULTI: case SIOCDELMULTI: if (ifp->if_drv_flags & IFF_DRV_RUNNING) zyd_set_multi(sc); break; - + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); + break; } ZYD_UNLOCK(sc); ==== //depot/projects/vap/sys/dev/wpi/if_wpi.c#8 (text+ko) ==== @@ -2190,6 +2190,8 @@ wpi_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { struct wpi_softc *sc = ifp->if_softc; + struct ieee80211com *ic = &sc->sc_ic; + struct ifreq *ifr = (struct ifreq *) data; int error = 0; WPI_LOCK_DECL; @@ -2203,6 +2205,10 @@ } else if (ifp->if_drv_flags & IFF_DRV_RUNNING) wpi_stop_locked(sc); break; + case SIOCGIFMEDIA: + case SIOCSIFMEDIA: + error = ifmedia_ioctl(ifp, ifr, &ic->ic_media, cmd); + break; default: error = ether_ioctl(ifp, cmd, data); break;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802251855.m1PItV1G003789>