Wake up to listen to next beacon when struct ieee80211_conf -> listen_interval == 1 Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx> --- drivers/staging/vt6656/power.c | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/drivers/staging/vt6656/power.c b/drivers/staging/vt6656/power.c index 6c34d36..ace0cba 100644 --- a/drivers/staging/vt6656/power.c +++ b/drivers/staging/vt6656/power.c @@ -293,25 +293,15 @@ int PSbSendNullPacket(struct vnt_private *pDevice) int vnt_next_tbtt_wakeup(struct vnt_private *priv) { - struct vnt_manager *mgmt = &priv->vnt_mgmt; + struct ieee80211_hw *hw = priv->hw; + struct ieee80211_conf *conf = &hw->conf; int wake_up = false; - if (mgmt->wListenInterval >= 2) { - if (mgmt->wCountToWakeUp == 0) - mgmt->wCountToWakeUp = mgmt->wListenInterval; - - mgmt->wCountToWakeUp--; - - if (mgmt->wCountToWakeUp == 1) { - /* Turn on wake up to listen next beacon */ - vnt_mac_reg_bits_on(priv, MAC_REG_PSCTL, PSCTL_LNBCN); - priv->bPSRxBeacon = false; - wake_up = true; - } else if (!priv->bPSRxBeacon) { - /* Listen until RxBeacon */ - vnt_mac_reg_bits_on(priv, MAC_REG_PSCTL, PSCTL_LNBCN); - } + if (conf->listen_interval == 1) { + /* Turn on wake up to listen next beacon */ + vnt_mac_reg_bits_on(priv, MAC_REG_PSCTL, PSCTL_LNBCN); + wake_up = true; } + return wake_up; } - -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html