summaryrefslogtreecommitdiff
path: root/drivers/staging/cw1200/main.c
diff options
context:
space:
mode:
authorBartosz Markowski <bartosz.markowski@tieto.com>2011-09-27 08:27:19 +0200
committerPhilippe LANGLAIS <philippe.langlais@stericsson.com>2011-10-13 10:18:53 +0200
commit4716cbebb6bb0f839605f68bdec0f1558d69a728 (patch)
treeb4fe9fbcbc6bee841726acf0b3ab066c0d363873 /drivers/staging/cw1200/main.c
parentafa3d7b12a74b0583e5c46f8a4d889a2086691ff (diff)
cw1200: UAPSD in AP mode is implemented.
U-APSD in SoftAP is fully offloaded to the mac80211 wireless stack. Driver provides a transparent virtual link (with link_id = CW1200_LINK_ID_UAPSD) which bypases powersave buffering. Mac80211 stack takes care to provide UAPSD data when it is needed. ST-Ericsson ID: 355584 Change-Id: Iabd65e7effcecc5564e76e05e081b8f6a98b4ddb Signed-off-by: Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/30661 Reviewed-by: Bartosz MARKOWSKI <bartosz.markowski@tieto.com> Tested-by: Bartosz MARKOWSKI <bartosz.markowski@tieto.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/33529 Reviewed-by: Philippe LANGLAIS <philippe.langlais@stericsson.com>
Diffstat (limited to 'drivers/staging/cw1200/main.c')
-rw-r--r--drivers/staging/cw1200/main.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/staging/cw1200/main.c b/drivers/staging/cw1200/main.c
index 95149da6081..d8e4ecf1af4 100644
--- a/drivers/staging/cw1200/main.c
+++ b/drivers/staging/cw1200/main.c
@@ -277,6 +277,8 @@ struct ieee80211_hw *cw1200_init_common(size_t priv_data_len)
WIPHY_WOWLAN_DISCONNECT;
hw->wiphy->wowlan.n_patterns = 0;
+ hw->wiphy->flags |= WIPHY_FLAG_SUPPORTS_UAPSD;
+
hw->channel_change_time = 1000; /* TODO: find actual value */
/* priv->beacon_req_id = cpu_to_le32(0); */
hw->queues = 4;
@@ -341,7 +343,7 @@ struct ieee80211_hw *cw1200_init_common(size_t priv_data_len)
}
if (unlikely(cw1200_queue_stats_init(&priv->tx_queue_stats,
- CW1200_LINK_ID_AFTER_DTIM + 1))) {
+ CW1200_LINK_ID_MAX))) {
ieee80211_free_hw(hw);
return NULL;
}