mwifiex: enable 11d after bss reset
authorAvinash Patil <patila@marvell.com>
Wed, 3 Jun 2015 11:29:34 +0000 (16:59 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 8 Jun 2015 08:41:47 +0000 (11:41 +0300)
BSS reset would reset all state information in FW.
Issue 11d config command after reset to enabled 11d in FW.

Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mwifiex/uap_cmd.c

index 0a3297e268f661f2d0d1aba8bfad9bb3856a03ce..56a47683023bc50c878bcdf1b4fbe35f967dd1a0 100644 (file)
@@ -806,6 +806,8 @@ void mwifiex_uap_set_channel(struct mwifiex_uap_bss_param *bss_cfg,
 int mwifiex_config_start_uap(struct mwifiex_private *priv,
                             struct mwifiex_uap_bss_param *bss_cfg)
 {
+       enum state_11d_t state_11d;
+
        if (mwifiex_del_mgmt_ies(priv))
                mwifiex_dbg(priv->adapter, ERROR,
                            "Failed to delete mgmt IEs!\n");
@@ -830,6 +832,16 @@ int mwifiex_config_start_uap(struct mwifiex_private *priv,
                return -1;
        }
 
+       /* Send cmd to FW to enable 11D function */
+       state_11d = ENABLE_11D;
+       if (mwifiex_send_cmd(priv, HostCmd_CMD_802_11_SNMP_MIB,
+                            HostCmd_ACT_GEN_SET, DOT11D_I,
+                            &state_11d, true)) {
+               mwifiex_dbg(priv->adapter, ERROR,
+                           "11D: failed to enable 11D\n");
+               return -1;
+       }
+
        if (mwifiex_send_cmd(priv, HostCmd_CMD_UAP_BSS_START,
                             HostCmd_ACT_GEN_SET, 0, NULL, false)) {
                mwifiex_dbg(priv->adapter, ERROR,