mwifiex: display correct country information in debugfs "info"
authorAmitkumar Karwar <akarwar@marvell.com>
Tue, 10 Apr 2012 03:06:55 +0000 (20:06 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 12 Apr 2012 19:10:29 +0000 (15:10 -0400)
Use "priv->country_code" string to display country information in
debugfs command "info" instead of "adapter->region_code".

"adapter->region_code" contains default region code got from FW while
initialization, whereas "priv->country_code" is updated in reg_notifier
handler whenever there is a change in regulatory domain.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Kiran Divekar <dkiran@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/mwifiex/debugfs.c
drivers/net/wireless/mwifiex/ioctl.h
drivers/net/wireless/mwifiex/sta_ioctl.c

index 1a845074c52ac967273f17beb57bbedd924795ba..a870b5885c09364872c597108f019135828d23bf 100644 (file)
@@ -212,7 +212,7 @@ mwifiex_info_read(struct file *file, char __user *ubuf,
                p += sprintf(p, "essid=\"%s\"\n", info.ssid.ssid);
                p += sprintf(p, "bssid=\"%pM\"\n", info.bssid);
                p += sprintf(p, "channel=\"%d\"\n", (int) info.bss_chan);
-               p += sprintf(p, "region_code = \"%02x\"\n", info.region_code);
+               p += sprintf(p, "country_code = \"%s\"\n", info.country_code);
 
                netdev_for_each_mc_addr(ha, netdev)
                        p += sprintf(p, "multicast_address[%d]=\"%pM\"\n",
index 99c06649f94cbbf39a5ad9197c463acf649c1521..887a7d975d2409f974570f13081650268efcb031 100644 (file)
@@ -96,7 +96,7 @@ struct mwifiex_bss_info {
        u32 bss_mode;
        struct cfg80211_ssid ssid;
        u32 bss_chan;
-       u32 region_code;
+       u8 country_code[3];
        u32 media_connected;
        u32 max_power_level;
        u32 min_power_level;
index 8ba58d9353280e3cbac90dc8efafbd79463ab56d..3bdef071f0e304f50484de9e87b0f8309b3c006a 100644 (file)
@@ -468,7 +468,8 @@ int mwifiex_get_bss_info(struct mwifiex_private *priv,
 
        info->bss_chan = bss_desc->channel;
 
-       info->region_code = adapter->region_code;
+       memcpy(info->country_code, priv->country_code,
+              IEEE80211_COUNTRY_STRING_LEN);
 
        info->media_connected = priv->media_connected;