Revert "wcn36xx: Disable bmps when encryption is disabled"
This reverts commit c6522a5076
.
Testing on tip-of-tree shows that this is working now. Revert this and
re-enable BMPS for Open APs.
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20211022140447.2846248-3-bryan.odonoghue@linaro.org
This commit is contained in:
parent
2f1ae32f73
commit
285bb1738e
3 changed files with 1 additions and 15 deletions
|
@ -613,15 +613,6 @@ static int wcn36xx_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* FIXME: Only enable bmps support when encryption is enabled.
|
|
||||||
* For any reasons, when connected to open/no-security BSS,
|
|
||||||
* the wcn36xx controller in bmps mode does not forward
|
|
||||||
* 'wake-up' beacons despite AP sends DTIM with station AID.
|
|
||||||
* It could be due to a firmware issue or to the way driver
|
|
||||||
* configure the station.
|
|
||||||
*/
|
|
||||||
if (vif->type == NL80211_IFTYPE_STATION)
|
|
||||||
vif_priv->allow_bmps = true;
|
|
||||||
break;
|
break;
|
||||||
case DISABLE_KEY:
|
case DISABLE_KEY:
|
||||||
if (!(IEEE80211_KEY_FLAG_PAIRWISE & key_conf->flags)) {
|
if (!(IEEE80211_KEY_FLAG_PAIRWISE & key_conf->flags)) {
|
||||||
|
@ -922,7 +913,6 @@ static void wcn36xx_bss_info_changed(struct ieee80211_hw *hw,
|
||||||
vif->addr,
|
vif->addr,
|
||||||
bss_conf->aid);
|
bss_conf->aid);
|
||||||
vif_priv->sta_assoc = false;
|
vif_priv->sta_assoc = false;
|
||||||
vif_priv->allow_bmps = false;
|
|
||||||
wcn36xx_smd_set_link_st(wcn,
|
wcn36xx_smd_set_link_st(wcn,
|
||||||
bss_conf->bssid,
|
bss_conf->bssid,
|
||||||
vif->addr,
|
vif->addr,
|
||||||
|
|
|
@ -25,10 +25,7 @@ int wcn36xx_pmc_enter_bmps_state(struct wcn36xx *wcn,
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif);
|
struct wcn36xx_vif *vif_priv = wcn36xx_vif_to_priv(vif);
|
||||||
|
/* TODO: Make sure the TX chain clean */
|
||||||
if (!vif_priv->allow_bmps)
|
|
||||||
return -ENOTSUPP;
|
|
||||||
|
|
||||||
ret = wcn36xx_smd_enter_bmps(wcn, vif);
|
ret = wcn36xx_smd_enter_bmps(wcn, vif);
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
wcn36xx_dbg(WCN36XX_DBG_PMC, "Entered BMPS\n");
|
wcn36xx_dbg(WCN36XX_DBG_PMC, "Entered BMPS\n");
|
||||||
|
|
|
@ -128,7 +128,6 @@ struct wcn36xx_vif {
|
||||||
enum wcn36xx_hal_bss_type bss_type;
|
enum wcn36xx_hal_bss_type bss_type;
|
||||||
|
|
||||||
/* Power management */
|
/* Power management */
|
||||||
bool allow_bmps;
|
|
||||||
enum wcn36xx_power_state pw_state;
|
enum wcn36xx_power_state pw_state;
|
||||||
|
|
||||||
u8 bss_index;
|
u8 bss_index;
|
||||||
|
|
Loading…
Add table
Reference in a new issue