!memcmp(vif->ssid, sme->ssid, vif->ssid_len)) {
                ar->reconnect_flag = true;
                status = ath6kl_wmi_reconnect_cmd(ar->wmi, vif->req_bssid,
-                                                 ar->ch_hint);
+                                                 vif->ch_hint);
 
                up(&ar->sem);
                if (status) {
        memcpy(vif->ssid, sme->ssid, sme->ssid_len);
 
        if (sme->channel)
-               ar->ch_hint = sme->channel->center_freq;
+               vif->ch_hint = sme->channel->center_freq;
 
        memset(vif->req_bssid, 0, sizeof(vif->req_bssid));
        if (sme->bssid && !is_broadcast_ether_addr(sme->bssid))
                   __func__,
                   vif->auth_mode, vif->dot11_auth_mode, vif->prwise_crypto,
                   vif->prwise_crypto_len, vif->grp_crypto,
-                  vif->grp_crypto_len, ar->ch_hint);
+                  vif->grp_crypto_len, vif->ch_hint);
 
        ar->reconnect_flag = 0;
        status = ath6kl_wmi_connect_cmd(ar->wmi, vif->nw_type,
                                        vif->prwise_crypto_len,
                                        vif->grp_crypto, vif->grp_crypto_len,
                                        vif->ssid_len, vif->ssid,
-                                       vif->req_bssid, ar->ch_hint,
+                                       vif->req_bssid, vif->ch_hint,
                                        ar->connect_ctrl_flags);
 
        up(&ar->sem);
        memcpy(vif->ssid, ibss_param->ssid, vif->ssid_len);
 
        if (ibss_param->channel)
-               ar->ch_hint = ibss_param->channel->center_freq;
+               vif->ch_hint = ibss_param->channel->center_freq;
 
        if (ibss_param->channel_fixed) {
                /*
                   __func__,
                   vif->auth_mode, vif->dot11_auth_mode, vif->prwise_crypto,
                   vif->prwise_crypto_len, vif->grp_crypto,
-                  vif->grp_crypto_len, ar->ch_hint);
+                  vif->grp_crypto_len, vif->ch_hint);
 
        status = ath6kl_wmi_connect_cmd(ar->wmi, vif->nw_type,
                                        vif->dot11_auth_mode, vif->auth_mode,
                                        vif->prwise_crypto_len,
                                        vif->grp_crypto, vif->grp_crypto_len,
                                        vif->ssid_len, vif->ssid,
-                                       vif->req_bssid, ar->ch_hint,
+                                       vif->req_bssid, vif->ch_hint,
                                        ar->connect_ctrl_flags);
        set_bit(CONNECT_PEND, &vif->flags);
 
 
        memset(ar->wep_key_list, 0, sizeof(ar->wep_key_list));
        memset(vif->req_bssid, 0, sizeof(vif->req_bssid));
        memset(vif->bssid, 0, sizeof(vif->bssid));
-       ar->bss_ch = 0;
+       vif->bss_ch = 0;
        vif->nw_type = vif->next_mode = INFRA_NETWORK;
 }
 
        ath6kl_init_profile_info(ar);
        vif->def_txkey_index = 0;
        memset(ar->wep_key_list, 0, sizeof(ar->wep_key_list));
-       ar->ch_hint = 0;
+       vif->ch_hint = 0;
 }
 
 /*