Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F153745745
D37808.id114434.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
7 KB
Referenced Files
None
Subscribers
None
D37808.id114434.diff
View Options
diff --git a/sys/dev/sume/adapter.h b/sys/dev/sume/adapter.h
--- a/sys/dev/sume/adapter.h
+++ b/sys/dev/sume/adapter.h
@@ -180,7 +180,7 @@
struct riffa_chnl_dir **recv;
struct riffa_chnl_dir **send;
device_t dev;
- struct ifnet *ifp[SUME_NPORTS];
+ if_t ifp[SUME_NPORTS];
struct resource *bar0_addr;
bus_space_tag_t bt;
bus_space_handle_t bh;
diff --git a/sys/dev/sume/if_sume.c b/sys/dev/sume/if_sume.c
--- a/sys/dev/sume/if_sume.c
+++ b/sys/dev/sume/if_sume.c
@@ -214,7 +214,7 @@
{
struct nf_priv *nf_priv;
struct mbuf *m;
- struct ifnet *ifp = NULL;
+ if_t ifp = NULL;
int np;
uint16_t dport, plen, magic;
device_t dev = adapter->dev;
@@ -253,12 +253,12 @@
return (NULL);
}
ifp = adapter->ifp[np];
- nf_priv = ifp->if_softc;
+ nf_priv = if_getsoftc(ifp);
nf_priv->stats.rx_packets++;
nf_priv->stats.rx_bytes += plen;
/* If the interface is down, well, we are done. */
- if (!(ifp->if_flags & IFF_UP)) {
+ if (!(if_getflags(ifp) & IFF_UP)) {
nf_priv->stats.ifc_down_packets++;
nf_priv->stats.ifc_down_bytes += plen;
return (NULL);
@@ -324,7 +324,7 @@
int ch, loops;
device_t dev = adapter->dev;
struct mbuf *m = NULL;
- struct ifnet *ifp = NULL;
+ if_t ifp = NULL;
struct riffa_chnl_dir *send, *recv;
SUME_LOCK(adapter);
@@ -540,7 +540,7 @@
if (m != NULL) {
ifp = m->m_pkthdr.rcvif;
- (*ifp->if_input)(ifp, m);
+ if_input(ifp, m);
}
}
@@ -876,10 +876,10 @@
}
static int
-sume_if_ioctl(struct ifnet *ifp, unsigned long cmd, caddr_t data)
+sume_if_ioctl(if_t ifp, unsigned long cmd, caddr_t data)
{
struct ifreq *ifr = (struct ifreq *) data;
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct sume_ifreq sifr;
int error = 0;
@@ -917,7 +917,7 @@
case SIOCSIFFLAGS:
/* Silence tcpdump 'promisc mode not supported' warning. */
- if (ifp->if_flags & IFF_PROMISC)
+ if (if_getflags(ifp) & IFF_PROMISC)
break;
default:
@@ -929,26 +929,26 @@
}
static int
-sume_media_change(struct ifnet *ifp)
+sume_media_change(if_t ifp)
{
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct ifmedia *ifm = &nf_priv->media;
if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER)
return (EINVAL);
if (IFM_SUBTYPE(ifm->ifm_media) == IFM_10G_SR)
- ifp->if_baudrate = ifmedia_baudrate(IFM_ETHER | IFM_10G_SR);
+ if_setbaudrate(ifp, ifmedia_baudrate(IFM_ETHER | IFM_10G_SR));
else
- ifp->if_baudrate = ifmedia_baudrate(ifm->ifm_media);
+ if_setbaudrate(ifp, ifmedia_baudrate(ifm->ifm_media));
return (0);
}
static void
-sume_update_link_status(struct ifnet *ifp)
+sume_update_link_status(if_t ifp)
{
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct sume_adapter *adapter = nf_priv->adapter;
struct sume_ifreq sifr;
int link_status;
@@ -977,13 +977,13 @@
}
static void
-sume_media_status(struct ifnet *ifp, struct ifmediareq *ifmr)
+sume_media_status(if_t ifp, struct ifmediareq *ifmr)
{
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct ifmedia *ifm = &nf_priv->media;
if (ifm->ifm_cur->ifm_media == (IFM_ETHER | IFM_10G_SR) &&
- (ifp->if_flags & IFF_UP))
+ (if_getflags(ifp) & IFF_UP))
ifmr->ifm_active = IFM_ETHER | IFM_10G_SR;
else
ifmr->ifm_active = ifm->ifm_cur->ifm_media;
@@ -1006,10 +1006,10 @@
* transaction.
*/
static int
-sume_if_start_locked(struct ifnet *ifp)
+sume_if_start_locked(if_t ifp)
{
struct mbuf *m;
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct sume_adapter *adapter = nf_priv->adapter;
struct riffa_chnl_dir *send = adapter->send[SUME_RIFFA_CHANNEL_DATA];
uint8_t *outbuf;
@@ -1020,7 +1020,7 @@
KASSERT(send->state == SUME_RIFFA_CHAN_STATE_IDLE,
("SUME not in IDLE state"));
- IFQ_DEQUEUE(&ifp->if_snd, m);
+ m = if_dequeue(ifp);
if (m == NULL)
return (EINVAL);
@@ -1106,12 +1106,12 @@
}
static void
-sume_if_start(struct ifnet *ifp)
+sume_if_start(if_t ifp)
{
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct sume_adapter *adapter = nf_priv->adapter;
- if (!adapter->running || !(ifp->if_flags & IFF_UP))
+ if (!adapter->running || !(if_getflags(ifp) & IFF_UP))
return;
SUME_LOCK(adapter);
@@ -1136,9 +1136,9 @@
/* Check all interfaces */
for (i = last_ifc + 1; i < last_ifc + SUME_NPORTS + 1; i++) {
- struct ifnet *ifp = adapter->ifp[i % SUME_NPORTS];
+ if_t ifp = adapter->ifp[i % SUME_NPORTS];
- if (!(ifp->if_flags & IFF_UP))
+ if (!(if_getflags(ifp) & IFF_UP))
continue;
if (!sume_if_start_locked(ifp))
@@ -1149,7 +1149,7 @@
static int
sume_ifp_alloc(struct sume_adapter *adapter, uint32_t port)
{
- struct ifnet *ifp;
+ if_t ifp;
struct nf_priv *nf_priv = malloc(sizeof(struct nf_priv), M_SUME,
M_ZERO | M_WAITOK);
@@ -1160,7 +1160,7 @@
}
adapter->ifp[port] = ifp;
- ifp->if_softc = nf_priv;
+ if_setsoftc(ifp, nf_priv);
nf_priv->adapter = adapter;
nf_priv->unit = alloc_unr(unr);
@@ -1168,11 +1168,11 @@
nf_priv->link_up = 0;
if_initname(ifp, SUME_ETH_DEVICE_NAME, nf_priv->unit);
- ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST;
+ if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST);
- ifp->if_init = sume_if_init;
- ifp->if_start = sume_if_start;
- ifp->if_ioctl = sume_if_ioctl;
+ if_setinitfn(ifp, sume_if_init);
+ if_setstartfn(ifp, sume_if_start);
+ if_setioctlfn(ifp, sume_if_ioctl);
uint8_t hw_addr[ETHER_ADDR_LEN] = DEFAULT_ETHER_ADDRESS;
hw_addr[ETHER_ADDR_LEN-1] = nf_priv->unit;
@@ -1183,7 +1183,7 @@
ifmedia_add(&nf_priv->media, IFM_ETHER | IFM_10G_SR, 0, NULL);
ifmedia_set(&nf_priv->media, IFM_ETHER | IFM_10G_SR);
- ifp->if_drv_flags |= IFF_DRV_RUNNING;
+ if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0);
return (0);
}
@@ -1317,11 +1317,11 @@
CTLFLAG_RD, &adapter->bytes_err, 0, "rx error bytes");
for (i = SUME_NPORTS - 1; i >= 0; i--) {
- struct ifnet *ifp = adapter->ifp[i];
+ if_t ifp = adapter->ifp[i];
if (ifp == NULL)
continue;
- struct nf_priv *nf_priv = ifp->if_softc;
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
snprintf(namebuf, MAX_IFC_NAME_LEN, "%s%d",
SUME_ETH_DEVICE_NAME, nf_priv->unit);
@@ -1409,10 +1409,10 @@
int i;
for (i = 0; i < SUME_NPORTS; i++) {
- struct ifnet *ifp = adapter->ifp[i];
+ if_t ifp = adapter->ifp[i];
- if (ifp->if_flags & IFF_UP) {
- struct nf_priv *nf_priv = ifp->if_softc;
+ if (if_getflags(ifp) & IFF_UP) {
+ struct nf_priv *nf_priv = if_getsoftc(ifp);
struct sume_ifreq sifr;
sume_update_link_status(ifp);
@@ -1543,19 +1543,19 @@
}
for (i = 0; i < SUME_NPORTS; i++) {
- struct ifnet *ifp = adapter->ifp[i];
+ if_t ifp = adapter->ifp[i];
if (ifp == NULL)
continue;
- ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
- nf_priv = ifp->if_softc;
+ if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING);
+ nf_priv = if_getsoftc(ifp);
- if (ifp->if_flags & IFF_UP)
+ if (if_getflags(ifp) & IFF_UP)
if_down(ifp);
ifmedia_removeall(&nf_priv->media);
free_unr(unr, nf_priv->unit);
- ifp->if_flags &= ~IFF_UP;
+ if_setflagbits(ifp, 0, IFF_UP);
ether_ifdetach(ifp);
if_free(ifp);
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Apr 24, 9:31 AM (1 h, 58 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32071029
Default Alt Text
D37808.id114434.diff (7 KB)
Attached To
Mode
D37808: Mechanically convert if_sume(4) to DrvAPI
Attached
Detach File
Event Timeline
Log In to Comment