1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00

Update wpi(4) to use the new mgmt RX API.

This commit is contained in:
Adrian Chadd 2015-05-25 17:06:52 +00:00
parent c79f192c09
commit b66af287ad
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=283536
2 changed files with 10 additions and 6 deletions

View File

@ -177,8 +177,9 @@ static int wpi_add_node_entry_adhoc(struct wpi_softc *);
static struct ieee80211_node *wpi_node_alloc(struct ieee80211vap *, static struct ieee80211_node *wpi_node_alloc(struct ieee80211vap *,
const uint8_t mac[IEEE80211_ADDR_LEN]); const uint8_t mac[IEEE80211_ADDR_LEN]);
static void wpi_node_free(struct ieee80211_node *); static void wpi_node_free(struct ieee80211_node *);
static void wpi_recv_mgmt(struct ieee80211_node *, struct mbuf *, int, int, static void wpi_recv_mgmt(struct ieee80211_node *, struct mbuf *, int,
int); const struct ieee80211_rx_stats *,
int, int);
static void wpi_restore_node(void *, struct ieee80211_node *); static void wpi_restore_node(void *, struct ieee80211_node *);
static void wpi_restore_node_table(struct wpi_softc *, struct wpi_vap *); static void wpi_restore_node_table(struct wpi_softc *, struct wpi_vap *);
static int wpi_newstate(struct ieee80211vap *, enum ieee80211_state, int); static int wpi_newstate(struct ieee80211vap *, enum ieee80211_state, int);
@ -1693,15 +1694,16 @@ wpi_check_bss_filter(struct wpi_softc *sc)
} }
static void static void
wpi_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m, int subtype, int rssi, wpi_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m, int subtype,
int nf) const struct ieee80211_rx_stats *rxs,
int rssi, int nf)
{ {
struct ieee80211vap *vap = ni->ni_vap; struct ieee80211vap *vap = ni->ni_vap;
struct wpi_softc *sc = vap->iv_ic->ic_ifp->if_softc; struct wpi_softc *sc = vap->iv_ic->ic_ifp->if_softc;
struct wpi_vap *wvp = WPI_VAP(vap); struct wpi_vap *wvp = WPI_VAP(vap);
uint64_t ni_tstamp, rx_tstamp; uint64_t ni_tstamp, rx_tstamp;
wvp->wv_recv_mgmt(ni, m, subtype, rssi, nf); wvp->wv_recv_mgmt(ni, m, subtype, rxs, rssi, nf);
if (vap->iv_opmode == IEEE80211_M_IBSS && if (vap->iv_opmode == IEEE80211_M_IBSS &&
vap->iv_state == IEEE80211_S_RUN && vap->iv_state == IEEE80211_S_RUN &&

View File

@ -133,7 +133,9 @@ struct wpi_vap {
int (*wv_newstate)(struct ieee80211vap *, int (*wv_newstate)(struct ieee80211vap *,
enum ieee80211_state, int); enum ieee80211_state, int);
void (*wv_recv_mgmt)(struct ieee80211_node *, void (*wv_recv_mgmt)(struct ieee80211_node *,
struct mbuf *, int, int, int); struct mbuf *, int,
const struct ieee80211_rx_stats *,
int, int);
}; };
#define WPI_VAP(vap) ((struct wpi_vap *)(vap)) #define WPI_VAP(vap) ((struct wpi_vap *)(vap))