[alsa-devel] Power management state flow in ALSA

Nobin Mathew nobin.mathew at gmail.com
Wed May 30 12:06:33 CEST 2007


In suspend () the application is dead (freezed state) before ALSA
driver suspend() is called, so in this there is no way application
will get to know the SUSPENDED state of driver.


In resume () ALSA driver resume () (changes the state of driver) is
called first and then applications are activated.

So how the application will get to know the SUSPENDED state of driver
through syscall.No syscall () from ALSA apps(freezed) is happening
during the SUSPENDED duration of ALSA driver.

Am i going wrong ?



On 5/30/07, Takashi Iwai <tiwai at suse.de> wrote:
> At Wed, 30 May 2007 11:52:31 +0530,
> Nobin Mathew wrote:
> >
> > I am having a doubt regarding ALSA power management.
> >
> > My understanding of APM suspend() is like this.
> >
> > Freeze the ALSA apps
> >
> > Call ALSA driver suspend ()
> >
> > in the ALSA suspend() function it saves the current state of substream
> > and changes the state of substream to SUSPENDED.
> >
> > My understanding of APM resume() is like this
> >
> > Call ALSA driver resume ()
> >
> > Activate the ALSA apps
> >
> > In ALSA resume function it restores the saved state of substream.
> >
> >
> > So my question is when ALSA app will get to know the SUSPENDED state
> > of substream.???
>
> When issuing any syscalls.  Then you'll get ESTRPIPE error, which
> indicitaes the stream is in the SUSPEND state.
>
>
> Takashi
>


More information about the Alsa-devel mailing list