Skip to content

Commit

Permalink
ASoC: Fix SND_SOC_DAPM_LINE handling
Browse files Browse the repository at this point in the history
Since the SND_SOC_DAPM_LINE can be input or output, additional check is
needed in order to determine if the widget is connected as input or
output.
When checking for connected outputs, if the widget is line, than check
if the sources list is not empty (line is connected as output)
For input endpoint check, when the widget is line, also check if the
sinks list is not empty (line is connected as input).

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
  • Loading branch information
Peter Ujfalusi authored and Mark Brown committed Oct 2, 2009
1 parent 834eb6c commit eaeae5d
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions sound/soc/soc-dapm.c
Original file line number Diff line number Diff line change
Expand Up @@ -524,7 +524,7 @@ static int is_connected_output_ep(struct snd_soc_dapm_widget *widget)

/* connected jack or spk ? */
if (widget->id == snd_soc_dapm_hp || widget->id == snd_soc_dapm_spk ||
widget->id == snd_soc_dapm_line)
(widget->id == snd_soc_dapm_line && !list_empty(&widget->sources)))
return 1;
}

Expand Down Expand Up @@ -573,7 +573,8 @@ static int is_connected_input_ep(struct snd_soc_dapm_widget *widget)
return 1;

/* connected jack ? */
if (widget->id == snd_soc_dapm_mic || widget->id == snd_soc_dapm_line)
if (widget->id == snd_soc_dapm_mic ||
(widget->id == snd_soc_dapm_line && !list_empty(&widget->sinks)))
return 1;
}

Expand Down

0 comments on commit eaeae5d

Please sign in to comment.