[alsa-devel] [PATCHv2 3/3] ASoC: Extend DAPM to handle power changes on cross-device paths

Mark Brown broonie at opensource.wolfsonmicro.com
Fri Nov 12 16:13:32 CET 2010


On Fri, Nov 12, 2010 at 11:23:26AM +0200, Jarkko Nikula wrote:

>  	list_for_each_entry_safe(w, n, list, power_list) {
>  		ret = 0;
>  
>  		/* Do we need to apply any queued changes? */
> -		if (sort[w->id] != cur_sort || w->reg != cur_reg) {
> +		if (sort[w->id] != cur_sort || w->reg != cur_reg ||
> +		    w->dapm != cur_dapm) {
>  			if (!list_empty(&pending))
> -				dapm_seq_run_coalesced(dapm, &pending);
> +				dapm_seq_run_coalesced(cur_dapm, &pending);
>  
>  			INIT_LIST_HEAD(&pending);
>  			cur_sort = -1;
>  			cur_reg = SND_SOC_NOPM;

We need a corresponding change in dapm_seq_compare() to ensure that the
widgets for a given card are grouped together.  I'll send out some
patches to do that shortly since I just noticed there's an oversight
there anyway.


More information about the Alsa-devel mailing list