linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Luis R. Rodriguez" <rodrigue@qca.qualcomm.com>
To: Marco Porsch <marco.porsch@etit.tu-chemnitz.de>
Cc: <linux-wireless@vger.kernel.org>, <henry@logout.com>
Subject: Re: [ath9k] mesh powersave hardware sleep + wakeup
Date: Fri, 16 Mar 2012 13:45:47 -0700	[thread overview]
Message-ID: <20120316204547.GG18861@tux> (raw)
In-Reply-To: <4F630AEA.10703@etit.tu-chemnitz.de>

On Fri, Mar 16, 2012 at 10:42:02AM +0100, Marco Porsch wrote:
> Hi,
> 
> I am trying to implement the IEEE 802.11s power save schemes in mac80211.
> In 11s it is defined that power save STA doze AND send beacons AND
> wake up periodically for multiple neighbors beacons.
> 
> Is this actually possible with current hardware/drivers (especially ath9k)?
> 
> Regards
> Marco Porsch
> 
> 
> 
> PS: More details:
> 
> We currently have power mode indication and state
> tracking and are working on powersave frame buffering and mesh
> synchronization.
> 
> A next topic will be to put the hardware to sleep to actually save energy.
> Until now we only implemented in mac82011. I looked through mac80211 and
> ath9k and am unsure, how to actually manage sleep and wakeup in the mesh
> context.
> Maybe I should give a brief introduction to IEEE 802.11s powersave here:
> - Each node has to send its own beacon
> - Power mode is not global, but link-specific
> - 3 power modes: active, light sleep, deep sleep
>   - active = always on
>   - light sleep = wake up for the neighbors beacon
>   - deep sleep = only wake up for sending own beacon
> 
> So the critical point here is, that we need to put the hardware to
> sleep but wake up for:
> - sending own beacon
> - TBTT of all neighbors towards we are in light sleep (or maybe all
> neighbors as proof-of-concept)
> so it is a mixture of ad-hoc , station code and completely new stuff.
> 
> A better explanation and a nice example of IEEE 802.11s powersave is
> given here:
> http://dl.dropbox.com/u/31741282/11s_powersave.pdf

I don't have time to review this but it sounds correct that the part
you want to focus on is introducing a wake up mechanism when you
need to initiate radiation for your own beacons. I think right now
we simply disable PS in mac80211 completely if we have a mode of
operation that require beconing. Your challenge is to lift that and
deal with the issues there and all the possible combinations. You
can help with this

This should help you:

http://wireless.kernel.org/en/users/Documentation/Power-consumption

For now you can focus on only allowing through Mesh devices and
the combinations of it but I suspect that some of the work you do
may also help with addressing P2P powersave.

  Luis

  reply	other threads:[~2012-03-16 20:45 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-16  9:42 [ath9k] mesh powersave hardware sleep + wakeup Marco Porsch
2012-03-16 20:45 ` Luis R. Rodriguez [this message]
2012-03-16 22:09   ` Marco Porsch
2012-04-11 11:00     ` [Greenmesh] " Marco Porsch
2012-04-12  4:05       ` Johannes Berg
2012-04-12  7:41         ` Marco Porsch
2012-04-18  2:02           ` Johannes Berg
2012-04-18 14:56             ` Javier Cardona
2012-04-18 15:05               ` Johannes Berg
2012-04-18 15:16                 ` Javier Cardona
2012-04-19  2:41                   ` Yeoh Chun-Yeow
2012-04-19  2:51                     ` Javier Cardona
2012-04-27 15:53       ` Marco Porsch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120316204547.GG18861@tux \
    --to=rodrigue@qca.qualcomm.com \
    --cc=henry@logout.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=marco.porsch@etit.tu-chemnitz.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).