dect
/
linux-2.6
Archived
13
0
Fork 0

ASoC: twl6040: 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:
twl6040-codec twl6040-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>
This commit is contained in:
Peter Ujfalusi 2012-09-20 16:32:15 +03:00 committed by Mark Brown
parent 7f51e7d30e
commit 805238b1b7
1 changed files with 29 additions and 14 deletions

View File

@ -727,10 +727,8 @@ static const struct snd_soc_dapm_widget twl6040_dapm_widgets[] = {
TWL6040_REG_MICRCTL, 1, 0, NULL, 0),
/* ADCs */
SND_SOC_DAPM_ADC("ADC Left", "Left Front Capture",
TWL6040_REG_MICLCTL, 2, 0),
SND_SOC_DAPM_ADC("ADC Right", "Right Front Capture",
TWL6040_REG_MICRCTL, 2, 0),
SND_SOC_DAPM_ADC("ADC Left", NULL, TWL6040_REG_MICLCTL, 2, 0),
SND_SOC_DAPM_ADC("ADC Right", NULL, TWL6040_REG_MICRCTL, 2, 0),
/* Microphone bias */
SND_SOC_DAPM_SUPPLY("Headset Mic Bias",
@ -743,15 +741,12 @@ static const struct snd_soc_dapm_widget twl6040_dapm_widgets[] = {
TWL6040_REG_DMICBCTL, 4, 0, NULL, 0),
/* DACs */
SND_SOC_DAPM_DAC("HSDAC Left", "Headset Playback", SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_DAC("HSDAC Right", "Headset Playback", SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_DAC("HFDAC Left", "Handsfree Playback",
TWL6040_REG_HFLCTL, 0, 0),
SND_SOC_DAPM_DAC("HFDAC Right", "Handsfree Playback",
TWL6040_REG_HFRCTL, 0, 0),
SND_SOC_DAPM_DAC("HSDAC Left", NULL, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_DAC("HSDAC Right", NULL, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_DAC("HFDAC Left", NULL, TWL6040_REG_HFLCTL, 0, 0),
SND_SOC_DAPM_DAC("HFDAC Right", NULL, TWL6040_REG_HFRCTL, 0, 0),
/* Virtual DAC for vibra path (DL4 channel) */
SND_SOC_DAPM_DAC("VIBRA DAC", "Vibra Playback",
SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_DAC("VIBRA DAC", NULL, SND_SOC_NOPM, 0, 0),
SND_SOC_DAPM_MUX("Handsfree Left Playback",
SND_SOC_NOPM, 0, 0, &hfl_mux_controls),
@ -810,6 +805,26 @@ static const struct snd_soc_dapm_widget twl6040_dapm_widgets[] = {
};
static const struct snd_soc_dapm_route intercon[] = {
/* Stream -> DAC mapping */
{"HSDAC Left", NULL, "Legacy Playback"},
{"HSDAC Left", NULL, "Headset Playback"},
{"HSDAC Right", NULL, "Legacy Playback"},
{"HSDAC Right", NULL, "Headset Playback"},
{"HFDAC Left", NULL, "Legacy Playback"},
{"HFDAC Left", NULL, "Handsfree Playback"},
{"HFDAC Right", NULL, "Legacy Playback"},
{"HFDAC Right", NULL, "Handsfree Playback"},
{"VIBRA DAC", NULL, "Legacy Playback"},
{"VIBRA DAC", NULL, "Vibra Playback"},
/* ADC -> Stream mapping */
{"ADC Left", NULL, "Legacy Capture"},
{"ADC Left", NULL, "Capture"},
{"ADC Right", NULL, "Legacy Capture"},
{"ADC Right", NULL, "Capture"},
/* Capture path */
{"Analog Left Capture Route", "Headset Mic", "HSMIC"},
{"Analog Left Capture Route", "Main Mic", "MAINMIC"},
@ -1028,14 +1043,14 @@ static struct snd_soc_dai_driver twl6040_dai[] = {
{
.name = "twl6040-legacy",
.playback = {
.stream_name = "Playback",
.stream_name = "Legacy Playback",
.channels_min = 1,
.channels_max = 5,
.rates = TWL6040_RATES,
.formats = TWL6040_FORMATS,
},
.capture = {
.stream_name = "Capture",
.stream_name = "Legacy Capture",
.channels_min = 1,
.channels_max = 2,
.rates = TWL6040_RATES,