mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 02:39:48 +00:00
![Johannes Berg](/assets/img/avatar_default.png)
Use the currently existing APIs between mac80211 and the low level driver to implement WMM admission control. The low level driver needs to report the media time used by each transmitted packet in ieee80211_tx_status. Based on that information, mac80211 will modify the QoS parameters of the admission controlled Access Category when the limit is reached. Once the original QoS parameters can be restored, mac80211 will do so. One issue with this approach is that management frames will also erroneously be downgraded, but the upside is that the implementation is simple. In the future, it can be extended to driver- or device-based implementations that are better. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
24 lines
709 B
C
24 lines
709 B
C
/*
|
|
* Copyright 2004, Instant802 Networks, Inc.
|
|
* Copyright 2005, Devicescape Software, Inc.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
#ifndef _WME_H
|
|
#define _WME_H
|
|
|
|
#include <linux/netdevice.h>
|
|
#include "ieee80211_i.h"
|
|
|
|
u16 ieee80211_select_queue_80211(struct ieee80211_sub_if_data *sdata,
|
|
struct sk_buff *skb,
|
|
struct ieee80211_hdr *hdr);
|
|
u16 ieee80211_select_queue(struct ieee80211_sub_if_data *sdata,
|
|
struct sk_buff *skb);
|
|
void ieee80211_set_qos_hdr(struct ieee80211_sub_if_data *sdata,
|
|
struct sk_buff *skb);
|
|
|
|
#endif /* _WME_H */
|