mac80211: notify driver for change in multicast rates
PATCH v2 1/1 mac80211: notify driver for change in multicast rates
It is required to pass the rate information to driver/firmware when rate control is offloaded to firmware. This helps in changing multicast traffic rates thereby improving the network performance.
Signed-off-by Pradeep Kumar Chitrapu <[email protected]>
---
V2:
- Set the flag in missing places
include/net/mac80211.h | 1 + net/mac80211/cfg.c | 2 ++ net/mac80211/ibss.c | 2 +- net/mac80211/mesh.c | 3 ++- net/mac80211/util.c | 3 ++- 5 files changed, 8 insertions(+), 3 deletions(-)
include/net/mac80211.h +1 -0
@@ -336,6 +336,7 @@ enum ieee80211_bss_change {BSS_CHANGED_OCB =1 <<22 ,BSS_CHANGED_MU_GROUPS =1 <<23 ,BSS_CHANGED_KEEP_ALIVE =1 <<24 , + BSS_CHANGED_MCAST_RATE = 1<<25, /* when adding here, make sure to change ieee80211_reconfig */ };
net/mac80211/cfg.c +2 -0
@@ -2313,6 +2313,8 @@ static int ieee80211_set_mcast_rate(struct wiphy *wiphy, struct net_device *dev,memcpy (sdata->vif.bss_conf.mcast_rate, rate,sizeof (int ) *NUM_NL80211_BANDS ); +ieee80211_bss_info_change_notify (sdata,BSS_CHANGED_MCAST_RATE ); +return 0 ; }
net/mac80211/ibss.c +1 -1
@@ -1840,7 +1840,7 @@ int ieee80211_ibss_join(struct ieee80211_sub_if_data *sdata,IEEE80211_HT_OP_MODE_PROTECTION_NONHT_MIXED |IEEE80211_HT_PARAM_RIFS_MODE ; - changed |=BSS_CHANGED_HT ; + changed |=BSS_CHANGED_HT |BSS_CHANGED_MCAST_RATE ;ieee80211_bss_info_change_notify (sdata, changed); sdata->smps_mode =IEEE80211_SMPS_OFF ;
net/mac80211/mesh.c +2 -1
@@ -884,7 +884,8 @@ int ieee80211_start_mesh(struct ieee80211_sub_if_data *sdata)BSS_CHANGED_BEACON_ENABLED |BSS_CHANGED_HT |BSS_CHANGED_BASIC_RATES | -BSS_CHANGED_BEACON_INT ; +BSS_CHANGED_BEACON_INT | +BSS_CHANGED_MCAST_RATE ; local->fif_other_bss++;/* mesh ifaces must set allmulti to forward mcast traffic */
net/mac80211/util.c +2 -1
@@ -1971,7 +1971,8 @@ int ieee80211_reconfig(struct ieee80211_local *local)BSS_CHANGED_CQM |BSS_CHANGED_QOS |BSS_CHANGED_IDLE | -BSS_CHANGED_TXPOWER ; +BSS_CHANGED_TXPOWER | +BSS_CHANGED_MCAST_RATE ;if (sdata->vif.mu_mimo_owner) changed |=BSS_CHANGED_MU_GROUPS ;
Signature · 1 line
1.9.1
Johannes Berg
maintainerinclude/net/mac80211.h enum ieee80211_bss_change { · line 339
Quoted 9 lines · Pradeep Kumar Chitrapu
index 4c99c13..4360765 100644
include/net/mac80211.h +1
-0@@ -336,6 +336,7 @@ enum ieee80211_bss_change {BSS_CHANGED_OCB =1 <<22 ,BSS_CHANGED_MU_GROUPS =1 <<23 ,BSS_CHANGED_KEEP_ALIVE =1 <<24 , + BSS_CHANGED_MCAST_RATE = 1<<25,
Not sure why I missed this before, but you need to add documentation for this.
johannes