Commit e832837b authored by Victor Goldenshtein's avatar Victor Goldenshtein Committed by Luciano Coelho
Browse files

wlcore: don't enable BET for high basic rates



The beacon early termination is not relevant for
high basic rates, which doesn't contribute
anything to the PS and only adds unnecessary FW
work.

Enable BET only if the basic rate is less than 9
Mbps.

Signed-off-by: default avatarZiv Riesel <zivriesel@ti.com>
Signed-off-by: default avatarVictor Goldenshtein <victorg@ti.com>
Signed-off-by: default avatarIgal Chernobelsky <igalc@ti.com>
Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
parent 461b958f
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -193,8 +193,12 @@ int wl1271_ps_set_mode(struct wl1271 *wl, struct wl12xx_vif *wlvif,

		set_bit(WLVIF_FLAG_IN_PS, &wlvif->flags);

		/* enable beacon early termination. Not relevant for 5GHz */
		if (wlvif->band == IEEE80211_BAND_2GHZ) {
		/*
		 * enable beacon early termination.
		 * Not relevant for 5GHz and for high rates.
		 */
		if ((wlvif->band == IEEE80211_BAND_2GHZ) &&
		    (wlvif->basic_rate < CONF_HW_BIT_RATE_9MBPS)) {
			ret = wl1271_acx_bet_enable(wl, wlvif, true);
			if (ret < 0)
				return ret;
@@ -204,7 +208,8 @@ int wl1271_ps_set_mode(struct wl1271 *wl, struct wl12xx_vif *wlvif,
		wl1271_debug(DEBUG_PSM, "leaving psm");

		/* disable beacon early termination */
		if (wlvif->band == IEEE80211_BAND_2GHZ) {
		if ((wlvif->band == IEEE80211_BAND_2GHZ) &&
		    (wlvif->basic_rate < CONF_HW_BIT_RATE_9MBPS)) {
			ret = wl1271_acx_bet_enable(wl, wlvif, false);
			if (ret < 0)
				return ret;