summaryrefslogtreecommitdiffstats
path: root/sound/soc/blackfin/bf5xx-ad1938.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-12-21 11:21:15 +0100
committerTakashi Iwai <tiwai@suse.de>2009-12-21 11:21:15 +0100
commitde8853bc38ceab1fa7e7f723b21430d4aad60fea (patch)
tree5084ef51866fd1767324f8dc8eb36e97c55350f5 /sound/soc/blackfin/bf5xx-ad1938.c
parentf5de24b06aa46427500d0fdbe8616b73a71d8c28 (diff)
parent440b004cf953bec2bc8cd91c64ae707fd7e25327 (diff)
downloadtalos-op-linux-de8853bc38ceab1fa7e7f723b21430d4aad60fea.tar.gz
talos-op-linux-de8853bc38ceab1fa7e7f723b21430d4aad60fea.zip
Merge remote branch 'alsa/fixes' into fix/hda
Diffstat (limited to 'sound/soc/blackfin/bf5xx-ad1938.c')
-rw-r--r--sound/soc/blackfin/bf5xx-ad1938.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sound/soc/blackfin/bf5xx-ad1938.c b/sound/soc/blackfin/bf5xx-ad1938.c
index 08269e91810c..2ef1e5013b8c 100644
--- a/sound/soc/blackfin/bf5xx-ad1938.c
+++ b/sound/soc/blackfin/bf5xx-ad1938.c
@@ -61,6 +61,7 @@ static int bf5xx_ad1938_hw_params(struct snd_pcm_substream *substream,
struct snd_soc_pcm_runtime *rtd = substream->private_data;
struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai;
struct snd_soc_dai *codec_dai = rtd->dai->codec_dai;
+ unsigned int channel_map[] = {0, 1, 2, 3, 4, 5, 6, 7};
int ret = 0;
/* set cpu DAI configuration */
ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_DSP_A |
@@ -75,7 +76,13 @@ static int bf5xx_ad1938_hw_params(struct snd_pcm_substream *substream,
return ret;
/* set codec DAI slots, 8 channels, all channels are enabled */
- ret = snd_soc_dai_set_tdm_slot(codec_dai, 0xFF, 8);
+ ret = snd_soc_dai_set_tdm_slot(codec_dai, 0xFF, 0xFF, 8, 32);
+ if (ret < 0)
+ return ret;
+
+ /* set cpu DAI channel mapping */
+ ret = snd_soc_dai_set_channel_map(cpu_dai, ARRAY_SIZE(channel_map),
+ channel_map, ARRAY_SIZE(channel_map), channel_map);
if (ret < 0)
return ret;
OpenPOWER on IntegriCloud