]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ASoC: topology: Do not do unnecessary dobj management
authorAmadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Thu, 27 Jun 2024 10:18:39 +0000 (12:18 +0200)
committerMark Brown <broonie@kernel.org>
Tue, 2 Jul 2024 13:26:58 +0000 (14:26 +0100)
Widget kcontrols do not need to be managed as topology dynamic objects
with an index and a linked list. As they are always associated with a
widget which is already a topology dynamic object, thus all
addition/removals of a widget will by design manage the kcontrol.

Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
Link: https://patch.msgid.link/20240627101850.2191513-3-amadeuszx.slawinski@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-topology.c

index dff83d49a8f61002a49868b54b94e772407c65af..bd29b40acb991d4fcd22b00bb0c9f6f2181a1ca4 100644 (file)
@@ -1134,8 +1134,6 @@ static int soc_tplg_dapm_widget_dmixer_create(struct soc_tplg *tplg, struct snd_
        sm->min = le32_to_cpu(mc->min);
        sm->invert = le32_to_cpu(mc->invert);
        sm->platform_max = le32_to_cpu(mc->platform_max);
-       sm->dobj.index = tplg->index;
-       INIT_LIST_HEAD(&sm->dobj.list);
 
        /* map io handlers */
        err = soc_tplg_kcontrol_bind_io(&mc->hdr, kc, tplg);
@@ -1198,7 +1196,6 @@ static int soc_tplg_dapm_widget_denum_create(struct soc_tplg *tplg, struct snd_k
 
        se->items = le32_to_cpu(ec->items);
        se->mask = le32_to_cpu(ec->mask);
-       se->dobj.index = tplg->index;
 
        switch (le32_to_cpu(ec->hdr.ops.info)) {
        case SND_SOC_TPLG_CTL_ENUM_VALUE:
@@ -1273,7 +1270,6 @@ static int soc_tplg_dapm_widget_dbytes_create(struct soc_tplg *tplg, struct snd_
        kc->access = le32_to_cpu(be->hdr.access);
 
        sbe->max = le32_to_cpu(be->max);
-       INIT_LIST_HEAD(&sbe->dobj.list);
 
        /* map standard io handlers and check for external handlers */
        err = soc_tplg_kcontrol_bind_io(&be->hdr, kc, tplg);