>> +static int bcm2835_i2s_hw_params(struct snd_pcm_substream *substream, >> + struct snd_pcm_hw_params *params, >> + struct snd_soc_dai *dai) >> +{ >> + struct bcm2835_i2s_dev *dev = snd_soc_dai_get_drvdata(dai); >> + >> + unsigned int sampling_rate = params_rate(params); >> + unsigned int data_length, data_delay, bclk_ratio; >> + unsigned int ch1pos, ch2pos, mode, format; >> + unsigned int mash = BCM2835_CLK_MASH_1; >> + unsigned int divi, divf, target_frequency; >> + int clk_src = -1; >> + unsigned int master = dev->fmt & SND_SOC_DAIFMT_MASTER_MASK; >> + uint32_t bit_master = (master == SND_SOC_DAIFMT_CBS_CFS >> + || master == SND_SOC_DAIFMT_CBS_CFM); >> + >> + uint32_t frame_master = (master == SND_SOC_DAIFMT_CBS_CFS > > So, if master == SND_SOC_DAIFMT_CBS_CFS both bit_master and frame_master > will be true. Is it correct? Yes. That is exactly what CBS_CFS expresses: Codec Bit Slave and Codec Frame Slave So the interface is bit master as well as frame master. Did I miss anything? -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html