wl1251: change wake_up_conditions config
authorGrazvydas Ignotas <notasas@gmail.com>
Sat, 14 Feb 2015 01:21:38 +0000 (03:21 +0200)
committerGrazvydas Ignotas <notasas@gmail.com>
Fri, 20 Feb 2015 22:05:30 +0000 (00:05 +0200)
commitfc9d1882a7b4ca1182f1b6f12aa87281a2a54f17
tree71a6861c458d8f48f3a8e1c1d8519ff6225cffae
parentd93eda2f03c2b1ae007033aee80d573285b66b9e
wl1251: change wake_up_conditions config

Setting BEACON_BITMAP (or never sending wake_up_conditions at all) reduces
ping times from external device from jumping between to 20-230ms to 20-100ms
and gives better ssh experience.
The power usage increase was measured to be ~8mA@4.1V, so I consider it
worth it (in comparison, connected and idle USB wifi dongle draws ~150mA
from the battery).

There is a new sysfs file to enable old behavior:
/sys/bus/mmc/devices/mmc2\:0001/mmc2\:0001\:1/long_doze_mode
but the command is only sent once.

Hopefully this will improve router compatibility too.
note: WAKE_UP_EVENT_DTIM_BITMAP is called "long doze mode" by TI driver.
drivers/net/wireless/wl1251/main.c
drivers/net/wireless/wl1251/ps.c
drivers/net/wireless/wl1251/sdio.c
drivers/net/wireless/wl1251/wl1251.h