ASoC: Ensure all DAPM widgets have a power check callback

Makes the code simpler.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Mark Brown
2011-09-28 18:23:53 +01:00
parent f9de6d741d
commit 35c64bcad5

View File

@@ -857,6 +857,11 @@ static int dapm_supply_check_power(struct snd_soc_dapm_widget *w)
return power; return power;
} }
static int dapm_always_on_check_power(struct snd_soc_dapm_widget *w)
{
return 1;
}
static int dapm_seq_compare(struct snd_soc_dapm_widget *a, static int dapm_seq_compare(struct snd_soc_dapm_widget *a,
struct snd_soc_dapm_widget *b, struct snd_soc_dapm_widget *b,
bool power_up) bool power_up)
@@ -1229,9 +1234,6 @@ static void dapm_power_one_widget(struct snd_soc_dapm_widget *w,
break; break;
default: default:
if (!w->power_check)
break;
if (!w->force) if (!w->force)
power = w->power_check(w); power = w->power_check(w);
else else
@@ -2090,6 +2092,9 @@ int snd_soc_dapm_new_widgets(struct snd_soc_dapm_context *dapm)
break; break;
} }
if (!w->power_check)
w->power_check = dapm_always_on_check_power;
/* Read the initial power state from the device */ /* Read the initial power state from the device */
if (w->reg >= 0) { if (w->reg >= 0) {
val = soc_widget_read(w, w->reg); val = soc_widget_read(w, w->reg);