ath6kl: Export beacon interval and DTIM period through STA info
[pandora-kernel.git] / drivers / net / wireless / ath / ath6kl / cfg80211.c
index 0bdd837..c3540bb 100644 (file)
@@ -483,6 +483,13 @@ void ath6kl_cfg80211_connect_event(struct ath6kl *ar, u16 channel,
        assoc_req_len -= assoc_req_ie_offset;
        assoc_resp_len -= assoc_resp_ie_offset;
 
+       /*
+        * Store Beacon interval here; DTIM period will be available only once
+        * a Beacon frame from the AP is seen.
+        */
+       ar->assoc_bss_beacon_int = beacon_intvl;
+       clear_bit(DTIM_PERIOD_AVAIL, &ar->flag);
+
        if (nw_type & ADHOC_NETWORK) {
                if (ar->wdev->iftype != NL80211_IFTYPE_ADHOC) {
                        ath6kl_dbg(ATH6KL_DBG_WLAN_CFG,
@@ -1366,6 +1373,15 @@ static int ath6kl_get_station(struct wiphy *wiphy, struct net_device *dev,
 
        sinfo->filled |= STATION_INFO_TX_BITRATE;
 
+       if (test_bit(CONNECTED, &ar->flag) &&
+           test_bit(DTIM_PERIOD_AVAIL, &ar->flag) &&
+           ar->nw_type == INFRA_NETWORK) {
+               sinfo->filled |= STATION_INFO_BSS_PARAM;
+               sinfo->bss_param.flags = 0;
+               sinfo->bss_param.dtim_period = ar->assoc_bss_dtim_period;
+               sinfo->bss_param.beacon_interval = ar->assoc_bss_beacon_int;
+       }
+
        return 0;
 }