Mechanically convert dtsec(4) to IfAPI

Sponsored by:	Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D37815
This commit is contained in:
Justin Hibbits 2022-08-17 16:13:23 -04:00
parent 053a24d12c
commit 0083fc5c76
2 changed files with 24 additions and 25 deletions

View file

@ -392,13 +392,13 @@ dtsec_if_disable_locked(struct dtsec_softc *sc)
} }
static int static int
dtsec_if_ioctl(struct ifnet *ifp, u_long command, caddr_t data) dtsec_if_ioctl(if_t ifp, u_long command, caddr_t data)
{ {
struct dtsec_softc *sc; struct dtsec_softc *sc;
struct ifreq *ifr; struct ifreq *ifr;
int error; int error;
sc = ifp->if_softc; sc = if_getsoftc(ifp);
ifr = (struct ifreq *)data; ifr = (struct ifreq *)data;
error = 0; error = 0;
@ -407,7 +407,7 @@ dtsec_if_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
case SIOCSIFMTU: case SIOCSIFMTU:
DTSEC_LOCK(sc); DTSEC_LOCK(sc);
if (dtsec_set_mtu(sc, ifr->ifr_mtu)) if (dtsec_set_mtu(sc, ifr->ifr_mtu))
ifp->if_mtu = ifr->ifr_mtu; if_setmtu(ifp, ifr->ifr_mtu);
else else
error = EINVAL; error = EINVAL;
DTSEC_UNLOCK(sc); DTSEC_UNLOCK(sc);
@ -472,7 +472,7 @@ dtsec_if_init_locked(struct dtsec_softc *sc)
/* Set MAC address */ /* Set MAC address */
error = FM_MAC_ModifyMacAddr(sc->sc_mach, error = FM_MAC_ModifyMacAddr(sc->sc_mach,
(t_EnetAddr *)IF_LLADDR(sc->sc_ifnet)); (t_EnetAddr *)if_getlladdr(sc->sc_ifnet));
if (error != E_OK) { if (error != E_OK) {
device_printf(sc->sc_dev, "couldn't set MAC address.\n"); device_printf(sc->sc_dev, "couldn't set MAC address.\n");
goto err; goto err;
@ -513,18 +513,18 @@ dtsec_if_init(void *data)
} }
static void static void
dtsec_if_start(struct ifnet *ifp) dtsec_if_start(if_t ifp)
{ {
struct dtsec_softc *sc; struct dtsec_softc *sc;
sc = ifp->if_softc; sc = if_getsoftc(ifp);
DTSEC_LOCK(sc); DTSEC_LOCK(sc);
sc->sc_start_locked(sc); sc->sc_start_locked(sc);
DTSEC_UNLOCK(sc); DTSEC_UNLOCK(sc);
} }
static void static void
dtsec_if_watchdog(struct ifnet *ifp) dtsec_if_watchdog(if_t ifp)
{ {
/* TODO */ /* TODO */
} }
@ -536,9 +536,9 @@ dtsec_if_watchdog(struct ifnet *ifp)
* @{ * @{
*/ */
static int static int
dtsec_ifmedia_upd(struct ifnet *ifp) dtsec_ifmedia_upd(if_t ifp)
{ {
struct dtsec_softc *sc = ifp->if_softc; struct dtsec_softc *sc = if_getsoftc(ifp);
DTSEC_LOCK(sc); DTSEC_LOCK(sc);
mii_mediachg(sc->sc_mii); mii_mediachg(sc->sc_mii);
@ -548,9 +548,9 @@ dtsec_ifmedia_upd(struct ifnet *ifp)
} }
static void static void
dtsec_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) dtsec_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr)
{ {
struct dtsec_softc *sc = ifp->if_softc; struct dtsec_softc *sc = if_getsoftc(ifp);
DTSEC_LOCK(sc); DTSEC_LOCK(sc);
@ -599,7 +599,7 @@ dtsec_attach(device_t dev)
struct dtsec_softc *sc; struct dtsec_softc *sc;
device_t parent; device_t parent;
int error; int error;
struct ifnet *ifp; if_t ifp;
sc = device_get_softc(dev); sc = device_get_softc(dev);
@ -686,13 +686,13 @@ dtsec_attach(device_t dev)
return (ENOMEM); return (ENOMEM);
} }
ifp->if_softc = sc; if_setsoftc(ifp, sc);
ifp->if_mtu = ETHERMTU; /* TODO: Configure */
ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST; if_setflags(ifp, IFF_SIMPLEX | IFF_BROADCAST);
ifp->if_init = dtsec_if_init; if_setinitfn(ifp, dtsec_if_init);
ifp->if_start = dtsec_if_start; if_setstartfn(ifp, dtsec_if_start);
ifp->if_ioctl = dtsec_if_ioctl; if_setioctlfn(ifp, dtsec_if_ioctl);
ifp->if_snd.ifq_maxlen = IFQ_MAXLEN; if_setsendqlen(ifp, IFQ_MAXLEN);
if (sc->sc_phy_addr >= 0) if (sc->sc_phy_addr >= 0)
if_initname(ifp, device_get_name(sc->sc_dev), if_initname(ifp, device_get_name(sc->sc_dev),
@ -702,12 +702,11 @@ dtsec_attach(device_t dev)
/* TODO */ /* TODO */
#if 0 #if 0
IFQ_SET_MAXLEN(&ifp->if_snd, TSEC_TX_NUM_DESC - 1); if_setsendqlen(ifp, TSEC_TX_NUM_DESC - 1);
ifp->if_snd.ifq_drv_maxlen = TSEC_TX_NUM_DESC - 1; if_setsendqready(ifp);
IFQ_SET_READY(&ifp->if_snd);
#endif #endif
ifp->if_capabilities = IFCAP_JUMBO_MTU; /* TODO: HWCSUM */
ifp->if_capenable = ifp->if_capabilities; if_setcapenable(ifp, if_getcapabilities(ifp));
/* Attach PHY(s) */ /* Attach PHY(s) */
error = mii_attach(sc->sc_dev, &sc->sc_mii_dev, ifp, dtsec_ifmedia_upd, error = mii_attach(sc->sc_dev, &sc->sc_mii_dev, ifp, dtsec_ifmedia_upd,

View file

@ -49,7 +49,7 @@ enum eth_dev_type {
struct dtsec_softc { struct dtsec_softc {
/* XXX MII bus requires that struct ifnet is first!!! */ /* XXX MII bus requires that struct ifnet is first!!! */
struct ifnet *sc_ifnet; if_t sc_ifnet;
device_t sc_dev; device_t sc_dev;
struct resource *sc_mem; struct resource *sc_mem;