linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kalle Valo <kalle.valo@nokia.com>
To: "Vivek Natarajan" <vnatarajan@atheros.com>
Cc: <linux-wireless@vger.kernel.org>
Subject: Re: [RFC] mac80211: Enhancements to dynamic power save.
Date: Mon, 01 Dec 2008 17:42:35 +0200	[thread overview]
Message-ID: <87wsej6gwk.fsf@nokia.com> (raw)
In-Reply-To: <20081202011754.GA9382@myhost.users.atheros.com> (ext Vivek Natarajan's message of "Mon\, 1 Dec 2008 17\:17\:54 -0800")

Vivek Natarajan <vnatarajan@atheros.com> writes:

> This patch is based on Kalle's initial RFC patches on dynamic power save.
> Since ath9k/ath5k,stlc45xx and b43 need the driver to send the null
> frame, it is appropriate to do it from mac80211. 

Yes, I agree. Actually the way I implemented this in stlc45xx was to
use PS-Poll. In future, it would be nice to have it supported as well,
but we can add it later.

> +	directed_tim = check_tim(&elems, ifsta->aid, &is_mc);
> +
> +	if (directed_tim || is_mc) {
> +		if (local->hw.conf.flags && IEEE80211_CONF_PS) {
> +			local->hw.conf.flags &= ~IEEE80211_CONF_PS;
> +			ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_PS);
> +			ieee80211_send_nullfunc(local, sdata, 0);
> +		}
> +	}

Maybe I have been working too much with slow embedded hardware, but can
ath5k really wake up for the beacon, send the beacon to the host,
mac80211 read the beacon and then wakeup the hardware to listen for
multicast frames following the beacon? The multicast frames are sent
immeaditely after the dtim beacon, so this should happen really quick.
But most probably I'm just missing something here.

In stlc45xx the firmware listens automatically for the multicast
beacons following dtim beacons and mac80211 doesn't have to do
anything for them.

> -		ret = ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_PS);
> +			ret = ieee80211_hw_config(local,
> +						  IEEE80211_CONF_CHANGE_PS);
> +			ieee80211_send_nullfunc(local, sdata, 0);

Maybe we should have a seperate function for enabling and disabling
power save mode. So that we don't forget sending of the null frame.

-- 
Kalle Valo

  parent reply	other threads:[~2008-12-01 15:42 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-02  1:17 [RFC] mac80211: Enhancements to dynamic power save Vivek Natarajan
2008-12-01 11:53 ` Johannes Berg
2008-12-01 15:08   ` Vivek Natarajan
2008-12-01 15:55     ` Kalle Valo
2008-12-01 15:52   ` Kalle Valo
2008-12-01 23:53   ` Luis R. Rodriguez
2008-12-01 12:05 ` Johannes Berg
2008-12-01 16:17   ` Kalle Valo
2008-12-01 17:00     ` Tomas Winkler
2008-12-02 12:58       ` Vivek Natarajan
2008-12-02 14:29         ` Tomas Winkler
2008-12-01 15:42 ` Kalle Valo [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-12-23  4:44 Vivek Natarajan
2008-12-22 17:12 ` Johannes Berg
2008-12-23 12:50   ` Vivek Natarajan
2008-12-23 20:33 ` Kalle Valo

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=87wsej6gwk.fsf@nokia.com \
    --to=kalle.valo@nokia.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=vnatarajan@atheros.com \
    /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).