aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2014-06-30 04:01:39 -0400
committerMark Brown <broonie@linaro.org>2014-07-04 13:57:58 -0400
commit13447cdc76a8c0a57c9b3395d896b01feb82f34b (patch)
tree64d04787c66e208f3000d8d7f40507909e9ce646
parentb5dd60fd263147f723aeebc424dab7cd6613d3be (diff)
ASoC: s6105-ipcam: Automatically disconnect non-connected pins
All CODEC input and output widgets are either in the DAPM routing table or manually marked as non-connected. This means the card is fully routed and we can let the core take care of disconnecting non-connected pins. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r--sound/soc/s6000/s6105-ipcam.c15
1 files changed, 1 insertions, 14 deletions
diff --git a/sound/soc/s6000/s6105-ipcam.c b/sound/soc/s6000/s6105-ipcam.c
index 50875e66a0a3..3510c01f8a6a 100644
--- a/sound/soc/s6000/s6105-ipcam.c
+++ b/sound/soc/s6000/s6105-ipcam.c
@@ -133,22 +133,8 @@ static const struct snd_kcontrol_new audio_out_mux = {
133/* Logic for a aic3x as connected on the s6105 ip camera ref design */ 133/* Logic for a aic3x as connected on the s6105 ip camera ref design */
134static int s6105_aic3x_init(struct snd_soc_pcm_runtime *rtd) 134static int s6105_aic3x_init(struct snd_soc_pcm_runtime *rtd)
135{ 135{
136 struct snd_soc_codec *codec = rtd->codec;
137 struct snd_soc_dapm_context *dapm = &codec->dapm;
138 struct snd_soc_card *card = rtd->card; 136 struct snd_soc_card *card = rtd->card;
139 137
140 /* not present */
141 snd_soc_dapm_nc_pin(dapm, "MONO_LOUT");
142 snd_soc_dapm_nc_pin(dapm, "LINE2L");
143 snd_soc_dapm_nc_pin(dapm, "LINE2R");
144
145 /* not connected */
146 snd_soc_dapm_nc_pin(dapm, "MIC3L"); /* LINE2L on this chip */
147 snd_soc_dapm_nc_pin(dapm, "MIC3R"); /* LINE2R on this chip */
148 snd_soc_dapm_nc_pin(dapm, "LLOUT");
149 snd_soc_dapm_nc_pin(dapm, "RLOUT");
150 snd_soc_dapm_nc_pin(dapm, "HPRCOM");
151
152 /* must correspond to audio_out_mux.private_value initializer */ 138 /* must correspond to audio_out_mux.private_value initializer */
153 snd_soc_dapm_disable_pin(&card->dapm, "Audio Out Differential"); 139 snd_soc_dapm_disable_pin(&card->dapm, "Audio Out Differential");
154 140
@@ -180,6 +166,7 @@ static struct snd_soc_card snd_soc_card_s6105 = {
180 .num_dapm_widgets = ARRAY_SIZE(aic3x_dapm_widgets), 166 .num_dapm_widgets = ARRAY_SIZE(aic3x_dapm_widgets),
181 .dapm_routes = audio_map, 167 .dapm_routes = audio_map,
182 .num_dapm_routes = ARRAY_SIZE(audio_map), 168 .num_dapm_routes = ARRAY_SIZE(audio_map),
169 .fully_routed = true,
183}; 170};
184 171
185static struct s6000_snd_platform_data s6105_snd_data __initdata = { 172static struct s6000_snd_platform_data s6105_snd_data __initdata = {