From: Brian Swetland <swetland@google.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>,
"Kevin Hilman" <khilman@deeprootsystems.com>,
"Arve Hjønnevåg" <arve@android.com>,
linux-pm@lists.linux-foundation.org,
linux-kernel@vger.kernel.org,
"Alan Stern" <stern@rowland.harvard.edu>,
"Tejun Heo" <tj@kernel.org>, "Oleg Nesterov" <oleg@redhat.com>,
"Paul Walmsley" <paul@pwsan.com>,
magnus.damm@gmail.com, "mark gross" <mgross@linux.intel.com>,
"Arjan van de Ven" <arjan@infradead.org>,
"Geoff Smith" <geoffx.smith@intel.com>
Subject: Re: [PATCH 0/8] Suspend block api (version 6)
Date: Wed, 5 May 2010 05:00:33 -0700 [thread overview]
Message-ID: <j2xa55d774e1005050500ocaa77b0di8e9eb58ce9c82d58@mail.gmail.com> (raw)
In-Reply-To: <20100505110630.GA5754@opensource.wolfsonmicro.com>
On Wed, May 5, 2010 at 4:06 AM, Mark Brown
<broonie@opensource.wolfsonmicro.com> wrote:
> On Wed, May 05, 2010 at 02:22:30AM +0200, Rafael J. Wysocki wrote:
>> On Wednesday 05 May 2010, Mark Brown wrote:
>
>> > On a mobile phone when the system is in a voice call the data flow for
>> > the call is entirely handled outside the CPU (normally referred to as
>> > Applications Processor or AP here) by the baseband and audio CODEC,
>
>> In that case someone (either a driver or, most likely, user space) will need to
>> keep a suspend blocker active.
>
> That is not actually what Android systems are doing, and if it is what's
> supposed to happen then I'd really expect to see a patch to ASoC as part
> of this series which shows how this is supposed to be integrated - it's
> the sort of thing I'd expect to see some kernel space management for.
>
> Honestly I don't think that's a very good solution for actual systems,
> though. A part of the reasoning behind designing systems in this way is
> allowing the AP to go into the lowest possible power state while on a
> voice call so it doesn't seem at all unreasonable for the system
> integrator to expect that the AP will be driven into the standard low
> power state the system uses for it during a call and in a system using
> opportunistic suspend that's suspend mode.
Yup. And that's exactly what happens on the platforms we've shipped
on so far -- the apps side of the world fully suspends while in a
voice call. Some events (prox sensor, buttons, modem sending a state
notification) will wake it up, of course.
I haven't spent much time looking at alsa/asoc yet, but it's on my
list for 2010 -- I'm hoping to migrate the very simple audio drivers I
wrote for the msm platform originally to actually be alsa drivers as
part of the general "try to use existing interfaces if they fit" plan
we've been working toward.
The suspend_block system gets us what we need today (well what we
needed three years ago too!) to ship and hit reasonable power targets
on a number of platforms. There's been a lot of various handwaving
about "android kernel forks" and what have you, but here we are again,
trying to work out perhaps the only "new subsystem" type change that
our driver code depends on (almost all other contentious stuff is self
contained and you can take or leave it).
Our hope here is to get something out there in the near term so that
the various drivers we maintain would "just work" in mainline (your
choice of if you use suspend_block or not -- it's designed to be an
option) and we can move forward. If in the future runtime power
management or other systems completely obsolete suspend_blockers,
awesome, we remove 'em.
Brian
next prev parent reply other threads:[~2010-05-05 12:00 UTC|newest]
Thread overview: 324+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-30 22:36 [PATCH 0/8] Suspend block api (version 6) Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 1/8] PM: Add suspend block api Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 2/8] PM: suspend_block: Add driver to access suspend blockers from user-space Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 3/8] PM: suspend_block: Abort task freezing if a suspend_blocker is active Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 4/8] PM: suspend_block: Add debugfs file Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 5/8] PM: suspend_block: Add suspend_blocker stats Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 6/8] PM: Add suspend blocking work Arve Hjønnevåg
2010-04-30 22:37 ` [PATCH 7/8] Input: Block suspend while event queue is not empty Arve Hjønnevåg
2010-04-30 22:37 ` [PATCH 8/8] power_supply: Block suspend while power supply change notifications are pending Arve Hjønnevåg
2010-05-01 6:14 ` [PATCH 6/8] PM: Add suspend blocking work Tejun Heo
2010-05-02 7:05 ` Pavel Machek
2010-05-04 11:16 ` [PATCH 4/8] PM: suspend_block: Add debugfs file Andi Kleen
2010-05-04 21:06 ` Arve Hjønnevåg
2010-05-02 6:57 ` [PATCH 3/8] PM: suspend_block: Abort task freezing if a suspend_blocker is active Pavel Machek
2010-05-02 7:04 ` [PATCH 2/8] PM: suspend_block: Add driver to access suspend blockers from user-space Pavel Machek
2010-05-02 21:23 ` Rafael J. Wysocki
2010-05-02 21:56 ` Alan Stern
2010-05-03 15:03 ` Rafael J. Wysocki
2010-05-03 21:26 ` Arve Hjønnevåg
2010-05-03 21:49 ` Rafael J. Wysocki
2010-05-03 22:01 ` Arve Hjønnevåg
2010-05-04 20:02 ` Rafael J. Wysocki
2010-05-04 4:16 ` Pavel Machek
2010-05-02 6:56 ` [PATCH 1/8] PM: Add suspend block api Pavel Machek
2010-05-02 20:10 ` Rafael J. Wysocki
2010-05-02 20:52 ` Pavel Machek
2010-05-02 21:29 ` Rafael J. Wysocki
2010-05-03 19:01 ` Pavel Machek
2010-05-03 21:38 ` Rafael J. Wysocki
2010-05-03 22:11 ` Alan Stern
2010-05-03 22:24 ` Arve Hjønnevåg
2010-05-02 7:01 ` Pavel Machek
2010-05-04 5:12 ` [linux-pm] " mark gross
2010-05-04 13:59 ` Alan Stern
2010-05-04 16:03 ` mark gross
2010-05-04 17:16 ` Alan Stern
2010-05-05 1:50 ` mark gross
2010-05-05 13:31 ` Matthew Garrett
2010-05-05 20:09 ` mark gross
2010-05-05 20:21 ` Matthew Garrett
2010-05-05 15:44 ` Alan Stern
2010-05-05 20:28 ` mark gross
2010-05-05 21:12 ` Alan Stern
2010-05-05 21:37 ` Brian Swetland
2010-05-05 23:47 ` Tony Lindgren
2010-05-05 23:56 ` Brian Swetland
2010-05-06 0:05 ` Tony Lindgren
2010-05-06 4:16 ` Arve Hjønnevåg
2010-05-06 17:04 ` Tony Lindgren
2010-05-07 0:10 ` Arve Hjønnevåg
2010-05-07 15:54 ` Tony Lindgren
2010-05-28 6:43 ` Pavel Machek
2010-05-28 7:01 ` Arve Hjønnevåg
2010-05-06 13:40 ` Matthew Garrett
2010-05-06 17:01 ` Tony Lindgren
2010-05-06 17:09 ` Matthew Garrett
2010-05-06 17:14 ` Tony Lindgren
2010-05-06 17:22 ` Matthew Garrett
2010-05-06 17:38 ` Tony Lindgren
2010-05-06 17:43 ` Matthew Garrett
2010-05-06 18:33 ` Tony Lindgren
2010-05-06 18:44 ` Matthew Garrett
2010-05-07 2:05 ` Tony Lindgren
2010-05-07 17:12 ` Matthew Garrett
2010-05-07 17:35 ` Tony Lindgren
2010-05-07 17:50 ` Matthew Garrett
2010-05-07 18:01 ` Tony Lindgren
2010-05-07 18:28 ` Matthew Garrett
2010-05-07 18:43 ` Tony Lindgren
2010-05-07 18:46 ` Matthew Garrett
2010-05-07 19:06 ` Daniel Walker
2010-05-07 19:28 ` Tony Lindgren
2010-05-07 19:33 ` Matthew Garrett
2010-05-07 19:55 ` Tony Lindgren
2010-05-07 20:28 ` Matthew Garrett
2010-05-07 20:53 ` Tony Lindgren
2010-05-07 21:03 ` Matthew Garrett
2010-05-07 21:25 ` Tony Lindgren
2010-05-07 21:32 ` Arve Hjønnevåg
2010-05-07 21:39 ` Matthew Garrett
2010-05-07 21:42 ` Tony Lindgren
2010-05-07 21:48 ` Matthew Garrett
2010-05-07 22:00 ` Tony Lindgren
2010-05-07 22:28 ` Matthew Garrett
2010-05-07 21:30 ` Daniel Walker
2010-05-07 21:35 ` Arve Hjønnevåg
2010-05-07 21:43 ` Daniel Walker
2010-05-07 21:38 ` Matthew Garrett
2010-05-06 18:47 ` Alan Stern
2010-05-07 2:20 ` Tony Lindgren
2010-05-28 13:29 ` Pavel Machek
2010-05-28 13:42 ` Brian Swetland
2010-05-06 17:35 ` Daniel Walker
2010-05-06 18:36 ` Tony Lindgren
2010-05-06 19:11 ` Daniel Walker
2010-05-07 2:00 ` Tony Lindgren
2010-05-07 17:20 ` Daniel Walker
2010-05-07 17:36 ` Matthew Garrett
2010-05-07 17:40 ` Daniel Walker
2010-05-07 17:51 ` Matthew Garrett
2010-05-07 18:00 ` Daniel Walker
2010-05-07 18:17 ` Tony Lindgren
2010-05-07 17:50 ` Tony Lindgren
2010-05-07 3:45 ` mgross
2010-05-07 3:45 ` mgross
2010-05-07 4:10 ` Arve Hjønnevåg
2010-05-04 20:40 ` Arve Hjønnevåg
2010-05-03 16:40 ` [PATCH 0/8] Suspend block api (version 6) Kevin Hilman
2010-05-03 17:12 ` Alan Stern
2010-05-03 18:17 ` Kevin Hilman
2010-05-03 18:07 ` Mark Brown
2010-05-03 21:18 ` Rafael J. Wysocki
2010-05-03 23:37 ` Kevin Hilman
2010-05-04 0:09 ` Arve Hjønnevåg
2010-05-04 0:43 ` Brian Swetland
2010-05-04 13:59 ` Mark Brown
2010-05-04 18:06 ` Kevin Hilman
2010-05-04 19:06 ` Mark Brown
2010-05-04 20:37 ` Rafael J. Wysocki
2010-05-04 23:14 ` Kevin Hilman
2010-05-04 23:42 ` Rafael J. Wysocki
2010-05-04 20:23 ` Rafael J. Wysocki
2010-05-04 20:44 ` Rafael J. Wysocki
2010-05-04 23:56 ` Mark Brown
2010-05-05 0:22 ` Rafael J. Wysocki
2010-05-05 1:11 ` Brian Swetland
2010-05-05 11:06 ` Mark Brown
2010-05-05 12:00 ` Brian Swetland [this message]
2010-05-05 13:56 ` Mark Brown
2010-05-05 17:33 ` Matthew Garrett
2010-05-05 18:36 ` Alan Stern
2010-05-05 18:52 ` Matthew Garrett
2010-05-05 19:13 ` Alan Stern
2010-05-05 19:22 ` Matthew Garrett
2010-05-05 19:52 ` Mark Brown
2010-05-05 19:55 ` tytso
2010-05-05 20:26 ` Mark Brown
2010-05-05 20:44 ` Rafael J. Wysocki
2010-05-05 21:57 ` Mark Brown
2010-05-05 22:03 ` Brian Swetland
2010-05-05 22:05 ` Rafael J. Wysocki
2010-05-05 23:09 ` Mark Brown
2010-05-05 23:33 ` Rafael J. Wysocki
2010-05-06 0:21 ` Mark Brown
2010-05-06 0:51 ` Rafael J. Wysocki
2010-05-05 20:02 ` Matthew Garrett
2010-05-05 20:09 ` Mark Brown
2010-05-05 19:39 ` Mark Brown
2010-05-05 20:56 ` Brian Swetland
2010-05-05 23:40 ` Mark Brown
2010-05-06 4:25 ` Arve Hjønnevåg
2010-05-07 10:04 ` Mark Brown
2010-05-07 10:57 ` Arve Hjønnevåg
2010-05-07 11:21 ` Mark Brown
2010-05-07 11:29 ` Theodore Tso
2010-05-07 12:25 ` Mark Brown
2010-05-07 12:37 ` Brian Swetland
2010-05-07 13:30 ` Mark Brown
2010-05-11 18:47 ` Mark Brown
2010-05-07 11:41 ` Arve Hjønnevåg
2010-05-07 14:00 ` Mark Brown
2010-05-05 19:07 ` Mark Brown
2010-05-05 19:20 ` Alan Stern
2010-05-05 19:28 ` Matthew Garrett
2010-05-05 20:04 ` Alan Stern
2010-05-05 20:15 ` Mark Brown
2010-05-05 20:28 ` Rafael J. Wysocki
2010-05-05 23:03 ` Kevin Hilman
2010-05-05 23:16 ` Rafael J. Wysocki
2010-05-05 23:42 ` Brian Swetland
2010-05-06 14:08 ` Alan Stern
2010-05-06 19:26 ` Rafael J. Wysocki
2010-05-05 18:39 ` Mark Brown
2010-05-05 15:35 ` Alan Stern
2010-05-05 16:27 ` Mark Brown
2010-05-04 18:04 ` Kevin Hilman
2010-05-04 0:43 ` Matthew Garrett
2010-05-04 13:51 ` Alan Stern
2010-05-04 14:53 ` Mark Brown
2010-05-04 15:13 ` Kevin Hilman
2010-05-04 15:27 ` Matthew Garrett
2010-05-06 1:40 ` Magnus Damm
2010-05-04 15:13 ` Kevin Hilman
2010-05-04 15:28 ` Matthew Garrett
2010-05-03 21:50 ` Matthew Garrett
[not found] ` <alpine.DEB.2.00.1005141408260.3348@utopia.booyaka.com>
[not found] ` <20100514203202.GA12409@srcf.ucam.org>
[not found] ` <87aas2azc5.fsf@deeprootsystems.com>
[not found] ` <20100514231510.GG16989@thunk.org>
[not found] ` <87r5laa4oc.fsf@deeprootsystems.com>
[not found] ` <AANLkTilL90pYVlquvMDAEPHj_AraEi9Qzk-0tTjw9Bkx@mail.gmail.com>
2010-05-17 20:07 ` [linux-pm] " Mike Chan
2010-05-17 20:17 ` Vitaly Wool
2010-05-17 21:04 ` Mike Chan
2010-05-17 22:55 ` Kevin Hilman
2010-05-17 23:04 ` Brian Swetland
2010-05-24 18:57 ` Pavel Machek
2010-05-24 19:08 ` Matthew Garrett
2010-05-25 1:16 ` Arve Hjønnevåg
2010-05-26 17:32 ` Pavel Machek
2010-05-05 20:35 ` mark gross
2010-05-10 18:06 ` Kevin Hilman
2010-05-10 20:25 ` Rafael J. Wysocki
2010-05-11 16:12 ` Tony Lindgren
2010-05-11 16:14 ` Matthew Garrett
2010-05-11 16:36 ` Tony Lindgren
2010-05-11 16:45 ` Matthew Garrett
2010-05-11 16:58 ` Tony Lindgren
2010-05-11 17:03 ` Matthew Garrett
2010-05-11 17:24 ` Tony Lindgren
2010-05-11 17:30 ` Matthew Garrett
2010-05-11 17:48 ` Tony Lindgren
2010-05-11 18:01 ` Matthew Garrett
2010-05-11 18:19 ` Rafael J. Wysocki
2010-05-12 1:11 ` Arve Hjønnevåg
2010-05-12 11:22 ` Mark Brown
2010-05-13 3:35 ` [linux-pm] " Paul Walmsley
2010-05-13 12:17 ` Matthew Garrett
2010-05-13 17:33 ` Daniel Walker
2010-05-13 18:17 ` Brian Swetland
2010-05-13 18:25 ` Daniel Walker
2010-05-13 18:36 ` Matthew Garrett
2010-05-13 18:59 ` Daniel Walker
2010-05-13 19:11 ` Matthew Garrett
2010-05-13 19:36 ` Daniel Walker
2010-05-13 19:48 ` Matthew Garrett
2010-05-13 21:11 ` Rafael J. Wysocki
2010-05-13 21:16 ` Daniel Walker
2010-05-13 21:27 ` Rafael J. Wysocki
2010-05-13 21:33 ` Daniel Walker
2010-05-13 21:36 ` Tony Lindgren
2010-05-13 21:54 ` Rafael J. Wysocki
2010-05-13 21:46 ` Greg KH
2010-05-13 22:27 ` Mark Brown
2010-05-13 22:45 ` Greg KH
2010-05-14 0:03 ` Mark Brown
2010-05-13 22:46 ` Rafael J. Wysocki
2010-05-13 23:36 ` Mark Brown
2010-05-13 23:48 ` Brian Swetland
2010-05-14 0:29 ` Mark Brown
2010-05-13 22:33 ` Woodruff, Richard
2010-05-13 22:46 ` Greg KH
2010-05-13 23:06 ` Arve Hjønnevåg
2010-05-13 23:28 ` Brian Swetland
2010-05-14 16:47 ` Daniel Walker
2010-05-13 14:16 ` Alan Stern
2010-05-13 19:17 ` Tony Lindgren
2010-05-13 19:25 ` Matthew Garrett
2010-05-13 19:42 ` Tony Lindgren
2010-05-13 19:53 ` Matthew Garrett
2010-05-13 20:00 ` Tony Lindgren
2010-05-13 20:08 ` Matthew Garrett
2010-05-13 20:23 ` Tony Lindgren
2010-05-13 20:34 ` Matthew Garrett
2010-05-13 21:10 ` Tony Lindgren
2010-05-13 21:21 ` Matthew Garrett
2010-05-13 21:34 ` Tony Lindgren
2010-05-15 19:54 ` Matthew Garrett
2010-05-13 21:21 ` Rafael J. Wysocki
2010-05-13 21:25 ` Tony Lindgren
2010-05-13 21:56 ` Rafael J. Wysocki
2010-05-14 20:41 ` Kevin Hilman
2010-05-14 21:25 ` Rafael J. Wysocki
2010-05-14 21:40 ` Kevin Hilman
2010-05-14 21:50 ` Rafael J. Wysocki
2010-05-14 22:45 ` Kevin Hilman
2010-05-14 22:59 ` Brian Swetland
2010-05-15 2:58 ` Alan Stern
2010-05-15 3:40 ` Brian Swetland
2010-05-15 21:19 ` Alan Stern
2010-05-17 15:40 ` Kevin Hilman
2010-05-17 17:04 ` James Bottomley
2010-05-17 17:47 ` Felipe Balbi
2010-05-17 17:58 ` Matthew Garrett
2010-05-17 18:16 ` Felipe Balbi
2010-05-17 17:59 ` James Bottomley
2010-05-17 18:12 ` Felipe Balbi
2010-05-17 18:26 ` Brian Swetland
2010-05-17 18:39 ` Felipe Balbi
2010-05-17 18:45 ` Brian Swetland
2010-05-17 20:22 ` Rafael J. Wysocki
2010-05-17 18:45 ` Mark Brown
2010-05-17 18:47 ` Mike Chan
2010-05-17 19:24 ` James Bottomley
2010-05-17 19:38 ` Felipe Balbi
2010-05-17 19:39 ` Felipe Balbi
2010-05-17 19:49 ` James Bottomley
2010-05-18 6:40 ` Felipe Balbi
2010-05-18 13:59 ` James Bottomley
2010-05-19 6:59 ` Felipe Balbi
2010-05-19 20:42 ` Rafael J. Wysocki
2010-05-20 4:49 ` Felipe Balbi
2010-05-20 11:27 ` Vladimir Pantelic
2010-05-20 11:29 ` Felipe Balbi
2010-05-20 17:40 ` David Brownell
2010-05-20 18:50 ` Felipe Balbi
2010-05-20 23:08 ` David Brownell
2010-05-20 5:15 ` Florian Mickler
2010-05-20 8:57 ` Felipe Balbi
2010-05-20 8:57 ` Felipe Balbi
2010-05-20 10:05 ` Florian Mickler
2010-05-20 10:15 ` Felipe Balbi
2010-05-17 18:54 ` Kevin Hilman
2010-05-17 17:57 ` Daniel Walker
2010-05-15 20:14 ` Rafael J. Wysocki
2010-05-16 19:44 ` Mark Brown
2010-05-13 22:24 ` tytso
2010-05-13 20:36 ` Daniel Walker
2010-05-14 16:06 ` Kevin Hilman
2010-05-24 21:25 ` Pavel Machek
2010-05-13 21:41 ` Alan Stern
2010-05-13 21:54 ` Tony Lindgren
2010-05-13 22:07 ` Rafael J. Wysocki
2010-05-13 22:26 ` Arve Hjønnevåg
2010-05-13 21:14 ` Rafael J. Wysocki
2010-05-13 21:31 ` Tony Lindgren
2010-05-13 21:57 ` Rafael J. Wysocki
2010-05-13 21:37 ` Alan Stern
2010-05-13 21:47 ` Tony Lindgren
2010-05-13 22:01 ` Alan Stern
2010-05-13 22:08 ` Tony Lindgren
2010-05-13 22:28 ` Rafael J. Wysocki
2010-05-15 2:35 ` Alan Stern
2010-05-15 4:04 ` Arve Hjønnevåg
2010-05-13 22:04 ` Rafael J. Wysocki
2010-05-14 3:25 ` Magnus Damm
2010-05-14 16:18 ` Kevin Hilman
2010-05-15 2:47 ` Alan Stern
2010-05-24 21:24 ` Pavel Machek
[not found] <CEE6BB42CAD6E947908279175AF8470A025A7D7DC4@EXDCVYMBSTM006.EQ1STM.local>
[not found] ` <Pine.LNX.4.44L0.1005261156130.1328-100000@iolanthe.rowland.org>
[not found] ` <CEE6BB42CAD6E947908279175AF8470A025A8206ED@EXDCVYMBSTM006.EQ1STM.local>
2010-05-27 8:04 ` Florian Mickler
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=j2xa55d774e1005050500ocaa77b0di8e9eb58ce9c82d58@mail.gmail.com \
--to=swetland@google.com \
--cc=arjan@infradead.org \
--cc=arve@android.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=geoffx.smith@intel.com \
--cc=khilman@deeprootsystems.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=magnus.damm@gmail.com \
--cc=mgross@linux.intel.com \
--cc=oleg@redhat.com \
--cc=paul@pwsan.com \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
--cc=tj@kernel.org \
/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).