[rt2x00-users] [PATCH RFC] rt2800: disable powersaving as default

Johannes Stezenbach js at sig21.net
Wed Jan 26 22:25:10 EST 2011


Hi,

On Wed, Jan 26, 2011 at 10:22:54AM +0100, Ivo Van Doorn wrote:
> > During ongoing bulk data transfer the station never sleeps, so the
> > issue isn't visible.  I found a good test is to ping from AP to station
> > (with no other traffic), the ping latencies are high and there is some loss.
> 
> Well I also did a ping test, and there is no difference in packetloss
> with PS enabled or disabled. And in both cases the loss-ratio was reasonably
> low (<5%)

I'm currently away from my hw, I can post some numbers tomorrow.
What I remember is that the ping latencies in the PS case were ~1 second,
which I think clearly shows the PS STA isn't waking up.

> >> If the beacon timeout is a big issue, doesn't that simply imply we provide the
> >> wrong value to the TBCN_BEFORE_WAKUP register?
> >
> > I don't know. The legacy driver never configures it.  Instead it
> > uses a Linux timer with a fixed 70msec timeout (AUTO_WAKEUP_TIMEOUT)
> > in AsicSleepThenAutoWakeup().  And the comment for AsicSleepThenAutoWakeup()
> > says AUTO_WAKEUP won't wakeup the PHY but only trigger an irq, which explains
> > why they do not use it on USB since we can't get the irq.
> >
> > So I guess for USB there are two choices:
> > 1. use a Linux hrtimer to wake up in time to catch the desired beacon
> > 2. disable PS
> 
> But the legacy drivers does handle powersaving, so it wouldn't work in there
> then either....

Well, just look at the code for the legacy driver.  It uses
a Linux timer for the wake-up, so we need to do the same thing.


Johannes



More information about the users mailing list