[BACK]Return to if_temac.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / evbppc / virtex / dev

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/arch/evbppc/virtex/dev/if_temac.c between version 1.2 and 1.3

version 1.2, 2007/03/04 05:59:46 version 1.3, 2008/01/19 22:10:14
Line 205  static void  temac_start(struct ifnet *)
Line 205  static void  temac_start(struct ifnet *)
 static void     temac_stop(struct ifnet *, int);  static void     temac_stop(struct ifnet *, int);
   
 /* Media management. */  /* Media management. */
 static int      temac_mediachange(struct ifnet *);  
 static void     temac_mediastatus(struct ifnet *, struct ifmediareq *);  
 static int      temac_mii_readreg(struct device *, int, int);  static int      temac_mii_readreg(struct device *, int, int);
 static void     temac_mii_statchg(struct device *);  static void     temac_mii_statchg(struct device *);
 static void     temac_mii_tick(void *);  static void     temac_mii_tick(void *);
Line 500  temac_attach(struct device *parent, stru
Line 498  temac_attach(struct device *parent, stru
         mii->mii_readreg = temac_mii_readreg;          mii->mii_readreg = temac_mii_readreg;
         mii->mii_writereg = temac_mii_writereg;          mii->mii_writereg = temac_mii_writereg;
         mii->mii_statchg = temac_mii_statchg;          mii->mii_statchg = temac_mii_statchg;
         ifmedia_init(&mii->mii_media, 0, temac_mediachange,          sc->sc_ec.ec_mii = mii;
             temac_mediastatus);          ifmedia_init(&mii->mii_media, 0, ether_mediachange, ether_mediastatus);
   
         mii_attach(&sc->sc_dev, mii, 0xffffffff, MII_PHY_ANY,          mii_attach(&sc->sc_dev, mii, 0xffffffff, MII_PHY_ANY,
             MII_OFFSET_ANY, 0);              MII_OFFSET_ANY, 0);
Line 593  temac_init(struct ifnet *ifp)
Line 591  temac_init(struct ifnet *ifp)
         cdmac_rx_reset(sc);          cdmac_rx_reset(sc);
   
         /* Set current media. */          /* Set current media. */
         mii_mediachg(&sc->sc_mii);          if ((error = ether_mediachange(ifp)) != 0)
                   return error;
   
         callout_schedule(&sc->sc_mii_tick, hz);          callout_schedule(&sc->sc_mii_tick, hz);
   
         /* Enable EMAC engine. */          /* Enable EMAC engine. */
Line 653  temac_ioctl(struct ifnet *ifp, u_long cm
Line 653  temac_ioctl(struct ifnet *ifp, u_long cm
         int                     s, ret;          int                     s, ret;
   
         s = splnet();          s = splnet();
         if (sc->sc_dead) {          if (sc->sc_dead)
                 ret = EIO;                  ret = EIO;
         } else          else
                 switch (cmd) {                  ret = ether_ioctl(ifp, cmd, data);
                 case SIOCSIFMEDIA:  
                 case SIOCGIFMEDIA:  
                         ret = ifmedia_ioctl(ifp, ifr, &sc->sc_mii.mii_media,  
                             cmd);  
                         break;  
   
                 default:  
                         ret = ether_ioctl(ifp, cmd, data);  
                         break;  
                 }  
   
         splx(s);          splx(s);
         return (ret);          return (ret);
 }  }
Line 839  temac_stop(struct ifnet *ifp, int disabl
Line 828  temac_stop(struct ifnet *ifp, int disabl
         ifp->if_flags &= ~(IFF_RUNNING|IFF_OACTIVE);          ifp->if_flags &= ~(IFF_RUNNING|IFF_OACTIVE);
 }  }
   
 /*  
  * Media management.  
  */  
 static int  
 temac_mediachange(struct ifnet *ifp)  
 {  
         struct temac_softc      *sc = (struct temac_softc *)ifp->if_softc;  
   
         if (ifp->if_flags & IFF_UP)  
                 mii_mediachg(&sc->sc_mii);  
         return (0);  
 }  
   
 static void  
 temac_mediastatus(struct ifnet *ifp, struct ifmediareq *imr)  
 {  
         struct temac_softc      *sc = (struct temac_softc *)ifp->if_softc;  
   
         mii_pollstat(&sc->sc_mii);  
   
         imr->ifm_status = sc->sc_mii.mii_media_status;  
         imr->ifm_active = sc->sc_mii.mii_media_active;  
 }  
   
 static int  static int
 temac_mii_readreg(struct device *self, int phy, int reg)  temac_mii_readreg(struct device *self, int phy, int reg)
 {  {

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

CVSweb <webmaster@jp.NetBSD.org>