diff options
author | Jouni Malinen <j@w1.fi> | 2008-10-30 10:59:24 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-11-10 15:17:40 -0500 |
commit | 318884875bdddca663ecc373c813cf8e117d9e43 (patch) | |
tree | de9cfbe0bf24bea0ab1546a0613fbc9417bb6cb8 /include/net | |
parent | 1e898ff83c31c303f73c3893d1ac519e4d9b59e5 (diff) |
nl80211: Add TX queue parameter configuration
Add a new attribute, NL80211_ATTR_WIPHY_TXQ_PARAMS, that can be used with
NL80211_CMD_SET_WIPHY for userspace (e.g., hostapd) to set TX queue
parameters (txop, cwmin, cwmax, aifs).
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/cfg80211.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 7caf3c76a12..448023193e5 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -371,6 +371,24 @@ struct mesh_config { | |||
371 | u16 dot11MeshHWMPnetDiameterTraversalTime; | 371 | u16 dot11MeshHWMPnetDiameterTraversalTime; |
372 | }; | 372 | }; |
373 | 373 | ||
374 | /** | ||
375 | * struct ieee80211_txq_params - TX queue parameters | ||
376 | * @queue: TX queue identifier (NL80211_TXQ_Q_*) | ||
377 | * @txop: Maximum burst time in units of 32 usecs, 0 meaning disabled | ||
378 | * @cwmin: Minimum contention window [a value of the form 2^n-1 in the range | ||
379 | * 1..32767] | ||
380 | * @cwmax: Maximum contention window [a value of the form 2^n-1 in the range | ||
381 | * 1..32767] | ||
382 | * @aifs: Arbitration interframe space [0..255] | ||
383 | */ | ||
384 | struct ieee80211_txq_params { | ||
385 | enum nl80211_txq_q queue; | ||
386 | u16 txop; | ||
387 | u16 cwmin; | ||
388 | u16 cwmax; | ||
389 | u8 aifs; | ||
390 | }; | ||
391 | |||
374 | /* from net/wireless.h */ | 392 | /* from net/wireless.h */ |
375 | struct wiphy; | 393 | struct wiphy; |
376 | 394 | ||
@@ -430,6 +448,8 @@ struct wiphy; | |||
430 | * @set_mesh_cfg: set mesh parameters (by now, just mesh id) | 448 | * @set_mesh_cfg: set mesh parameters (by now, just mesh id) |
431 | * | 449 | * |
432 | * @change_bss: Modify parameters for a given BSS. | 450 | * @change_bss: Modify parameters for a given BSS. |
451 | * | ||
452 | * @set_txq_params: Set TX queue parameters | ||
433 | */ | 453 | */ |
434 | struct cfg80211_ops { | 454 | struct cfg80211_ops { |
435 | int (*add_virtual_intf)(struct wiphy *wiphy, char *name, | 455 | int (*add_virtual_intf)(struct wiphy *wiphy, char *name, |
@@ -490,6 +510,9 @@ struct cfg80211_ops { | |||
490 | const struct mesh_config *nconf, u32 mask); | 510 | const struct mesh_config *nconf, u32 mask); |
491 | int (*change_bss)(struct wiphy *wiphy, struct net_device *dev, | 511 | int (*change_bss)(struct wiphy *wiphy, struct net_device *dev, |
492 | struct bss_parameters *params); | 512 | struct bss_parameters *params); |
513 | |||
514 | int (*set_txq_params)(struct wiphy *wiphy, | ||
515 | struct ieee80211_txq_params *params); | ||
493 | }; | 516 | }; |
494 | 517 | ||
495 | #endif /* __NET_CFG80211_H */ | 518 | #endif /* __NET_CFG80211_H */ |