Re: Async resume patch (was: Re: [GIT PULL] PM updates for 2.6.33)

Mark Brown
2009-12-09T18:08:36Z

On Wed, Dec 09, 2009 at 12:10:03PM -0500, Alan Stern wrote:
> On Wed, 9 Dec 2009, Mark Brown wrote:

> > Worst case is about a second for both resume and suspend which means two
> > seconds total but it's very hardware dependant.

> A second seems awfully long. What happens if audio isn't being played
> when the suspend occurs? Can't you shorten things with no artifacts in
> that case?

For the affected hardware the problem is basically the same with or
without audio being played. As I said in my reply to Linus this is
delays caused by ramping reference voltages. These delays are
sufficiently long that the reference voltages have to be maintained all
the time so that they don't delay the start of audio streams which means
that having or not having an audio stream at suspend time doesn't affect
the reference voltage ramps since we don't turn them off when not in
use. There is a win from other stuff having been shut off already, but
it's already being exploited.

On suspend the problem is the same as for resume - we need to ramp the
voltages quietly, this time down to zero. We want to make sure they're
actually at zero to ensure that the ramp at resume time starts from a
known hardware state.