Message ID | 1601573587-15288-2-git-send-email-spujar@nvidia.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Audio graph card updates and usage with Tegra210 audio | expand |
On Thu, Oct 01, 2020 at 11:02:55PM +0530, Sameer Pujar wrote: > The "prefix" can be defined in DAI link node or it can be specified as > part of the component node itself. Currently "sound-name-prefix" defined > in a component is not taking effect. Actually the property is not getting > parsed. It can be fixed by parsing "sound-name-prefix" property whenever > "prefix" is missing in DAI link Codec node. [...] > --- a/sound/soc/soc-core.c > +++ b/sound/soc/soc-core.c > @@ -1124,7 +1124,8 @@ static void soc_set_name_prefix(struct snd_soc_card *card, > for (i = 0; i < card->num_configs; i++) { > struct snd_soc_codec_conf *map = &card->codec_conf[i]; > > - if (snd_soc_is_matching_component(&map->dlc, component)) { > + if (snd_soc_is_matching_component(&map->dlc, component) && > + map->name_prefix) { > component->name_prefix = map->name_prefix; > return; > } Hi, It is not obvious how the patch fixes the problem described. I guess now map->name_prefix is NULL on some level and overrides prefix found earlier? Best Regards, Michał Mirosław
>> The "prefix" can be defined in DAI link node or it can be specified as >> part of the component node itself. Currently "sound-name-prefix" defined >> in a component is not taking effect. Actually the property is not getting >> parsed. It can be fixed by parsing "sound-name-prefix" property whenever >> "prefix" is missing in DAI link Codec node. > [...] >> --- a/sound/soc/soc-core.c >> +++ b/sound/soc/soc-core.c >> @@ -1124,7 +1124,8 @@ static void soc_set_name_prefix(struct snd_soc_card *card, >> for (i = 0; i < card->num_configs; i++) { >> struct snd_soc_codec_conf *map = &card->codec_conf[i]; >> >> - if (snd_soc_is_matching_component(&map->dlc, component)) { >> + if (snd_soc_is_matching_component(&map->dlc, component) && >> + map->name_prefix) { >> component->name_prefix = map->name_prefix; >> return; >> } > Hi, > > It is not obvious how the patch fixes the problem described. I guess now > map->name_prefix is NULL on some level and overrides prefix found earlier? > > Best Regards, > Michał Mirosław If map->name_prefix is NULL (which is the prefix defined for Codec DAI component in a DAI link), then go ahead and check if "sound-name-prefix" is provided under component device node itself.
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index 74df224..a784943 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c @@ -1124,7 +1124,8 @@ static void soc_set_name_prefix(struct snd_soc_card *card, for (i = 0; i < card->num_configs; i++) { struct snd_soc_codec_conf *map = &card->codec_conf[i]; - if (snd_soc_is_matching_component(&map->dlc, component)) { + if (snd_soc_is_matching_component(&map->dlc, component) && + map->name_prefix) { component->name_prefix = map->name_prefix; return; }
The "prefix" can be defined in DAI link node or it can be specified as part of the component node itself. Currently "sound-name-prefix" defined in a component is not taking effect. Actually the property is not getting parsed. It can be fixed by parsing "sound-name-prefix" property whenever "prefix" is missing in DAI link Codec node. Signed-off-by: Sameer Pujar <spujar@nvidia.com> --- sound/soc/soc-core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)