[alsa-devel] Problem with snd_soc_suspend
broonie at opensource.wolfsonmicro.com
Thu May 17 23:46:05 CEST 2012
On Thu, May 17, 2012 at 01:21:50PM -0700, Patrick Lai wrote:
> On 5/14/2012 1:34 AM, Mark Brown wrote:
> >This sounds like expected behaviour, if the widgets aren't marked as
> >ignoring suspend then they will be suspended.
> As CODEC is getting more complicated and more widgets would be defined,
> I don't think it's scalable to mark ignore suspend per widget.
You only have to do this for widgets on the edge of the graph, it's
just the same input to output algorithm that's applied as normal but
with a subset of input and output widgets being considered.
> >No, the whole point here is to suspend. If we did that we'd never
> >suspend any active streams.
> If so, what is purpose of ignore_suspend? My problem is that active
> stream which has ignore_suspend flag set ends up suspended because an
> inactive stream without ignore_suspend flag set happens to be using
> same CODEC but different digital audio interface. I don't think it's
> the right behavior. DAPM should maintain widget usage reference. Only
> If all CODEC DAIs that are using given widget are going to suspend
> should DAPM go ahead power off the widget.
The suspend of the device is somewhat orthogonal to the suspend of the
device as a whole - the device as a whole is suspended if there are no
active widgets and the widgets will go inactive if they're not part of
an active path. You will at the very least always have to mark inputs
and outputs that are connected to the DAIs as ignoring suspend, adding
something to flag the DAI widgets now we have those should be trivial.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 836 bytes
Desc: Digital signature
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20120517/b6b5e7fd/attachment.sig
More information about the Alsa-devel