diff options
author | Peter Ujfalusi <peter.ujfalusi@ti.com> | 2012-09-20 09:32:02 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-09-22 10:57:40 -0400 |
commit | 7f51e7d30e36ac987d7a0e480d890477c5f8b04f (patch) | |
tree | 56a784f28c4457430378cb70a47e5d9ebba6622b /sound | |
parent | 0534951ba493a97eee646f62101cf88fac2308c6 (diff) |
ASoC: twl4030: Convert to use DAI DAPM widgets
Use DAPM mapping for stream events and give unique names for the streams.
This change also fixes the following warning:
twl4030-codec twl4030-codec: Failed to create Capture debugfs file
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/twl4030.c | 48 |
1 files changed, 28 insertions, 20 deletions
diff --git a/sound/soc/codecs/twl4030.c b/sound/soc/codecs/twl4030.c index 2548f5c56885..962341df7ddc 100644 --- a/sound/soc/codecs/twl4030.c +++ b/sound/soc/codecs/twl4030.c | |||
@@ -1237,16 +1237,11 @@ static const struct snd_soc_dapm_widget twl4030_dapm_widgets[] = { | |||
1237 | SND_SOC_DAPM_OUTPUT("Virtual Voice OUT"), | 1237 | SND_SOC_DAPM_OUTPUT("Virtual Voice OUT"), |
1238 | 1238 | ||
1239 | /* DACs */ | 1239 | /* DACs */ |
1240 | SND_SOC_DAPM_DAC("DAC Right1", "Right Front HiFi Playback", | 1240 | SND_SOC_DAPM_DAC("DAC Right1", NULL, SND_SOC_NOPM, 0, 0), |
1241 | SND_SOC_NOPM, 0, 0), | 1241 | SND_SOC_DAPM_DAC("DAC Left1", NULL, SND_SOC_NOPM, 0, 0), |
1242 | SND_SOC_DAPM_DAC("DAC Left1", "Left Front HiFi Playback", | 1242 | SND_SOC_DAPM_DAC("DAC Right2", NULL, SND_SOC_NOPM, 0, 0), |
1243 | SND_SOC_NOPM, 0, 0), | 1243 | SND_SOC_DAPM_DAC("DAC Left2", NULL, SND_SOC_NOPM, 0, 0), |
1244 | SND_SOC_DAPM_DAC("DAC Right2", "Right Rear HiFi Playback", | 1244 | SND_SOC_DAPM_DAC("DAC Voice", NULL, SND_SOC_NOPM, 0, 0), |
1245 | SND_SOC_NOPM, 0, 0), | ||
1246 | SND_SOC_DAPM_DAC("DAC Left2", "Left Rear HiFi Playback", | ||
1247 | SND_SOC_NOPM, 0, 0), | ||
1248 | SND_SOC_DAPM_DAC("DAC Voice", "Voice Playback", | ||
1249 | SND_SOC_NOPM, 0, 0), | ||
1250 | 1245 | ||
1251 | /* Analog bypasses */ | 1246 | /* Analog bypasses */ |
1252 | SND_SOC_DAPM_SWITCH("Right1 Analog Loopback", SND_SOC_NOPM, 0, 0, | 1247 | SND_SOC_DAPM_SWITCH("Right1 Analog Loopback", SND_SOC_NOPM, 0, 0, |
@@ -1375,14 +1370,10 @@ static const struct snd_soc_dapm_widget twl4030_dapm_widgets[] = { | |||
1375 | 1370 | ||
1376 | /* Introducing four virtual ADC, since TWL4030 have four channel for | 1371 | /* Introducing four virtual ADC, since TWL4030 have four channel for |
1377 | capture */ | 1372 | capture */ |
1378 | SND_SOC_DAPM_ADC("ADC Virtual Left1", "Left Front Capture", | 1373 | SND_SOC_DAPM_ADC("ADC Virtual Left1", NULL, SND_SOC_NOPM, 0, 0), |
1379 | SND_SOC_NOPM, 0, 0), | 1374 | SND_SOC_DAPM_ADC("ADC Virtual Right1", NULL, SND_SOC_NOPM, 0, 0), |
1380 | SND_SOC_DAPM_ADC("ADC Virtual Right1", "Right Front Capture", | 1375 | SND_SOC_DAPM_ADC("ADC Virtual Left2", NULL, SND_SOC_NOPM, 0, 0), |
1381 | SND_SOC_NOPM, 0, 0), | 1376 | SND_SOC_DAPM_ADC("ADC Virtual Right2", NULL, SND_SOC_NOPM, 0, 0), |
1382 | SND_SOC_DAPM_ADC("ADC Virtual Left2", "Left Rear Capture", | ||
1383 | SND_SOC_NOPM, 0, 0), | ||
1384 | SND_SOC_DAPM_ADC("ADC Virtual Right2", "Right Rear Capture", | ||
1385 | SND_SOC_NOPM, 0, 0), | ||
1386 | 1377 | ||
1387 | /* Analog/Digital mic path selection. | 1378 | /* Analog/Digital mic path selection. |
1388 | TX1 Left/Right: either analog Left/Right or Digimic0 | 1379 | TX1 Left/Right: either analog Left/Right or Digimic0 |
@@ -1426,6 +1417,23 @@ static const struct snd_soc_dapm_widget twl4030_dapm_widgets[] = { | |||
1426 | }; | 1417 | }; |
1427 | 1418 | ||
1428 | static const struct snd_soc_dapm_route intercon[] = { | 1419 | static const struct snd_soc_dapm_route intercon[] = { |
1420 | /* Stream -> DAC mapping */ | ||
1421 | {"DAC Right1", NULL, "HiFi Playback"}, | ||
1422 | {"DAC Left1", NULL, "HiFi Playback"}, | ||
1423 | {"DAC Right2", NULL, "HiFi Playback"}, | ||
1424 | {"DAC Left2", NULL, "HiFi Playback"}, | ||
1425 | {"DAC Voice", NULL, "Voice Playback"}, | ||
1426 | |||
1427 | /* ADC -> Stream mapping */ | ||
1428 | {"HiFi Capture", NULL, "ADC Virtual Left1"}, | ||
1429 | {"HiFi Capture", NULL, "ADC Virtual Right1"}, | ||
1430 | {"HiFi Capture", NULL, "ADC Virtual Left2"}, | ||
1431 | {"HiFi Capture", NULL, "ADC Virtual Right2"}, | ||
1432 | {"Voice Capture", NULL, "ADC Virtual Left1"}, | ||
1433 | {"Voice Capture", NULL, "ADC Virtual Right1"}, | ||
1434 | {"Voice Capture", NULL, "ADC Virtual Left2"}, | ||
1435 | {"Voice Capture", NULL, "ADC Virtual Right2"}, | ||
1436 | |||
1429 | {"Digital L1 Playback Mixer", NULL, "DAC Left1"}, | 1437 | {"Digital L1 Playback Mixer", NULL, "DAC Left1"}, |
1430 | {"Digital R1 Playback Mixer", NULL, "DAC Right1"}, | 1438 | {"Digital R1 Playback Mixer", NULL, "DAC Right1"}, |
1431 | {"Digital L2 Playback Mixer", NULL, "DAC Left2"}, | 1439 | {"Digital L2 Playback Mixer", NULL, "DAC Left2"}, |
@@ -2170,7 +2178,7 @@ static struct snd_soc_dai_driver twl4030_dai[] = { | |||
2170 | .formats = TWL4030_FORMATS, | 2178 | .formats = TWL4030_FORMATS, |
2171 | .sig_bits = 24,}, | 2179 | .sig_bits = 24,}, |
2172 | .capture = { | 2180 | .capture = { |
2173 | .stream_name = "Capture", | 2181 | .stream_name = "HiFi Capture", |
2174 | .channels_min = 2, | 2182 | .channels_min = 2, |
2175 | .channels_max = 4, | 2183 | .channels_max = 4, |
2176 | .rates = TWL4030_RATES, | 2184 | .rates = TWL4030_RATES, |
@@ -2187,7 +2195,7 @@ static struct snd_soc_dai_driver twl4030_dai[] = { | |||
2187 | .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000, | 2195 | .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000, |
2188 | .formats = SNDRV_PCM_FMTBIT_S16_LE,}, | 2196 | .formats = SNDRV_PCM_FMTBIT_S16_LE,}, |
2189 | .capture = { | 2197 | .capture = { |
2190 | .stream_name = "Capture", | 2198 | .stream_name = "Voice Capture", |
2191 | .channels_min = 1, | 2199 | .channels_min = 1, |
2192 | .channels_max = 2, | 2200 | .channels_max = 2, |
2193 | .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000, | 2201 | .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000, |