There is no need to execute filter configuration when driver is not

running. Remove wrong driver state change in dc_setfilt_xircom().
While I'm here nuke unnecessary assignments.
This commit is contained in:
Pyun YongHyeon 2011-02-18 23:08:05 +00:00
parent 52c43a473e
commit 24507bc168
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=218827

View File

@ -1334,7 +1334,6 @@ dc_setfilt_xircom(struct dc_softc *sc)
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_TX_ON);
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_RX_ON);
ifp->if_drv_flags |= IFF_DRV_RUNNING;
sframe->dc_status = htole32(DC_TXSTAT_OWN);
CSR_WRITE_4(sc, DC_TXSTART, 0xFFFFFFFF);
@ -3696,14 +3695,13 @@ dc_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
}
sc->dc_if_flags = ifp->if_flags;
DC_UNLOCK(sc);
error = 0;
break;
case SIOCADDMULTI:
case SIOCDELMULTI:
DC_LOCK(sc);
dc_setfilt(sc);
if (ifp->if_drv_flags & IFF_DRV_RUNNING)
dc_setfilt(sc);
DC_UNLOCK(sc);
error = 0;
break;
case SIOCGIFMEDIA:
case SIOCSIFMEDIA: