[Gta04-owner] wifi power saving

H. Nikolaus Schaller hns at goldelico.com
Mon Nov 30 16:26:31 CET 2015


Hi,

Am 29.11.2015 um 21:30 schrieb Andreas Kemnade <andreas at kemnade.info>:

> Hi,
> 
> there is one thing called ieee80211 power saving mode which puts the
> interface into a low power state. So power consumption is reduced when
> there is little traffic. Since packets are buffered, the symptons are
> higher, irregular ping times. which drop when you use
> e.g. ping -i 0.2 host
> 
> On GTA02 there was a special command like
> wmiconfig -i wlan0 performance / rec
> The difference in power consumption is dramatic.
> 
> On several other hardware you can simply enable/disable power saving
> with iwconfig wlanX power on resp. off.
> in iwconfig you have a line
>          Power Management:off
> 
> The libertas wifi driver supports power management in our
> 2.6.32-hw-validation kernel. The ping behaviour shows up which I have
> demonstrated at the OHSW meeting in Garching.
> Now at home (the first thing I did) I connected my pseudo-battery (the
> 2.6.32 has no hdq support!) to my labor power supply and found the
> following values with a bit weird-configured 2.6.32 kernel:
> 360mA wifi powered off
> 580mA wifi powered on and iwconfig wlan0 power off

looks as if iwconfig power on/off just enables/disables the interface but
does not power up/down the chip?

> 380mA+ spikes wifi powered on and iwconfig wlan0 power on

here the interface would be enabled and the chip can decide to power down...

> 
> In e.g. 3.7 there still appears Power Management:on in iwconfig output
> but iwconfig power on/off fails.
> Power saving needs to be enabled  and disabled by the driver at the
> right times.

Do we have an idea how this mode is enabled through some sdio control
commands?

> 
> Reasons:
> - One ugly block of code commented out by
>  #ifdef TODO
>  which needs to be understood to have a good solution 
>  That block of code is vital to the power saving stuff so there
>  has to be a hack to have any power saving
> - driver switched to cfg80211, the interface iwconfig power accesses was
>  provided for cfg80211
> - some inconsistencies after buffer reorganisation (some code expects
>  headers stripped off but gets buffers with headers
> - probably other power-saving code which was not adopted when doing
>  structural changes in the driver
> 
> So for first tries there will be a set of patches where some of them
> are hacks and other ones clear bugfixes. 
> I will first try to fix 3.7 since there the libertas driver is in good
> condition. So I have a better chance to learn how the driver works and
> I will not run into other driver problems. 

Looks like a good strategy! I hope we can help you to get it working.

BR,
Nikolaus



More information about the Gta04-owner mailing list