[alsa-devel] [PATCH] ASoC: simple-card: overwrite DAIFMT_MASTER of cpu_dai->fmt
Kuninori Morimoto
kuninori.morimoto.gx at gmail.com
Wed Mar 12 04:36:22 CET 2014
Hi Mark
> > > asoc-simple-card sound-cs42888.12: cpu : 2024000.esai / 4003 / 132000000
> > > asoc-simple-card sound-cs42888.12: codec : cs42888 / 1003 / 24576000
> > > asoc-simple-card sound-cs42888.12: cs42888 <-> 2024000.esai mapping ok
>
> > cpu = 4003 : SND_SOC_DAIFMT_CBS_CFS | SND_SOC_DAIFMT_LEFT_J
> > codec = 1003 : SND_SOC_DAIFMT_CBM_CFM | SND_SOC_DAIFMT_LEFT_J
>
> > codec is master, cpu is slave...
> > what is problem ??
> > Am I misunderstanding ?
>
> The C in those constants stands for CODEC and the values should be
> identical for both ends of the link.
Wow ! really ??
Then, is this settiting wrong ??
${LINUX}/arch/arm/mach-shmobile/board-armadillo800eva.c :: fsi_wm8978_info
static struct asoc_simple_card_info fsi_wm8978_info = {
...
.daifmt = SND_SOC_DAIFMT_I2S,
.cpu_dai = {
...
.fmt = SND_SOC_DAIFMT_CBS_CFS | SND_SOC_DAIFMT_IB_NF,
},
.codec_dai = {
...
.fmt = SND_SOC_DAIFMT_CBM_CFM | SND_SOC_DAIFMT_NB_NF,
},
};
It should be like this ?
static struct asoc_simple_card_info fsi_wm8978_info = {
...
.daifmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_CBM_CFM,
.cpu_dai = {
...
.fmt = SND_SOC_DAIFMT_IB_NF,
},
.codec_dai = {
...
.fmt = SND_SOC_DAIFMT_NB_NF,
},
};
More information about the Alsa-devel
mailing list