Re: [PATCH v4 11/23] ASoC: simple-card: Loop over all children for 'mclk-fs'

From: Kuninori Morimoto
Date: Mon Jun 29 2020 - 22:08:36 EST



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