summaryrefslogtreecommitdiff
path: root/drivers/staging/brcm80211/brcmfmac/wl_iw.c
diff options
context:
space:
mode:
authorArend van Spriel <arend@broadcom.com>2011-02-10 12:03:46 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2011-02-18 12:48:57 -0800
commite4cf544edb1c6a6287a8ed8d924259825364d40d (patch)
tree7e747a10cd5cb843811b95a538a61aa9ec9b6ffe /drivers/staging/brcm80211/brcmfmac/wl_iw.c
parent8746e2baaedd45b51ceb0adbcaf2ce52bbb83598 (diff)
downloadlinux-3.10-e4cf544edb1c6a6287a8ed8d924259825364d40d.tar.gz
linux-3.10-e4cf544edb1c6a6287a8ed8d924259825364d40d.tar.bz2
linux-3.10-e4cf544edb1c6a6287a8ed8d924259825364d40d.zip
staging: brcm80211: enable driver counter functionality
The 802.11 core in the chipsets provides counters that are now used to provide counter values to mac80211 through get_stats callback. Counters related to ampdu and wmm (aka. wme) are not yet incorporated. Reviewed-by: Roland Vossen <rvossen@broadcom.com> Reviewed-by: Brett Rudley <brudley@broadcom.com> Reviewed-by: Henry Ptasinski <henryp@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/brcm80211/brcmfmac/wl_iw.c')
-rw-r--r--drivers/staging/brcm80211/brcmfmac/wl_iw.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/staging/brcm80211/brcmfmac/wl_iw.c b/drivers/staging/brcm80211/brcmfmac/wl_iw.c
index 1dbc94a98a4..6841b3ad811 100644
--- a/drivers/staging/brcm80211/brcmfmac/wl_iw.c
+++ b/drivers/staging/brcm80211/brcmfmac/wl_iw.c
@@ -3568,7 +3568,7 @@ int
wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstats)
{
int res = 0;
- wl_cnt_t cnt;
+ struct wl_cnt cnt;
int phy_noise;
int rssi;
scb_val_t scb_val;
@@ -3611,11 +3611,13 @@ wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstats)
#endif
#if WIRELESS_EXT > 11
- WL_TRACE("wl_iw_get_wireless_stats counters=%zu\n", sizeof(wl_cnt_t));
+ WL_TRACE("wl_iw_get_wireless_stats counters=%zu\n",
+ sizeof(struct wl_cnt));
- memset(&cnt, 0, sizeof(wl_cnt_t));
+ memset(&cnt, 0, sizeof(struct wl_cnt));
res =
- dev_wlc_bufvar_get(dev, "counters", (char *)&cnt, sizeof(wl_cnt_t));
+ dev_wlc_bufvar_get(dev, "counters", (char *)&cnt,
+ sizeof(struct wl_cnt));
if (res) {
WL_ERROR("wl_iw_get_wireless_stats counters failed error=%d\n",
res);
@@ -3624,7 +3626,7 @@ wl_iw_get_wireless_stats(struct net_device *dev, struct iw_statistics *wstats)
cnt.version = dtoh16(cnt.version);
if (cnt.version != WL_CNT_T_VERSION) {
- WL_TRACE("\tIncorrect version of counters struct: expected %d; got %d\n",
+ WL_TRACE("\tIncorrect counter version: expected %d; got %d\n",
WL_CNT_T_VERSION, cnt.version);
goto done;
}