summaryrefslogtreecommitdiffstats
path: root/sys/dev/if_ndis/if_ndisvar.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/if_ndis/if_ndisvar.h')
-rw-r--r--sys/dev/if_ndis/if_ndisvar.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/sys/dev/if_ndis/if_ndisvar.h b/sys/dev/if_ndis/if_ndisvar.h
index f98db0a..e3b1a39 100644
--- a/sys/dev/if_ndis/if_ndisvar.h
+++ b/sys/dev/if_ndis/if_ndisvar.h
@@ -152,8 +152,22 @@ struct ndisusb_task {
};
struct ndis_softc {
- struct ifnet *ifp;
- struct ifmedia ifmedia; /* media info */
+ u_int ndis_80211:1,
+ ndis_link:1,
+ ndis_running:1;
+ union {
+ struct { /* Ethernet */
+ struct ifnet *ifp;
+ struct ifmedia ifmedia;
+ int ndis_if_flags;
+ };
+ struct { /* Wireless */
+ struct ieee80211com ndis_ic;
+ struct callout ndis_scan_callout;
+ int (*ndis_newstate)(struct ieee80211com *,
+ enum ieee80211_state, int);
+ };
+ };
u_long ndis_hwassist;
uint32_t ndis_v4tx;
uint32_t ndis_v4rx;
@@ -180,7 +194,6 @@ struct ndis_softc {
ndis_miniport_block *ndis_block;
ndis_miniport_characteristics *ndis_chars;
interface_type ndis_type;
- struct callout ndis_scan_callout;
struct callout ndis_stat_callout;
int ndis_maxpkts;
ndis_oid *ndis_oids;
@@ -192,13 +205,9 @@ struct ndis_softc {
int ndis_sc;
ndis_cfg *ndis_regvals;
struct nch ndis_cfglist_head;
- int ndis_80211;
- int ndis_link;
uint32_t ndis_sts;
uint32_t ndis_filter;
- int ndis_if_flags;
int ndis_skip;
-
int ndis_devidx;
interface_type ndis_iftype;
driver_object *ndis_dobj;
@@ -217,11 +226,9 @@ struct ndis_softc {
struct ndis_evt ndis_evt[NDIS_EVENTS];
int ndis_evtpidx;
int ndis_evtcidx;
- struct ifqueue ndis_rxqueue;
+ struct mbufq ndis_rxqueue;
kspin_lock ndis_rxlock;
- int (*ndis_newstate)(struct ieee80211com *,
- enum ieee80211_state, int);
int ndis_tx_timer;
int ndis_hang_timer;
OpenPOWER on IntegriCloud