Hi Pierre-Louis > > snd_soc_tplg_component_remove() is topology related cleanup function. > > The driver which added topology needed cleanup it, not by soc-core. > > Only topology user skl-pcm is calling it, there is no effect by > > this patch. (snip) > > --- a/sound/soc/soc-core.c > > +++ b/sound/soc/soc-core.c > > @@ -2870,8 +2870,6 @@ static int __snd_soc_unregister_component(struct device *dev) > > if (dev != component->dev) > > continue; > > - snd_soc_tplg_component_remove(component, > > - SND_SOC_TPLG_INDEX_ALL); > > snd_soc_component_del_unlocked(component); (snip) > the SOF driver also calls snd_soc_tplg_component_remove(), so not sure > what you meant by the comment? Ahh, yes indeed. My opinion is that driver who called _load() need to call _remove() under his responsibility. Today, skl-pcm and topology are the user. They are calling both _load() and_remove(). Thus, I think soc-core don't need to call it ? If we want to keep it as robustness, I want to have this comment, otherwise very confusable, because soc-core never call _load() but calling _remove() /* For framework level robustness */ snd_soc_tplg_component_remove(...); Thank you for your help !! Best regards --- Kuninori Morimoto _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel