cc65965cbb
The previous implementation was moving back to NETWORK SLEEP state immediately after receiving a Beacon frame. This means that we are unlikely to receive all the buffered broadcast/multicast frames that would be sent after DTIM Beacon frames. Fix this by parsing the Beacon frame and remaining awake, if needed, to receive the buffered broadcast/multicast frames. The last buffered frame will trigger the move back into NETWORK SLEEP state. If the last broadcast/multicast frame is not received properly (or if the AP fails to send it), the next Beacon frame will work as a backup trigger for returning into NETWORK SLEEP. A new debug type, PS (debug=0x800 module parameter), is added to make it easier to debug potential power save issues in the future. Currently, this is only used for the Beacon frame and buffered broadcast/multicast receiving. Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> |
||
---|---|---|
.. | ||
ahb.c | ||
ani.c | ||
ani.h | ||
ath9k.h | ||
beacon.c | ||
calib.c | ||
calib.h | ||
debug.c | ||
debug.h | ||
eeprom.c | ||
eeprom.h | ||
hw.c | ||
hw.h | ||
initvals.h | ||
Kconfig | ||
mac.c | ||
mac.h | ||
main.c | ||
Makefile | ||
pci.c | ||
phy.c | ||
phy.h | ||
rc.c | ||
rc.h | ||
recv.c | ||
reg.h | ||
virtual.c | ||
xmit.c |