brcmfmac: Remove the call to "dtim_assoc" IOVAR
authorRamesh Rangavittal <ramesh.rangavittal@infineon.com>
Thu, 22 Sep 2022 10:41:40 +0000 (05:41 -0500)
committerKalle Valo <kvalo@kernel.org>
Tue, 27 Sep 2022 06:09:07 +0000 (09:09 +0300)
When STA roams from one AP to another, after roam is complete, host
driver tries to get TIM information from firmware. This is no longer
supported in the firmware & hence, this call will always fail.
This failure results in the below message being displayed on the
console all the time when roam is done.

ieee80211 phy0: brcmf_update_bss_info: wl dtim_assoc failed (-52)

Changes ensure that the host driver will no longer try to get TIM
information from firmware.

Signed-off-by: Ramesh Rangavittal <ramesh.rangavittal@infineon.com>
Signed-off-by: Chi-hsien Lin <chi-hsien.lin@infineon.com>
Signed-off-by: Ian Lin <ian.lin@infineon.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220922104140.11889-5-ian.lin@infineon.com
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c

index 4206814..dfcfb33 100644 (file)
@@ -3164,10 +3164,7 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg,
                                 struct brcmf_if *ifp)
 {
        struct brcmf_pub *drvr = cfg->pub;
-       struct brcmf_bss_info_le *bi;
-       const struct brcmf_tlv *tim;
-       size_t ie_len;
-       u8 *ie;
+       struct brcmf_bss_info_le *bi = NULL;
        s32 err = 0;
 
        brcmf_dbg(TRACE, "Enter\n");
@@ -3181,29 +3178,8 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg,
                bphy_err(drvr, "Could not get bss info %d\n", err);
                goto update_bss_info_out;
        }
-
        bi = (struct brcmf_bss_info_le *)(cfg->extra_buf + 4);
        err = brcmf_inform_single_bss(cfg, bi);
-       if (err)
-               goto update_bss_info_out;
-
-       ie = ((u8 *)bi) + le16_to_cpu(bi->ie_offset);
-       ie_len = le32_to_cpu(bi->ie_length);
-
-       tim = brcmf_parse_tlvs(ie, ie_len, WLAN_EID_TIM);
-       if (!tim) {
-               /*
-               * active scan was done so we could not get dtim
-               * information out of probe response.
-               * so we speficially query dtim information to dongle.
-               */
-               u32 var;
-               err = brcmf_fil_iovar_int_get(ifp, "dtim_assoc", &var);
-               if (err) {
-                       bphy_err(drvr, "wl dtim_assoc failed (%d)\n", err);
-                       goto update_bss_info_out;
-               }
-       }
 
 update_bss_info_out:
        brcmf_dbg(TRACE, "Exit");