On 2011-11-16 12:21 AM, Simon Wunderlich wrote: > This patch adds support for NoAck per WMM Queue. The Unicast QoS > Header is adapted accordingly for each outgoing frame. > The support is turned on and off through nl80211 by extending > the WMM TX Queue Parameters, but can be triggered separately. > > I have tested this feature on ath9k as well as ath5k devices. There is > an iw patch as well to make use of this feature. > > It should apply well on the latest wireless-testing kernel. > > Signed-off-by: Simon Wunderlich <siwu@xxxxxxxxxxxxxxxxxx> > Signed-off-by: Mathias Kretschmer <mathias.kretschmer@xxxxxxxxxxxxxxxxxxx> > --- > include/linux/nl80211.h | 2 ++ > include/net/cfg80211.h | 7 +++++++ > include/net/mac80211.h | 2 ++ > net/mac80211/cfg.c | 21 +++++++++++++++++++++ > net/mac80211/tx.c | 5 +++++ > net/mac80211/util.c | 1 + > net/mac80211/wme.c | 5 ++++- > net/wireless/nl80211.c | 34 +++++++++++++++++++++++++++++----- > 8 files changed, 71 insertions(+), 6 deletions(-) > > @@ -832,6 +833,7 @@ struct ieee80211_txq_params { > u16 cwmin; > u16 cwmax; > u8 aifs; > + bool noack; > }; > > /* from net/wireless.h */ > @@ -1341,6 +1343,8 @@ struct cfg80211_gtk_rekey_data { > * > * @set_txq_params: Set TX queue parameters > * > + * @set_txq_noack: Set TX queue NoAck Parameter > + * > * @set_channel: Set channel for a given wireless interface. Some devices > * may support multi-channel operation (by channel hopping) so cfg80211 > * doesn't verify much. Note, however, that the passed netdev may be > @@ -1521,6 +1525,9 @@ struct cfg80211_ops { > int (*set_txq_params)(struct wiphy *wiphy, struct net_device *dev, > struct ieee80211_txq_params *params); > > + int (*set_txq_noack)(struct wiphy *wiphy, struct net_device *dev, > + struct ieee80211_txq_params *params); > + > int (*set_channel)(struct wiphy *wiphy, struct net_device *dev, > struct ieee80211_channel *chan, > enum nl80211_channel_type channel_type); Why add a separate cfg80211 op when you can just make use of the extra parameter in the existing one? - Felix -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html