diff options
author | Liam Girdwood <lg@opensource.wolfsonmicro.com> | 2007-02-02 17:16:41 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2007-02-09 09:03:41 +0100 |
commit | 5a8ec343c5ba1e78ba23bebd9ad4b23f39c50828 (patch) | |
tree | 5b037d3e2de2ce2b81e1c74a3db8f2816ea36eb7 | |
parent | cbe83b1795feea33803dc89fce18b2b98abbcc9b (diff) | |
download | op-kernel-dev-5a8ec343c5ba1e78ba23bebd9ad4b23f39c50828.zip op-kernel-dev-5a8ec343c5ba1e78ba23bebd9ad4b23f39c50828.tar.gz |
[ALSA] soc - ASoC 0.13 generic AC97 codec
This patch updates the AC97 codec driver to the new API in ASoC 0.13.
Changes:-
o Removed DAI capabilities matching code in favour of manual matching in
the machine drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
-rw-r--r-- | sound/soc/codecs/ac97.c | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/sound/soc/codecs/ac97.c b/sound/soc/codecs/ac97.c index dd1a9f5..55bc55e 100644 --- a/sound/soc/codecs/ac97.c +++ b/sound/soc/codecs/ac97.c @@ -26,22 +26,7 @@ #include <sound/initval.h> #include <sound/soc.h> -#define AC97_VERSION "0.5" - -#define AC97_DIR \ - (SND_SOC_DAIDIR_PLAYBACK | SND_SOC_DAIDIR_CAPTURE) - -#define AC97_RATES \ - (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_16000 | \ - SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ - SNDRV_PCM_RATE_48000) - -/* may need to expand this */ -static struct snd_soc_dai_mode soc_ac97[] = { - {0, 0, SNDRV_PCM_FMTBIT_S16_LE, AC97_RATES}, - {0, 0, SNDRV_PCM_FMTBIT_S18_3LE, AC97_RATES}, - {0, 0, SNDRV_PCM_FMTBIT_S20_3LE, AC97_RATES}, -}; +#define AC97_VERSION "0.6" static int ac97_prepare(struct snd_pcm_substream *substream) { @@ -55,21 +40,25 @@ static int ac97_prepare(struct snd_pcm_substream *substream) return snd_ac97_set_rate(codec->ac97, reg, runtime->rate); } +#define STD_AC97_RATES (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 |\ + SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000) + static struct snd_soc_codec_dai ac97_dai = { .name = "AC97 HiFi", .playback = { .stream_name = "AC97 Playback", .channels_min = 1, - .channels_max = 2,}, + .channels_max = 2, + .rates = STD_AC97_RATES, + .formats = SNDRV_PCM_FMTBIT_S16_LE,}, .capture = { .stream_name = "AC97 Capture", .channels_min = 1, - .channels_max = 2,}, + .channels_max = 2, + .rates = STD_AC97_RATES, + .formats = SNDRV_PCM_FMTBIT_S16_LE,}, .ops = { .prepare = ac97_prepare,}, - .caps = { - .num_modes = ARRAY_SIZE(soc_ac97), - .mode = soc_ac97,}, }; static unsigned int ac97_read(struct snd_soc_codec *codec, |