Commit 3fac6dfd authored by Senthil Balasubramanian's avatar Senthil Balasubramanian Committed by John W. Linville
Browse files

ath9k: fix regression which prevents chip sleep after CAB data

The patch:

commit 293dc5df

Author: Gabor Juhos <>
Date:   Fri Jun 19 12:17:48 2009 +0200

    ath9k: remove ath_rx_ps_back_to_sleep helper

    This helper only clears the SC_OP_WAIT_FOR_{BEACON,CAB} flags.
    Remove it and clear these flags directly in the approptiate
    places instead.

    Changes-licensed-under: ISC
Signed-off-by: default avatarGabor Juhos <>
Signed-off-by: default avatarJohn W. Linville <>

introduced a regression which forgot to lift the beacon flag
after we received all broadcast and multicast data. This meant
we never went to sleep consuming about ~650mW on idle. This pretty
much broke power save completely.

This patch has fixes for stable kernels [2.6.32+].

Cc: Paul Stewart <>
Cc: Sameer Nanda <>
Cc: Gabor Juhos <>
Cc: Amod Bodas <>
Signed-off-by: default avatarSenthil Balasubramanian <>
Signed-off-by: default avatarLuis R. Rodriguez <>
Signed-off-by: default avatarJohn W. Linville <>
parent f01a067d
......@@ -639,7 +639,7 @@ static void ath_rx_ps(struct ath_softc *sc, struct sk_buff *skb)
* No more broadcast/multicast frames to be received at this
* point.
sc->ps_flags &= ~PS_WAIT_FOR_CAB;
sc->ps_flags &= ~(PS_WAIT_FOR_CAB | PS_WAIT_FOR_BEACON);
ath_print(common, ATH_DBG_PS,
"All PS CAB frames received, back to sleep\n");
} else if ((sc->ps_flags & PS_WAIT_FOR_PSPOLL_DATA) &&
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment