ASoC: soc-core: add soc_unbind_aux_dev()

It is easy to read code if it is cleanly using paired function/naming,
like start <-> stop, register <-> unregister, etc, etc.
But, current ALSA SoC code is very random, unbalance, not paired, etc.
It is easy to create bug at the such code, and it will be difficult to
debug.

soc-core.c has soc_bind_aux_dev(), but, there is no its paired
soc_unbind_aux_dev().
This patch adds soc_unbind_aux_dev().

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87sgpcor14.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2019-09-04 09:15:35 +09:00 committed by Mark Brown
parent bee886f1ea
commit 4893a2eb34
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -1559,6 +1559,12 @@ static int soc_link_init(struct snd_soc_card *card,
return ret;
}
static void soc_unbind_aux_dev(struct snd_soc_component *component)
{
component->init = NULL;
list_del(&component->card_aux_list);
}
static int soc_bind_aux_dev(struct snd_soc_card *card)
{
struct snd_soc_component *component;
@ -1612,7 +1618,7 @@ static void soc_remove_aux_devices(struct snd_soc_card *card)
if (comp->driver->remove_order == order) {
soc_remove_component(comp);
/* remove it from the card's aux_comp_list */
list_del(&comp->card_aux_list);
soc_unbind_aux_dev(comp);
}
}
}