Hi Sameer > >> snprintf(prop, sizeof(prop), "%smclk-fs", prefix); > >> of_property_read_u32(node, prop, &props->mclk_fs); > >> of_property_read_u32(cpu, prop, &props->mclk_fs); > >> - of_property_read_u32(codec, prop, &props->mclk_fs); > >> + > >> + if (cpu != codec) > >> + of_property_read_u32(codec, prop, &props->mclk_fs); > > Maybe we want to have "cpu" in simple_dai_link_of_dpcm() side > > without using magical code in simple_parse_mclk_fs() side ? > > Are you suggesting if we should simplify simple_parse_mclk_fs() by > either passing 'cpu' or 'codec'? Oops, sorry I was misunderstand. But I still not 100% understand what do you want to do here. Maybe 50% is my English skill, but in your code (C) of_property_read_u32(cpu, prop, &props->mclk_fs); - of_property_read_u32(codec, prop, &props->mclk_fs); + + if (cpu != codec) (B) + of_property_read_u32(codec, prop, &props->mclk_fs); and - simple_parse_mclk_fs(top, np, codec, dai_props, prefix); (A) + simple_parse_mclk_fs(top, np, np, dai_props, prefix); Because of (A), cpu = codec = np in simple_parse_mclk_fs(). Do we have chance to call (B) ? And it still have read_u32(cpu, ...) at (C), this means all np will read mclk_fs anyway ? For me, if you don't want/need mclk_fs, don't set it on DT is the best answer, but am I misunderstanding ? Thank you for your help !! Best regards --- Kuninori Morimoto