ASoC: core: remove pointless auxiliary from snd_soc_component

commit 1a653aa447 ("ASoC: core: replace aux_comp_list to ...")
tried to replace aux_comp_list to component_dev_list,
but it failed because of binding timing. Thus, Sylwester fixuped it by
commit d2e3a1358c ("ASoC: Fix binding and probing of auxiliary...").

One of main purpose of commit 1a653aa447 ("ASoC: core: replace...")
was remove replaceable list (= list_aux) from snd_soc_component by using
new "auxiliary" flags (but it failed).
Because of this background, current code has reborned card_aux_list
(= same as original list_aux), and almost pointless "auxiliary" flags.

Let's remove pointless "auxiliary" flags by this patch
This means, it is same as revert both
commit 1a653aa447 ("ASoC: core: replace aux_comp_list to ...") and
commit d2e3a1358c ("ASoC: Fix binding and probing of auxiliary...").

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tested-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2017-03-24 00:13:00 +00:00 committed by Mark Brown
parent ec5a82d6c0
commit 991454e170
2 changed files with 5 additions and 11 deletions

View File

@ -812,7 +812,6 @@ struct snd_soc_component {
unsigned int ignore_pmdown_time:1; /* pmdown_time is ignored at stop */ unsigned int ignore_pmdown_time:1; /* pmdown_time is ignored at stop */
unsigned int registered_as_component:1; unsigned int registered_as_component:1;
unsigned int auxiliary:1; /* for auxiliary component of the card */
unsigned int suspended:1; /* is in suspend PM state */ unsigned int suspended:1; /* is in suspend PM state */
struct list_head list; struct list_head list;

View File

@ -1776,7 +1776,6 @@ static int soc_bind_aux_dev(struct snd_soc_card *card, int num)
} }
component->init = aux_dev->init; component->init = aux_dev->init;
component->auxiliary = 1;
list_add(&component->card_aux_list, &card->aux_comp_list); list_add(&component->card_aux_list, &card->aux_comp_list);
return 0; return 0;
@ -1788,14 +1787,13 @@ err_defer:
static int soc_probe_aux_devices(struct snd_soc_card *card) static int soc_probe_aux_devices(struct snd_soc_card *card)
{ {
struct snd_soc_component *comp, *tmp; struct snd_soc_component *comp;
int order; int order;
int ret; int ret;
for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST; for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST;
order++) { order++) {
list_for_each_entry_safe(comp, tmp, &card->aux_comp_list, list_for_each_entry(comp, &card->aux_comp_list, card_aux_list) {
card_aux_list) {
if (comp->driver->probe_order == order) { if (comp->driver->probe_order == order) {
ret = soc_probe_component(card, comp); ret = soc_probe_component(card, comp);
if (ret < 0) { if (ret < 0) {
@ -1804,7 +1802,6 @@ static int soc_probe_aux_devices(struct snd_soc_card *card)
comp->name, ret); comp->name, ret);
return ret; return ret;
} }
list_del(&comp->card_aux_list);
} }
} }
} }
@ -1820,14 +1817,12 @@ static void soc_remove_aux_devices(struct snd_soc_card *card)
for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST; for (order = SND_SOC_COMP_ORDER_FIRST; order <= SND_SOC_COMP_ORDER_LAST;
order++) { order++) {
list_for_each_entry_safe(comp, _comp, list_for_each_entry_safe(comp, _comp,
&card->component_dev_list, card_list) { &card->aux_comp_list, card_aux_list) {
if (!comp->auxiliary)
continue;
if (comp->driver->remove_order == order) { if (comp->driver->remove_order == order) {
soc_remove_component(comp); soc_remove_component(comp);
comp->auxiliary = 0; /* remove it from the card's aux_comp_list */
list_del(&comp->card_aux_list);
} }
} }
} }