Hi Sameer > simple-audio-card,dai-link@xxx { > format = "i2s"; > bitclock-master=<&cpu1>; > frame-master=<&cpu1>; > > cpu1: cpu@0 { > ... > }; > > codec@0 { > ... > }; > > ... > }; > > In above case CPU is expected to be configured as a master and Codec as > a slave device. But both CPU/Codec are being configured as slave devices. > This happens because asoc_simple_parse_daifmt() uses Codec reference and > sets up the 'dai_link->dai_fmt' accordingly while parsing both CPU and > Codec. I'm sorry but I don't 100% understand about this case... asoc_simple_parse_daifmt() should work in this case The reason why it needs codec node is that SND_SOC_DAIFMT_CBx_CFx are "Codec" base Master/Slave. Thank you for your help !! Best regards --- Kuninori Morimoto