From d03baf357863d2925f99939f72e988a2b3b6ee0d Mon Sep 17 00:00:00 2001 From: Adrian Chadd Date: Sat, 22 Apr 2017 02:12:07 +0000 Subject: [PATCH] [net80211] add methods to fetch the global and per-VAP WME parameters. For now there isn't any per-VAP WME state. The eventual aim is to migrate the driver direct use of WME parameters over to use these methods as appropriate (global for most devices, per-VAP for firmware NICs that support it) in preparation for actual per-VAP WME (and other thing) state change support. --- sys/net80211/ieee80211_proto.c | 14 ++++++++++++++ sys/net80211/ieee80211_proto.h | 4 ++++ 2 files changed, 18 insertions(+) diff --git a/sys/net80211/ieee80211_proto.c b/sys/net80211/ieee80211_proto.c index e27468308163..cdc46059c23b 100644 --- a/sys/net80211/ieee80211_proto.c +++ b/sys/net80211/ieee80211_proto.c @@ -1306,6 +1306,20 @@ ieee80211_wme_updateparams(struct ieee80211vap *vap) } } +void +ieee80211_wme_vap_getparams(struct ieee80211vap *vap, struct chanAccParams *wp) +{ + + memcpy(wp, &vap->iv_ic->ic_wme.wme_chanParams, sizeof(*wp)); +} + +void +ieee80211_wme_ic_getparams(struct ieee80211com *ic, struct chanAccParams *wp) +{ + + memcpy(wp, &ic->ic_wme.wme_chanParams, sizeof(*wp)); +} + static void parent_updown(void *arg, int npending) { diff --git a/sys/net80211/ieee80211_proto.h b/sys/net80211/ieee80211_proto.h index 784179fd4317..b9aef7cb9d1b 100644 --- a/sys/net80211/ieee80211_proto.h +++ b/sys/net80211/ieee80211_proto.h @@ -292,6 +292,10 @@ struct ieee80211_wme_state { void ieee80211_wme_initparams(struct ieee80211vap *); void ieee80211_wme_updateparams(struct ieee80211vap *); void ieee80211_wme_updateparams_locked(struct ieee80211vap *); +void ieee80211_wme_vap_getparams(struct ieee80211vap *vap, + struct chanAccParams *); +void ieee80211_wme_ic_getparams(struct ieee80211com *ic, + struct chanAccParams *); /* * Return the WME TID from a QoS frame. If no TID