1、
#define SND_SOC_DAIFMT_CBM_CFM (1 << 12) /* codec clk & FRM master */
#define SND_SOC_DAIFMT_CBS_CFM (2 << 12) /* codec clk slave & FRM master */
#define SND_SOC_DAIFMT_CBM_CFS (3 << 12) /* codec clk master & frame slave */
#define SND_SOC_DAIFMT_CBS_CFS (4 << 12) /* codec clk & FRM slave */
CBM_CFM:
C:codec; B:BCLK;M:master;S:slave; F:frame,LRCLK
SND_SOC_DAIFMT_CBM_CFM:codec作为master,BCLK和LRCLK由codec提供;
SND_SOC_DAIFMT_CBS_CFS:codec作为slave,BCLK和LRCLK由Soc/CPU提供;
2、
2.1、SND_SOC_DAIFMT_I2S:音频数据是I2S格式,常用于多媒体音频;
2.2、SND_SOC_DAIFMT_DSP_A:音频数据是PCM格式,常用于通话语音;
3、
3.1、设备树:
&sound {
compatible = "xxx";
card-name = "xxx";
xxx,dai-link@0 {
stream-nam