diff options
author | Javier Martin <javier.martin@vista-silicon.com> | 2012-01-11 07:21:05 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-01-20 08:58:28 -0500 |
commit | a6b44f1636f244c97eacb43720414ff356e17c6e (patch) | |
tree | 6a05580c535b0e250b9314d3549d410048c479f0 /sound | |
parent | 44fb864b8f696d3e8328b294e6515ad45aecfeb0 (diff) |
ASoC: Route Mic Bias in Visstrim_M10 board.
Visstrim_M10 board uses an external microphone
that can be enabled/disabled by the user
Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/imx/mx27vis-aic32x4.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/sound/soc/imx/mx27vis-aic32x4.c b/sound/soc/imx/mx27vis-aic32x4.c index 3c2eed9094d5..d37e23cfc94d 100644 --- a/sound/soc/imx/mx27vis-aic32x4.c +++ b/sound/soc/imx/mx27vis-aic32x4.c | |||
@@ -74,6 +74,24 @@ static struct snd_soc_ops mx27vis_aic32x4_snd_ops = { | |||
74 | .hw_params = mx27vis_aic32x4_hw_params, | 74 | .hw_params = mx27vis_aic32x4_hw_params, |
75 | }; | 75 | }; |
76 | 76 | ||
77 | static const struct snd_kcontrol_new mx27vis_aic32x4_controls[] = { | ||
78 | SOC_DAPM_PIN_SWITCH("External Mic"), | ||
79 | }; | ||
80 | |||
81 | static const struct snd_soc_dapm_widget aic32x4_dapm_widgets[] = { | ||
82 | SND_SOC_DAPM_MIC("External Mic", NULL), | ||
83 | }; | ||
84 | |||
85 | static const struct snd_soc_dapm_route aic32x4_dapm_routes[] = { | ||
86 | {"Mic Bias", NULL, "External Mic"}, | ||
87 | {"IN1_R", NULL, "Mic Bias"}, | ||
88 | {"IN2_R", NULL, "Mic Bias"}, | ||
89 | {"IN3_R", NULL, "Mic Bias"}, | ||
90 | {"IN1_L", NULL, "Mic Bias"}, | ||
91 | {"IN2_L", NULL, "Mic Bias"}, | ||
92 | {"IN3_L", NULL, "Mic Bias"}, | ||
93 | }; | ||
94 | |||
77 | static struct snd_soc_dai_link mx27vis_aic32x4_dai = { | 95 | static struct snd_soc_dai_link mx27vis_aic32x4_dai = { |
78 | .name = "tlv320aic32x4", | 96 | .name = "tlv320aic32x4", |
79 | .stream_name = "TLV320AIC32X4", | 97 | .stream_name = "TLV320AIC32X4", |
@@ -89,6 +107,12 @@ static struct snd_soc_card mx27vis_aic32x4 = { | |||
89 | .owner = THIS_MODULE, | 107 | .owner = THIS_MODULE, |
90 | .dai_link = &mx27vis_aic32x4_dai, | 108 | .dai_link = &mx27vis_aic32x4_dai, |
91 | .num_links = 1, | 109 | .num_links = 1, |
110 | .controls = mx27vis_aic32x4_controls, | ||
111 | .num_controls = ARRAY_SIZE(mx27vis_aic32x4_controls), | ||
112 | .dapm_widgets = aic32x4_dapm_widgets, | ||
113 | .num_dapm_widgets = ARRAY_SIZE(aic32x4_dapm_widgets), | ||
114 | .dapm_routes = aic32x4_dapm_routes, | ||
115 | .num_dapm_routes = ARRAY_SIZE(aic32x4_dapm_routes), | ||
92 | }; | 116 | }; |
93 | 117 | ||
94 | static struct platform_device *mx27vis_aic32x4_snd_device; | 118 | static struct platform_device *mx27vis_aic32x4_snd_device; |