mac80211: Update to backports-4.19.207-1
[openwrt/staging/xback.git] / package / kernel / mac80211 / patches / brcm / 346-v5.1-brcmfmac-add-bphy_err-and-use-it-in-the-cfg80211.c.patch
index 7ae551619bed7bdced7e9c67d968dacaa2c2e6f7..6af27103872dbc978f1c7842182338681880ab45 100644 (file)
@@ -836,7 +836,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
        sinfo->filled |= BIT_ULL(NL80211_STA_INFO_RX_PACKETS) |
-@@ -2566,7 +2592,7 @@ brcmf_cfg80211_get_station(struct wiphy
+@@ -2567,7 +2593,7 @@ brcmf_cfg80211_get_station(struct wiphy
                                               &sta_info_le,
                                               sizeof(sta_info_le));
                if (err < 0) {
@@ -845,7 +845,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto done;
                }
        }
-@@ -2635,7 +2661,8 @@ brcmf_cfg80211_get_station(struct wiphy
+@@ -2638,7 +2664,8 @@ brcmf_cfg80211_get_station(struct wiphy
                        err = brcmf_fil_cmd_data_get(ifp, BRCMF_C_GET_RSSI,
                                                     &scb_val, sizeof(scb_val));
                        if (err) {
@@ -855,7 +855,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto done;
                        } else {
                                rssi = le32_to_cpu(scb_val.val);
-@@ -2666,8 +2693,8 @@ brcmf_cfg80211_dump_station(struct wiphy
+@@ -2669,8 +2696,8 @@ brcmf_cfg80211_dump_station(struct wiphy
                                             &cfg->assoclist,
                                             sizeof(cfg->assoclist));
                if (err) {
@@ -866,7 +866,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        cfg->assoclist.count = 0;
                        return -EOPNOTSUPP;
                }
-@@ -2715,9 +2742,9 @@ brcmf_cfg80211_set_power_mgmt(struct wip
+@@ -2718,9 +2745,9 @@ brcmf_cfg80211_set_power_mgmt(struct wip
        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_PM, pm);
        if (err) {
                if (err == -ENODEV)
@@ -878,7 +878,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        }
  done:
        brcmf_dbg(TRACE, "Exit\n");
-@@ -2740,7 +2767,7 @@ static s32 brcmf_inform_single_bss(struc
+@@ -2743,7 +2770,7 @@ static s32 brcmf_inform_single_bss(struc
        struct cfg80211_inform_bss bss_data = {};
  
        if (le32_to_cpu(bi->length) > WL_BSS_INFO_MAX) {
@@ -887,7 +887,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return 0;
        }
  
-@@ -2799,6 +2826,7 @@ next_bss_le(struct brcmf_scan_results *l
+@@ -2802,6 +2829,7 @@ next_bss_le(struct brcmf_scan_results *l
  
  static s32 brcmf_inform_bss(struct brcmf_cfg80211_info *cfg)
  {
@@ -895,7 +895,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_scan_results *bss_list;
        struct brcmf_bss_info_le *bi = NULL;    /* must be initialized */
        s32 err = 0;
-@@ -2807,8 +2835,8 @@ static s32 brcmf_inform_bss(struct brcmf
+@@ -2810,8 +2838,8 @@ static s32 brcmf_inform_bss(struct brcmf
        bss_list = (struct brcmf_scan_results *)cfg->escan_info.escan_buf;
        if (bss_list->count != 0 &&
            bss_list->version != BRCMF_BSS_INFO_VERSION) {
@@ -906,7 +906,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EOPNOTSUPP;
        }
        brcmf_dbg(SCAN, "scanned AP count (%d)\n", bss_list->count);
-@@ -2852,7 +2880,7 @@ static s32 brcmf_inform_ibss(struct brcm
+@@ -2855,7 +2883,7 @@ static s32 brcmf_inform_ibss(struct brcm
        err = brcmf_fil_cmd_data_get(netdev_priv(ndev), BRCMF_C_GET_BSS_INFO,
                                     buf, WL_BSS_INFO_MAX);
        if (err) {
@@ -915,7 +915,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto CleanUp;
        }
  
-@@ -2906,6 +2934,7 @@ CleanUp:
+@@ -2909,6 +2937,7 @@ CleanUp:
  static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg,
                                 struct brcmf_if *ifp)
  {
@@ -923,7 +923,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_bss_info_le *bi;
        const struct brcmf_tlv *tim;
        u16 beacon_interval;
-@@ -2922,7 +2951,7 @@ static s32 brcmf_update_bss_info(struct
+@@ -2925,7 +2954,7 @@ static s32 brcmf_update_bss_info(struct
        err = brcmf_fil_cmd_data_get(ifp, BRCMF_C_GET_BSS_INFO,
                                     cfg->extra_buf, WL_EXTRA_BUF_MAX);
        if (err) {
@@ -932,7 +932,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto update_bss_info_out;
        }
  
-@@ -2947,7 +2976,7 @@ static s32 brcmf_update_bss_info(struct
+@@ -2950,7 +2979,7 @@ static s32 brcmf_update_bss_info(struct
                u32 var;
                err = brcmf_fil_iovar_int_get(ifp, "dtim_assoc", &var);
                if (err) {
@@ -941,7 +941,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto update_bss_info_out;
                }
                dtim_period = (u8)var;
-@@ -2985,9 +3014,10 @@ static void brcmf_escan_timeout(struct t
+@@ -2988,9 +3017,10 @@ static void brcmf_escan_timeout(struct t
  {
        struct brcmf_cfg80211_info *cfg =
                        from_timer(cfg, t, escan_timeout);
@@ -953,7 +953,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                schedule_work(&cfg->escan_timeout_work);
        }
  }
-@@ -3036,6 +3066,7 @@ brcmf_cfg80211_escan_handler(struct brcm
+@@ -3039,6 +3069,7 @@ brcmf_cfg80211_escan_handler(struct brcm
                             const struct brcmf_event_msg *e, void *data)
  {
        struct brcmf_cfg80211_info *cfg = ifp->drvr->config;
@@ -961,7 +961,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        s32 status;
        struct brcmf_escan_result_le *escan_result_le;
        u32 escan_buflen;
-@@ -3052,32 +3083,33 @@ brcmf_cfg80211_escan_handler(struct brcm
+@@ -3055,32 +3086,33 @@ brcmf_cfg80211_escan_handler(struct brcm
                goto exit;
  
        if (!test_bit(BRCMF_SCAN_STATUS_BUSY, &cfg->scan_status)) {
@@ -1002,7 +1002,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                bss_info_le = &escan_result_le->bss_info_le;
-@@ -3092,8 +3124,8 @@ brcmf_cfg80211_escan_handler(struct brcm
+@@ -3095,8 +3127,8 @@ brcmf_cfg80211_escan_handler(struct brcm
  
                bi_length = le32_to_cpu(bss_info_le->length);
                if (bi_length != escan_buflen - WL_ESCAN_RESULTS_FIXED_SIZE) {
@@ -1013,7 +1013,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
  
-@@ -3101,7 +3133,7 @@ brcmf_cfg80211_escan_handler(struct brcm
+@@ -3104,7 +3136,7 @@ brcmf_cfg80211_escan_handler(struct brcm
                                        BIT(NL80211_IFTYPE_ADHOC))) {
                        if (le16_to_cpu(bss_info_le->capability) &
                                                WLAN_CAPABILITY_IBSS) {
@@ -1022,7 +1022,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -3109,7 +3141,7 @@ brcmf_cfg80211_escan_handler(struct brcm
+@@ -3112,7 +3144,7 @@ brcmf_cfg80211_escan_handler(struct brcm
                list = (struct brcmf_scan_results *)
                                cfg->escan_info.escan_buf;
                if (bi_length > BRCMF_ESCAN_BUF_SIZE - list->buflen) {
@@ -1031,7 +1031,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
  
-@@ -3301,14 +3333,14 @@ brcmf_notify_sched_scan_results(struct b
+@@ -3304,14 +3336,14 @@ brcmf_notify_sched_scan_results(struct b
        WARN_ON(status != BRCMF_PNO_SCAN_COMPLETE);
        brcmf_dbg(SCAN, "PFN NET FOUND event. count: %d\n", result_count);
        if (!result_count) {
@@ -1048,7 +1048,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto out_err;
        }
  
-@@ -3362,8 +3394,8 @@ brcmf_cfg80211_sched_scan_start(struct w
+@@ -3365,8 +3397,8 @@ brcmf_cfg80211_sched_scan_start(struct w
                  req->n_match_sets, req->n_ssids);
  
        if (test_bit(BRCMF_SCAN_STATUS_SUPPRESS, &cfg->scan_status)) {
@@ -1059,7 +1059,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EAGAIN;
        }
  
-@@ -3442,6 +3474,7 @@ brcmf_wowl_nd_results(struct brcmf_if *i
+@@ -3445,6 +3477,7 @@ brcmf_wowl_nd_results(struct brcmf_if *i
                      void *data)
  {
        struct brcmf_cfg80211_info *cfg = ifp->drvr->config;
@@ -1067,7 +1067,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_pno_scanresults_le *pfn_result;
        struct brcmf_pno_net_info_le *netinfo;
  
-@@ -3460,8 +3493,8 @@ brcmf_wowl_nd_results(struct brcmf_if *i
+@@ -3463,8 +3496,8 @@ brcmf_wowl_nd_results(struct brcmf_if *i
        }
  
        if (le32_to_cpu(pfn_result->count) < 1) {
@@ -1078,7 +1078,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EINVAL;
        }
  
-@@ -3500,7 +3533,7 @@ static void brcmf_report_wowl_wakeind(st
+@@ -3503,7 +3536,7 @@ static void brcmf_report_wowl_wakeind(st
        err = brcmf_fil_iovar_data_get(ifp, "wowl_wakeind", &wake_ind_le,
                                       sizeof(wake_ind_le));
        if (err) {
@@ -1087,7 +1087,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return;
        }
  
-@@ -3541,7 +3574,7 @@ static void brcmf_report_wowl_wakeind(st
+@@ -3544,7 +3577,7 @@ static void brcmf_report_wowl_wakeind(st
                                cfg->wowl.nd_data_completed,
                                BRCMF_ND_INFO_TIMEOUT);
                        if (!timeout)
@@ -1096,7 +1096,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        else
                                wakeup_data.net_detect = cfg->wowl.nd_info;
                }
-@@ -3749,7 +3782,7 @@ brcmf_cfg80211_set_pmksa(struct wiphy *w
+@@ -3752,7 +3785,7 @@ brcmf_cfg80211_set_pmksa(struct wiphy *w
                        cfg->pmk_list.npmk = cpu_to_le32(npmk);
                }
        } else {
@@ -1105,7 +1105,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EINVAL;
        }
  
-@@ -3795,7 +3828,7 @@ brcmf_cfg80211_del_pmksa(struct wiphy *w
+@@ -3798,7 +3831,7 @@ brcmf_cfg80211_del_pmksa(struct wiphy *w
                memset(&pmk[i], 0, sizeof(*pmk));
                cfg->pmk_list.npmk = cpu_to_le32(npmk - 1);
        } else {
@@ -1114,7 +1114,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EINVAL;
        }
  
-@@ -3827,19 +3860,20 @@ brcmf_cfg80211_flush_pmksa(struct wiphy
+@@ -3830,19 +3863,20 @@ brcmf_cfg80211_flush_pmksa(struct wiphy
  
  static s32 brcmf_configure_opensecurity(struct brcmf_if *ifp)
  {
@@ -1137,7 +1137,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
        /* set upper-layer auth */
-@@ -3849,7 +3883,7 @@ static s32 brcmf_configure_opensecurity(
+@@ -3852,7 +3886,7 @@ static s32 brcmf_configure_opensecurity(
                wpa_val = WPA_AUTH_DISABLED;
        err = brcmf_fil_bsscfg_int_set(ifp, "wpa_auth", wpa_val);
        if (err < 0) {
@@ -1146,7 +1146,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
  
-@@ -3869,6 +3903,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3872,6 +3906,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                      const struct brcmf_vs_tlv *wpa_ie,
                      bool is_rsn_ie)
  {
@@ -1154,7 +1154,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        u32 auth = 0; /* d11 open authentication */
        u16 count;
        s32 err = 0;
-@@ -3899,13 +3934,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3902,13 +3937,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
        /* check for multicast cipher suite */
        if (offset + WPA_IE_MIN_OUI_LEN > len) {
                err = -EINVAL;
@@ -1170,7 +1170,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto exit;
        }
        offset += TLV_OUI_LEN;
-@@ -3927,7 +3962,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3930,7 +3965,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                break;
        default:
                err = -EINVAL;
@@ -1179,7 +1179,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto exit;
        }
  
-@@ -3938,13 +3973,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3941,13 +3976,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
        /* Check for unicast suite(s) */
        if (offset + (WPA_IE_MIN_OUI_LEN * count) > len) {
                err = -EINVAL;
@@ -1195,7 +1195,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                offset += TLV_OUI_LEN;
-@@ -3962,7 +3997,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3965,7 +4000,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                        pval |= AES_ENABLED;
                        break;
                default:
@@ -1204,7 +1204,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                }
                offset++;
        }
-@@ -3972,13 +4007,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -3975,13 +4010,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
        /* Check for auth key management suite(s) */
        if (offset + (WPA_IE_MIN_OUI_LEN * count) > len) {
                err = -EINVAL;
@@ -1220,7 +1220,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                offset += TLV_OUI_LEN;
-@@ -4006,7 +4041,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -4009,7 +4044,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                        wpa_auth |= WPA2_AUTH_1X_SHA256;
                        break;
                default:
@@ -1229,7 +1229,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                }
                offset++;
        }
-@@ -4048,7 +4083,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -4051,7 +4086,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                err = brcmf_fil_bsscfg_int_set(ifp, "wme_bss_disable",
                                               wme_bss_disable);
                if (err < 0) {
@@ -1238,7 +1238,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
  
-@@ -4062,7 +4097,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -4065,7 +4100,7 @@ brcmf_configure_wpaie(struct brcmf_if *i
                                                        &data[offset],
                                                        WPA_IE_MIN_OUI_LEN);
                        if (err < 0) {
@@ -1247,7 +1247,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -4073,13 +4108,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -4076,13 +4111,13 @@ brcmf_configure_wpaie(struct brcmf_if *i
        /* set auth */
        err = brcmf_fil_bsscfg_int_set(ifp, "auth", auth);
        if (err < 0) {
@@ -1263,7 +1263,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto exit;
        }
        /* Configure MFP, this needs to go after wsec otherwise the wsec command
-@@ -4088,14 +4123,14 @@ brcmf_configure_wpaie(struct brcmf_if *i
+@@ -4091,14 +4126,14 @@ brcmf_configure_wpaie(struct brcmf_if *i
        if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_MFP)) {
                err = brcmf_fil_bsscfg_int_set(ifp, "mfp", mfp);
                if (err < 0) {
@@ -1280,7 +1280,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto exit;
        }
  
-@@ -4182,6 +4217,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
+@@ -4185,6 +4220,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
                          const u8 *vndr_ie_buf, u32 vndr_ie_len)
  {
        struct brcmf_if *ifp;
@@ -1288,7 +1288,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct vif_saved_ie *saved_ie;
        s32 err = 0;
        u8  *iovar_ie_buf;
-@@ -4202,6 +4238,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
+@@ -4205,6 +4241,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
        if (!vif)
                return -ENODEV;
        ifp = vif->ifp;
@@ -1296,7 +1296,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        saved_ie = &vif->saved_ie;
  
        brcmf_dbg(TRACE, "bsscfgidx %d, pktflag : 0x%02X\n", ifp->bsscfgidx,
-@@ -4233,13 +4270,13 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
+@@ -4236,13 +4273,13 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
                break;
        default:
                err = -EPERM;
@@ -1312,7 +1312,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto exit;
        }
  
-@@ -4300,8 +4337,8 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
+@@ -4303,8 +4340,8 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
                        /* verify remained buf size before copy data */
                        if (remained_buf_len < (vndrie_info->vndrie.len +
                                                        VNDR_IE_VSIE_OFFSET)) {
@@ -1323,7 +1323,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                break;
                        }
                        remained_buf_len -= (vndrie_info->ie_len +
-@@ -4332,7 +4369,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
+@@ -4335,7 +4372,7 @@ s32 brcmf_vif_set_mgmt_ie(struct brcmf_c
                err  = brcmf_fil_bsscfg_data_set(ifp, "vndr_ie", iovar_ie_buf,
                                                 total_ie_buf_len);
                if (err)
@@ -1332,7 +1332,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        }
  
  exit:
-@@ -4360,13 +4397,14 @@ static s32
+@@ -4363,13 +4400,14 @@ static s32
  brcmf_config_ap_mgmt_ie(struct brcmf_cfg80211_vif *vif,
                        struct cfg80211_beacon_data *beacon)
  {
@@ -1348,7 +1348,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
        brcmf_dbg(TRACE, "Applied Vndr IEs for Beacon\n");
-@@ -4376,7 +4414,7 @@ brcmf_config_ap_mgmt_ie(struct brcmf_cfg
+@@ -4379,7 +4417,7 @@ brcmf_config_ap_mgmt_ie(struct brcmf_cfg
                                    beacon->proberesp_ies,
                                    beacon->proberesp_ies_len);
        if (err)
@@ -1357,7 +1357,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        else
                brcmf_dbg(TRACE, "Applied Vndr IEs for Probe Resp\n");
  
-@@ -4485,7 +4523,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4488,7 +4526,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_REGULATORY,
                                                    is_11d);
                        if (err < 0) {
@@ -1367,7 +1367,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -4493,8 +4532,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4496,8 +4535,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_BCNPRD,
                                                    settings->beacon_interval);
                        if (err < 0) {
@@ -1378,7 +1378,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -4502,7 +4541,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4505,7 +4544,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_DTIMPRD,
                                                    settings->dtim_period);
                        if (err < 0) {
@@ -1388,7 +1388,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -4512,7 +4552,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4515,7 +4555,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                     !brcmf_feat_is_enabled(ifp, BRCMF_FEAT_RSDB))) {
                        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_DOWN, 1);
                        if (err < 0) {
@@ -1398,7 +1398,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                        brcmf_fil_iovar_int_set(ifp, "apsta", 0);
-@@ -4520,7 +4561,7 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4523,7 +4564,7 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
  
                err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_INFRA, 1);
                if (err < 0) {
@@ -1407,7 +1407,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
        } else if (WARN_ON(supports_11d && (is_11d != ifp->vif->is_11d))) {
-@@ -4536,7 +4577,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4539,7 +4580,8 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
  
                err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_AP, 1);
                if (err < 0) {
@@ -1417,7 +1417,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                if (!mbss) {
-@@ -4545,14 +4587,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4548,14 +4590,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                         */
                        err = brcmf_fil_iovar_int_set(ifp, "chanspec", chanspec);
                        if (err < 0) {
@@ -1435,7 +1435,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                /* On DOWN the firmware removes the WEP keys, reconfigure
-@@ -4567,14 +4609,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4570,14 +4612,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SET_SSID,
                                             &join_params, sizeof(join_params));
                if (err < 0) {
@@ -1452,7 +1452,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                                goto exit;
                        }
                }
-@@ -4583,14 +4625,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4586,14 +4628,14 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
        } else if (dev_role == NL80211_IFTYPE_P2P_GO) {
                err = brcmf_fil_iovar_int_set(ifp, "chanspec", chanspec);
                if (err < 0) {
@@ -1470,7 +1470,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
                bss_enable.bsscfgidx = cpu_to_le32(ifp->bsscfgidx);
-@@ -4598,7 +4640,7 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
+@@ -4601,7 +4643,7 @@ brcmf_cfg80211_start_ap(struct wiphy *wi
                err = brcmf_fil_iovar_data_set(ifp, "bss", &bss_enable,
                                               sizeof(bss_enable));
                if (err < 0) {
@@ -1479,7 +1479,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        goto exit;
                }
  
-@@ -4646,13 +4688,13 @@ static int brcmf_cfg80211_stop_ap(struct
+@@ -4649,13 +4691,13 @@ static int brcmf_cfg80211_stop_ap(struct
                err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SET_SSID,
                                             &join_params, sizeof(join_params));
                if (err < 0)
@@ -1496,7 +1496,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                if (brcmf_feat_is_enabled(ifp, BRCMF_FEAT_MBSS))
                        brcmf_fil_iovar_int_set(ifp, "mbss", 0);
                brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_REGULATORY,
-@@ -4660,7 +4702,7 @@ static int brcmf_cfg80211_stop_ap(struct
+@@ -4663,7 +4705,7 @@ static int brcmf_cfg80211_stop_ap(struct
                /* Bring device back up so it can be used again */
                err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_UP, 1);
                if (err < 0)
@@ -1505,7 +1505,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  
                brcmf_vif_clear_mgmt_ies(ifp->vif);
        } else {
-@@ -4669,7 +4711,7 @@ static int brcmf_cfg80211_stop_ap(struct
+@@ -4672,7 +4714,7 @@ static int brcmf_cfg80211_stop_ap(struct
                err = brcmf_fil_iovar_data_set(ifp, "bss", &bss_enable,
                                               sizeof(bss_enable));
                if (err < 0)
@@ -1514,7 +1514,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        }
        brcmf_set_mpc(ifp, 1);
        brcmf_configure_arp_nd_offload(ifp, true);
-@@ -4717,7 +4759,8 @@ brcmf_cfg80211_del_station(struct wiphy
+@@ -4720,7 +4762,8 @@ brcmf_cfg80211_del_station(struct wiphy
        err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SCB_DEAUTHENTICATE_FOR_REASON,
                                     &scbval, sizeof(scbval));
        if (err)
@@ -1524,7 +1524,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  
        brcmf_dbg(TRACE, "Exit\n");
        return err;
-@@ -4747,7 +4790,7 @@ brcmf_cfg80211_change_station(struct wip
+@@ -4750,7 +4793,7 @@ brcmf_cfg80211_change_station(struct wip
                err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SET_SCB_DEAUTHORIZE,
                                             (void *)mac, ETH_ALEN);
        if (err < 0)
@@ -1533,7 +1533,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  
        return err;
  }
-@@ -4797,7 +4840,7 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wip
+@@ -4800,7 +4843,7 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wip
        mgmt = (const struct ieee80211_mgmt *)buf;
  
        if (!ieee80211_is_mgmt(mgmt->frame_control)) {
@@ -1542,7 +1542,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return -EPERM;
        }
  
-@@ -4828,13 +4871,13 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wip
+@@ -4831,13 +4874,13 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wip
                                        GFP_KERNEL);
        } else if (ieee80211_is_action(mgmt->frame_control)) {
                if (len > BRCMF_FIL_ACTION_FRAME_SIZE + DOT11_MGMT_HDR_LEN) {
@@ -1558,7 +1558,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        err = -ENOMEM;
                        goto exit;
                }
-@@ -4892,7 +4935,7 @@ brcmf_cfg80211_cancel_remain_on_channel(
+@@ -4895,7 +4938,7 @@ brcmf_cfg80211_cancel_remain_on_channel(
  
        vif = cfg->p2p.bss_idx[P2PAPI_BSSCFG_DEVICE].vif;
        if (vif == NULL) {
@@ -1567,7 +1567,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                err = -ENODEV;
                goto exit;
        }
-@@ -4920,7 +4963,7 @@ static int brcmf_cfg80211_get_channel(st
+@@ -4923,7 +4966,7 @@ static int brcmf_cfg80211_get_channel(st
  
        err = brcmf_fil_iovar_int_get(ifp, "chanspec", &chanspec);
        if (err) {
@@ -1576,7 +1576,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
  
-@@ -5059,7 +5102,7 @@ static int brcmf_cfg80211_tdls_oper(stru
+@@ -5062,7 +5105,7 @@ static int brcmf_cfg80211_tdls_oper(stru
        ret = brcmf_fil_iovar_data_set(ifp, "tdls_endpoint",
                                       &info, sizeof(info));
        if (ret < 0)
@@ -1585,7 +1585,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  
        return ret;
  }
-@@ -5080,7 +5123,7 @@ brcmf_cfg80211_update_conn_params(struct
+@@ -5083,7 +5126,7 @@ brcmf_cfg80211_update_conn_params(struct
        err = brcmf_vif_set_mgmt_ie(ifp->vif, BRCMF_VNDR_IE_ASSOCREQ_FLAG,
                                    sme->ie, sme->ie_len);
        if (err)
@@ -1594,7 +1594,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        else
                brcmf_dbg(TRACE, "Applied Vndr IEs for Assoc request\n");
  
-@@ -5106,7 +5149,7 @@ brcmf_cfg80211_set_rekey_data(struct wip
+@@ -5109,7 +5152,7 @@ brcmf_cfg80211_set_rekey_data(struct wip
        ret = brcmf_fil_iovar_data_set(ifp, "gtk_key_info", &gtk_le,
                                       sizeof(gtk_le));
        if (ret < 0)
@@ -1603,7 +1603,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  
        return ret;
  }
-@@ -5341,6 +5384,7 @@ static void brcmf_clear_assoc_ies(struct
+@@ -5344,6 +5387,7 @@ static void brcmf_clear_assoc_ies(struct
  static s32 brcmf_get_assoc_ies(struct brcmf_cfg80211_info *cfg,
                               struct brcmf_if *ifp)
  {
@@ -1611,7 +1611,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_cfg80211_assoc_ielen_le *assoc_info;
        struct brcmf_cfg80211_connect_info *conn_info = cfg_to_conn(cfg);
        u32 req_len;
-@@ -5352,7 +5396,7 @@ static s32 brcmf_get_assoc_ies(struct br
+@@ -5355,7 +5399,7 @@ static s32 brcmf_get_assoc_ies(struct br
        err = brcmf_fil_iovar_data_get(ifp, "assoc_info",
                                       cfg->extra_buf, WL_ASSOC_INFO_MAX);
        if (err) {
@@ -1620,7 +1620,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
        assoc_info =
-@@ -5364,7 +5408,7 @@ static s32 brcmf_get_assoc_ies(struct br
+@@ -5367,7 +5411,7 @@ static s32 brcmf_get_assoc_ies(struct br
                                               cfg->extra_buf,
                                               WL_ASSOC_INFO_MAX);
                if (err) {
@@ -1629,7 +1629,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        return err;
                }
                conn_info->req_ie_len = req_len;
-@@ -5382,7 +5426,7 @@ static s32 brcmf_get_assoc_ies(struct br
+@@ -5385,7 +5429,7 @@ static s32 brcmf_get_assoc_ies(struct br
                                               cfg->extra_buf,
                                               WL_ASSOC_INFO_MAX);
                if (err) {
@@ -1638,7 +1638,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        return err;
                }
                conn_info->resp_ie_len = resp_len;
-@@ -5511,6 +5555,7 @@ brcmf_notify_connect_status_ap(struct br
+@@ -5514,6 +5558,7 @@ brcmf_notify_connect_status_ap(struct br
                               struct net_device *ndev,
                               const struct brcmf_event_msg *e, void *data)
  {
@@ -1646,7 +1646,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        static int generation;
        u32 event = e->event_code;
        u32 reason = e->reason;
-@@ -5528,7 +5573,7 @@ brcmf_notify_connect_status_ap(struct br
+@@ -5531,7 +5576,7 @@ brcmf_notify_connect_status_ap(struct br
        if (((event == BRCMF_E_ASSOC_IND) || (event == BRCMF_E_REASSOC_IND)) &&
            (reason == BRCMF_E_STATUS_SUCCESS)) {
                if (!data) {
@@ -1655,7 +1655,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        return -EINVAL;
                }
  
-@@ -5820,6 +5865,7 @@ static void init_vif_event(struct brcmf_
+@@ -5823,6 +5868,7 @@ static void init_vif_event(struct brcmf_
  
  static s32 brcmf_dongle_roam(struct brcmf_if *ifp)
  {
@@ -1663,7 +1663,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        s32 err;
        u32 bcn_timeout;
        __le32 roamtrigger[2];
-@@ -5832,7 +5878,7 @@ static s32 brcmf_dongle_roam(struct brcm
+@@ -5835,7 +5881,7 @@ static s32 brcmf_dongle_roam(struct brcm
                bcn_timeout = BRCMF_DEFAULT_BCN_TIMEOUT_ROAM_ON;
        err = brcmf_fil_iovar_int_set(ifp, "bcn_timeout", bcn_timeout);
        if (err) {
@@ -1672,7 +1672,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto roam_setup_done;
        }
  
-@@ -5844,7 +5890,7 @@ static s32 brcmf_dongle_roam(struct brcm
+@@ -5847,7 +5893,7 @@ static s32 brcmf_dongle_roam(struct brcm
        err = brcmf_fil_iovar_int_set(ifp, "roam_off",
                                      ifp->drvr->settings->roamoff);
        if (err) {
@@ -1681,7 +1681,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto roam_setup_done;
        }
  
-@@ -5853,7 +5899,7 @@ static s32 brcmf_dongle_roam(struct brcm
+@@ -5856,7 +5902,7 @@ static s32 brcmf_dongle_roam(struct brcm
        err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SET_ROAM_TRIGGER,
                                     (void *)roamtrigger, sizeof(roamtrigger));
        if (err) {
@@ -1690,7 +1690,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto roam_setup_done;
        }
  
-@@ -5862,7 +5908,7 @@ static s32 brcmf_dongle_roam(struct brcm
+@@ -5865,7 +5911,7 @@ static s32 brcmf_dongle_roam(struct brcm
        err = brcmf_fil_cmd_data_set(ifp, BRCMF_C_SET_ROAM_DELTA,
                                     (void *)roam_delta, sizeof(roam_delta));
        if (err) {
@@ -1699,7 +1699,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto roam_setup_done;
        }
  
-@@ -5873,25 +5919,26 @@ roam_setup_done:
+@@ -5876,25 +5922,26 @@ roam_setup_done:
  static s32
  brcmf_dongle_scantime(struct brcmf_if *ifp)
  {
@@ -1729,7 +1729,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto dongle_scantime_out;
        }
  
-@@ -5923,10 +5970,10 @@ static void brcmf_update_bw40_channel_fl
+@@ -5926,10 +5973,10 @@ static void brcmf_update_bw40_channel_fl
  static int brcmf_construct_chaninfo(struct brcmf_cfg80211_info *cfg,
                                    u32 bw_cap[])
  {
@@ -1741,7 +1741,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_chanspec_list *list;
        struct brcmu_chan ch;
        int err;
-@@ -5945,11 +5992,10 @@ static int brcmf_construct_chaninfo(stru
+@@ -5948,11 +5995,10 @@ static int brcmf_construct_chaninfo(stru
        err = brcmf_fil_iovar_data_get(ifp, "chanspecs", pbuf,
                                       BRCMF_DCMD_MEDLEN);
        if (err) {
@@ -1754,7 +1754,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        band = wiphy->bands[NL80211_BAND_2GHZ];
        if (band)
                for (i = 0; i < band->n_channels; i++)
-@@ -5969,7 +6015,8 @@ static int brcmf_construct_chaninfo(stru
+@@ -5972,7 +6018,8 @@ static int brcmf_construct_chaninfo(stru
                } else if (ch.band == BRCMU_CHAN_BAND_5G) {
                        band = wiphy->bands[NL80211_BAND_5GHZ];
                } else {
@@ -1764,7 +1764,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        continue;
                }
                if (!band)
-@@ -5992,8 +6039,8 @@ static int brcmf_construct_chaninfo(stru
+@@ -5995,8 +6042,8 @@ static int brcmf_construct_chaninfo(stru
                        /* It seems firmware supports some channel we never
                         * considered. Something new in IEEE standard?
                         */
@@ -1775,7 +1775,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        continue;
                }
  
-@@ -6039,6 +6086,7 @@ fail_pbuf:
+@@ -6042,6 +6089,7 @@ fail_pbuf:
  
  static int brcmf_enable_bw40_2g(struct brcmf_cfg80211_info *cfg)
  {
@@ -1783,7 +1783,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct brcmf_if *ifp = brcmf_get_ifp(cfg->pub, 0);
        struct ieee80211_supported_band *band;
        struct brcmf_fil_bwcap_le band_bwcap;
-@@ -6085,7 +6133,7 @@ static int brcmf_enable_bw40_2g(struct b
+@@ -6088,7 +6136,7 @@ static int brcmf_enable_bw40_2g(struct b
                err = brcmf_fil_iovar_data_get(ifp, "chanspecs", pbuf,
                                               BRCMF_DCMD_MEDLEN);
                if (err) {
@@ -1792,7 +1792,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        kfree(pbuf);
                        return err;
                }
-@@ -6116,6 +6164,7 @@ static int brcmf_enable_bw40_2g(struct b
+@@ -6119,6 +6167,7 @@ static int brcmf_enable_bw40_2g(struct b
  
  static void brcmf_get_bwcap(struct brcmf_if *ifp, u32 bw_cap[])
  {
@@ -1800,7 +1800,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        u32 band, mimo_bwcap;
        int err;
  
-@@ -6151,7 +6200,7 @@ static void brcmf_get_bwcap(struct brcmf
+@@ -6154,7 +6203,7 @@ static void brcmf_get_bwcap(struct brcmf
                bw_cap[NL80211_BAND_5GHZ] |= WLC_BW_20MHZ_BIT;
                break;
        default:
@@ -1809,7 +1809,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        }
  }
  
-@@ -6227,7 +6276,7 @@ static void brcmf_update_vht_cap(struct
+@@ -6230,7 +6279,7 @@ static void brcmf_update_vht_cap(struct
  static int brcmf_setup_wiphybands(struct brcmf_cfg80211_info *cfg)
  {
        struct brcmf_if *ifp = brcmf_get_ifp(cfg->pub, 0);
@@ -1818,7 +1818,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        u32 nmode = 0;
        u32 vhtmode = 0;
        u32 bw_cap[2] = { WLC_BW_20MHZ_BIT, WLC_BW_20MHZ_BIT };
-@@ -6243,7 +6292,7 @@ static int brcmf_setup_wiphybands(struct
+@@ -6246,7 +6295,7 @@ static int brcmf_setup_wiphybands(struct
        (void)brcmf_fil_iovar_int_get(ifp, "vhtmode", &vhtmode);
        err = brcmf_fil_iovar_int_get(ifp, "nmode", &nmode);
        if (err) {
@@ -1827,7 +1827,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        } else {
                brcmf_get_bwcap(ifp, bw_cap);
        }
-@@ -6253,7 +6302,7 @@ static int brcmf_setup_wiphybands(struct
+@@ -6256,7 +6305,7 @@ static int brcmf_setup_wiphybands(struct
  
        err = brcmf_fil_iovar_int_get(ifp, "rxchain", &rxchain);
        if (err) {
@@ -1836,7 +1836,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                nchain = 1;
        } else {
                for (nchain = 0; rxchain; nchain++)
-@@ -6263,7 +6312,7 @@ static int brcmf_setup_wiphybands(struct
+@@ -6266,7 +6315,7 @@ static int brcmf_setup_wiphybands(struct
  
        err = brcmf_construct_chaninfo(cfg, bw_cap);
        if (err) {
@@ -1845,7 +1845,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
  
-@@ -6275,7 +6324,6 @@ static int brcmf_setup_wiphybands(struct
+@@ -6278,7 +6327,6 @@ static int brcmf_setup_wiphybands(struct
                                              &txbf_bfr_cap);
        }
  
@@ -1853,7 +1853,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        for (i = 0; i < ARRAY_SIZE(wiphy->bands); i++) {
                band = wiphy->bands[i];
                if (band == NULL)
-@@ -6476,7 +6524,7 @@ static void brcmf_wiphy_wowl_params(stru
+@@ -6479,7 +6527,7 @@ static void brcmf_wiphy_wowl_params(stru
        wowl = kmemdup(&brcmf_wowlan_support, sizeof(brcmf_wowlan_support),
                       GFP_KERNEL);
        if (!wowl) {
@@ -1862,7 +1862,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                wiphy->wowlan = &brcmf_wowlan_support;
                return;
        }
-@@ -6573,7 +6621,7 @@ static int brcmf_setup_wiphy(struct wiph
+@@ -6576,7 +6624,7 @@ static int brcmf_setup_wiphy(struct wiph
        err = brcmf_fil_cmd_data_get(ifp, BRCMF_C_GET_BANDLIST, &bandlist,
                                     sizeof(bandlist));
        if (err) {
@@ -1871,7 +1871,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return err;
        }
        /* first entry in bandlist is number of bands */
-@@ -6622,6 +6670,7 @@ static int brcmf_setup_wiphy(struct wiph
+@@ -6625,6 +6673,7 @@ static int brcmf_setup_wiphy(struct wiph
  
  static s32 brcmf_config_dongle(struct brcmf_cfg80211_info *cfg)
  {
@@ -1879,7 +1879,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
        struct net_device *ndev;
        struct wireless_dev *wdev;
        struct brcmf_if *ifp;
-@@ -6659,7 +6708,7 @@ static s32 brcmf_config_dongle(struct br
+@@ -6662,7 +6711,7 @@ static s32 brcmf_config_dongle(struct br
  
        err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_SET_FAKEFRAG, 1);
        if (err) {
@@ -1888,7 +1888,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto default_conf_out;
        }
  
-@@ -6851,8 +6900,8 @@ static void brcmf_cfg80211_reg_notifier(
+@@ -6854,8 +6903,8 @@ static void brcmf_cfg80211_reg_notifier(
        /* ignore non-ISO3166 country codes */
        for (i = 0; i < 2; i++)
                if (req->alpha2[i] < 'A' || req->alpha2[i] > 'Z') {
@@ -1899,7 +1899,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        return;
                }
  
-@@ -6861,7 +6910,7 @@ static void brcmf_cfg80211_reg_notifier(
+@@ -6864,7 +6913,7 @@ static void brcmf_cfg80211_reg_notifier(
  
        err = brcmf_fil_iovar_data_get(ifp, "country", &ccreq, sizeof(ccreq));
        if (err) {
@@ -1908,7 +1908,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return;
        }
  
-@@ -6871,7 +6920,7 @@ static void brcmf_cfg80211_reg_notifier(
+@@ -6874,7 +6923,7 @@ static void brcmf_cfg80211_reg_notifier(
  
        err = brcmf_fil_iovar_data_set(ifp, "country", &ccreq, sizeof(ccreq));
        if (err) {
@@ -1917,7 +1917,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return;
        }
        brcmf_setup_wiphybands(cfg);
-@@ -6917,13 +6966,13 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -6920,13 +6969,13 @@ struct brcmf_cfg80211_info *brcmf_cfg802
        u16 *cap = NULL;
  
        if (!ndev) {
@@ -1933,7 +1933,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                return NULL;
        }
  
-@@ -6944,7 +6993,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -6947,7 +6996,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
  
        err = wl_init_priv(cfg);
        if (err) {
@@ -1942,7 +1942,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                brcmf_free_vif(vif);
                goto wiphy_out;
        }
-@@ -6953,7 +7002,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -6956,7 +7005,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
        /* determine d11 io type before wiphy setup */
        err = brcmf_fil_cmd_int_get(ifp, BRCMF_C_GET_VERSION, &io_type);
        if (err) {
@@ -1951,7 +1951,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto priv_out;
        }
        cfg->d11inf.io_type = (u8)io_type;
-@@ -6987,13 +7036,13 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -6990,13 +7039,13 @@ struct brcmf_cfg80211_info *brcmf_cfg802
  #endif
        err = wiphy_register(wiphy);
        if (err < 0) {
@@ -1967,7 +1967,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                goto wiphy_unreg_out;
        }
  
-@@ -7011,24 +7060,24 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -7014,24 +7063,24 @@ struct brcmf_cfg80211_info *brcmf_cfg802
  
        err = brcmf_fweh_activate_events(ifp);
        if (err) {
@@ -1996,7 +1996,7 @@ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                brcmf_btcoex_detach(cfg);
                brcmf_p2p_detach(&cfg->p2p);
                goto wiphy_unreg_out;
-@@ -7048,7 +7097,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
+@@ -7051,7 +7100,7 @@ struct brcmf_cfg80211_info *brcmf_cfg802
        /* (re-) activate FWEH event handling */
        err = brcmf_fweh_activate_events(ifp);
        if (err) {