brcmfmac: Remove the call to "dtim_assoc" IOVAR
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
This commit is contained in:
Родитель
11eda8f01d
Коммит
a373f38cd1
|
@ -3164,10 +3164,7 @@ static s32 brcmf_update_bss_info(struct brcmf_cfg80211_info *cfg,
|
||||||
struct brcmf_if *ifp)
|
struct brcmf_if *ifp)
|
||||||
{
|
{
|
||||||
struct brcmf_pub *drvr = cfg->pub;
|
struct brcmf_pub *drvr = cfg->pub;
|
||||||
struct brcmf_bss_info_le *bi;
|
struct brcmf_bss_info_le *bi = NULL;
|
||||||
const struct brcmf_tlv *tim;
|
|
||||||
size_t ie_len;
|
|
||||||
u8 *ie;
|
|
||||||
s32 err = 0;
|
s32 err = 0;
|
||||||
|
|
||||||
brcmf_dbg(TRACE, "Enter\n");
|
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);
|
bphy_err(drvr, "Could not get bss info %d\n", err);
|
||||||
goto update_bss_info_out;
|
goto update_bss_info_out;
|
||||||
}
|
}
|
||||||
|
|
||||||
bi = (struct brcmf_bss_info_le *)(cfg->extra_buf + 4);
|
bi = (struct brcmf_bss_info_le *)(cfg->extra_buf + 4);
|
||||||
err = brcmf_inform_single_bss(cfg, bi);
|
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:
|
update_bss_info_out:
|
||||||
brcmf_dbg(TRACE, "Exit");
|
brcmf_dbg(TRACE, "Exit");
|
||||||
|
|
Загрузка…
Ссылка в новой задаче