diff mbox

ASoC: fsl-asoc-card: use different route map for AC'97 mode

Message ID 567710D5.5040405@maciej.szmigiero.name (mailing list archive)
State Accepted
Commit 25e5ef974c33f1e4a07a68bf830e6493ee6dab11
Headers show

Commit Message

Maciej S. Szmigiero Dec. 20, 2015, 8:34 p.m. UTC
fsl_ssi uses different stream names ("AC97 Playback" / "AC97 Capture")
in AC'97 mode so in this case fsl-asoc-card route map should
also be using them.

Signed-off-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
---
 sound/soc/fsl/fsl-asoc-card.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Comments

Nicolin Chen Dec. 21, 2015, 7:41 a.m. UTC | #1
On Sun, Dec 20, 2015 at 09:34:29PM +0100, Maciej S. Szmigiero wrote:
> fsl_ssi uses different stream names ("AC97 Playback" / "AC97 Capture")
> in AC'97 mode so in this case fsl-asoc-card route map should
> also be using them.
> 
> Signed-off-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>

Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>

> ---
>  sound/soc/fsl/fsl-asoc-card.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/sound/soc/fsl/fsl-asoc-card.c b/sound/soc/fsl/fsl-asoc-card.c
> index c63d89da51f1..562b3bd22d9a 100644
> --- a/sound/soc/fsl/fsl-asoc-card.c
> +++ b/sound/soc/fsl/fsl-asoc-card.c
> @@ -107,6 +107,13 @@ static const struct snd_soc_dapm_route audio_map[] = {
>  	{"CPU-Capture",  NULL, "Capture"},
>  };
>  
> +static const struct snd_soc_dapm_route audio_map_ac97[] = {
> +	{"AC97 Playback",  NULL, "ASRC-Playback"},
> +	{"Playback",  NULL, "AC97 Playback"},
> +	{"ASRC-Capture",  NULL, "AC97 Capture"},
> +	{"AC97 Capture",  NULL, "Capture"},
> +};
> +
>  /* Add all possible widgets into here without being redundant */
>  static const struct snd_soc_dapm_widget fsl_asoc_card_dapm_widgets[] = {
>  	SND_SOC_DAPM_LINE("Line Out Jack", NULL),
> @@ -579,7 +586,8 @@ static int fsl_asoc_card_probe(struct platform_device *pdev)
>  	priv->card.dev = &pdev->dev;
>  	priv->card.name = priv->name;
>  	priv->card.dai_link = priv->dai_link;
> -	priv->card.dapm_routes = audio_map;
> +	priv->card.dapm_routes = fsl_asoc_card_is_ac97(priv) ?
> +				 audio_map_ac97 : audio_map;
>  	priv->card.late_probe = fsl_asoc_card_late_probe;
>  	priv->card.num_dapm_routes = ARRAY_SIZE(audio_map);
>  	priv->card.dapm_widgets = fsl_asoc_card_dapm_widgets;
>
diff mbox

Patch

diff --git a/sound/soc/fsl/fsl-asoc-card.c b/sound/soc/fsl/fsl-asoc-card.c
index c63d89da51f1..562b3bd22d9a 100644
--- a/sound/soc/fsl/fsl-asoc-card.c
+++ b/sound/soc/fsl/fsl-asoc-card.c
@@ -107,6 +107,13 @@  static const struct snd_soc_dapm_route audio_map[] = {
 	{"CPU-Capture",  NULL, "Capture"},
 };
 
+static const struct snd_soc_dapm_route audio_map_ac97[] = {
+	{"AC97 Playback",  NULL, "ASRC-Playback"},
+	{"Playback",  NULL, "AC97 Playback"},
+	{"ASRC-Capture",  NULL, "AC97 Capture"},
+	{"AC97 Capture",  NULL, "Capture"},
+};
+
 /* Add all possible widgets into here without being redundant */
 static const struct snd_soc_dapm_widget fsl_asoc_card_dapm_widgets[] = {
 	SND_SOC_DAPM_LINE("Line Out Jack", NULL),
@@ -579,7 +586,8 @@  static int fsl_asoc_card_probe(struct platform_device *pdev)
 	priv->card.dev = &pdev->dev;
 	priv->card.name = priv->name;
 	priv->card.dai_link = priv->dai_link;
-	priv->card.dapm_routes = audio_map;
+	priv->card.dapm_routes = fsl_asoc_card_is_ac97(priv) ?
+				 audio_map_ac97 : audio_map;
 	priv->card.late_probe = fsl_asoc_card_late_probe;
 	priv->card.num_dapm_routes = ARRAY_SIZE(audio_map);
 	priv->card.dapm_widgets = fsl_asoc_card_dapm_widgets;