[PATCH] wcn36xx: Send NULL data packet when exiting BMPS

Loic Poulain loic.poulain at linaro.org
Fri Nov 20 03:15:53 EST 2020


On Fri, 20 Nov 2020 at 03:13, Bryan O'Donoghue
<bryan.odonoghue at linaro.org> wrote:
>
> This commit updates the BMPS exit path to be consistent with downstream in
> terms of exiting BMPS mode. Downstream sets the flag to send a NULL data
> frame to the host on exiting BMPS.
>
> This will tell the AP to send any queued frames to the STA immediately.
> Verified the relevant bit toggle in wireshark.
>
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue at linaro.org>
> ---
>  drivers/net/wireless/ath/wcn36xx/smd.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/wireless/ath/wcn36xx/smd.c b/drivers/net/wireless/ath/wcn36xx/smd.c
> index 8ff1eda8f942..acf533fae46a 100644
> --- a/drivers/net/wireless/ath/wcn36xx/smd.c
> +++ b/drivers/net/wireless/ath/wcn36xx/smd.c
> @@ -2176,6 +2176,7 @@ int wcn36xx_smd_exit_bmps(struct wcn36xx *wcn, struct ieee80211_vif *vif)
>         INIT_HAL_MSG(msg_body, WCN36XX_HAL_EXIT_BMPS_REQ);
>
>         msg_body.bss_index = vif_priv->bss_index;
> +       msg_body.send_data_null = 1;

I'm quite sure I've seen null data packet wakeup (PS=0) when sniffing
wcn3620, but maybe it was submitted by mac80211, have you then checked
you do not end with double null packets with that patch (one from
firmware and one from mac layer)?


>
>         PREPARE_HAL_BUF(wcn->hal_buf, msg_body);
>
> --
> 2.28.0
>



More information about the wcn36xx mailing list