aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2009-03-16 10:13:12 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2009-03-16 10:13:57 -0400
commit852fd9e50f62b4ea7afe26eee0710464de4801b8 (patch)
tree62383f751fc25bf8bceb72e4f51940de6b25540d /sound/soc
parentf2a5d6a2ea2fa24573a8ce7ea7a7a2cce42e3588 (diff)
ASoC: Each PXA AC97 DAI needs a separate ops
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/pxa/pxa2xx-ac97.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/sound/soc/pxa/pxa2xx-ac97.c b/sound/soc/pxa/pxa2xx-ac97.c
index cf809049272a..01c21c6cdbbc 100644
--- a/sound/soc/pxa/pxa2xx-ac97.c
+++ b/sound/soc/pxa/pxa2xx-ac97.c
@@ -164,10 +164,18 @@ static int pxa2xx_ac97_hw_mic_params(struct snd_pcm_substream *substream,
164 SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_44100 | \ 164 SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_44100 | \
165 SNDRV_PCM_RATE_48000) 165 SNDRV_PCM_RATE_48000)
166 166
167static struct snd_soc_dai_ops pxa_ac97_dai_ops = { 167static struct snd_soc_dai_ops pxa_ac97_hifi_dai_ops = {
168 .hw_params = pxa2xx_ac97_hw_params, 168 .hw_params = pxa2xx_ac97_hw_params,
169}; 169};
170 170
171static struct snd_soc_dai_ops pxa_ac97_aux_dai_ops = {
172 .hw_params = pxa2xx_ac97_hw_aux_params,
173};
174
175static struct snd_soc_dai_ops pxa_ac97_mic_dai_ops = {
176 .hw_params = pxa2xx_ac97_hw_mic_params,
177};
178
171/* 179/*
172 * There is only 1 physical AC97 interface for pxa2xx, but it 180 * There is only 1 physical AC97 interface for pxa2xx, but it
173 * has extra fifo's that can be used for aux DACs and ADCs. 181 * has extra fifo's that can be used for aux DACs and ADCs.
@@ -193,7 +201,7 @@ struct snd_soc_dai pxa_ac97_dai[] = {
193 .channels_max = 2, 201 .channels_max = 2,
194 .rates = PXA2XX_AC97_RATES, 202 .rates = PXA2XX_AC97_RATES,
195 .formats = SNDRV_PCM_FMTBIT_S16_LE,}, 203 .formats = SNDRV_PCM_FMTBIT_S16_LE,},
196 .ops = &pxa_ac97_dai_ops, 204 .ops = &pxa_ac97_hifi_dai_ops,
197}, 205},
198{ 206{
199 .name = "pxa2xx-ac97-aux", 207 .name = "pxa2xx-ac97-aux",
@@ -211,7 +219,7 @@ struct snd_soc_dai pxa_ac97_dai[] = {
211 .channels_max = 1, 219 .channels_max = 1,
212 .rates = PXA2XX_AC97_RATES, 220 .rates = PXA2XX_AC97_RATES,
213 .formats = SNDRV_PCM_FMTBIT_S16_LE,}, 221 .formats = SNDRV_PCM_FMTBIT_S16_LE,},
214 .ops = &pxa_ac97_dai_ops, 222 .ops = &pxa_ac97_aux_dai_ops,
215}, 223},
216{ 224{
217 .name = "pxa2xx-ac97-mic", 225 .name = "pxa2xx-ac97-mic",
@@ -223,7 +231,7 @@ struct snd_soc_dai pxa_ac97_dai[] = {
223 .channels_max = 1, 231 .channels_max = 1,
224 .rates = PXA2XX_AC97_RATES, 232 .rates = PXA2XX_AC97_RATES,
225 .formats = SNDRV_PCM_FMTBIT_S16_LE,}, 233 .formats = SNDRV_PCM_FMTBIT_S16_LE,},
226 .ops = &pxa_ac97_dai_ops, 234 .ops = &pxa_ac97_mic_dai_ops,
227}, 235},
228}; 236};
229 237