Skip to content

Commit

Permalink
ASoC: dapm: Bodge for lack of a widely available clk API
Browse files Browse the repository at this point in the history
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
  • Loading branch information
Mark Brown committed Jun 4, 2012
1 parent 695594f commit ec02995
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions sound/soc/soc-dapm.c
Original file line number Diff line number Diff line change
Expand Up @@ -1011,12 +1011,14 @@ int dapm_clock_event(struct snd_soc_dapm_widget *w,
if (!w->clk)
return -EIO;

#ifdef CONFIG_HAVE_CLK
if (SND_SOC_DAPM_EVENT_ON(event)) {
return clk_enable(w->clk);
} else {
clk_disable(w->clk);
return 0;
}
#endif
}
EXPORT_SYMBOL_GPL(dapm_clock_event);

Expand Down Expand Up @@ -2902,13 +2904,17 @@ snd_soc_dapm_new_control(struct snd_soc_dapm_context *dapm,
}
break;
case snd_soc_dapm_clock_supply:
#ifdef CONFIG_HAVE_CLK
w->clk = devm_clk_get(dapm->dev, w->name);
if (IS_ERR(w->clk)) {
ret = PTR_ERR(w->clk);
dev_err(dapm->dev, "Failed to request %s: %d\n",
w->name, ret);
return NULL;
}
#else
return NULL;
#endif
break;
default:
break;
Expand Down

0 comments on commit ec02995

Please sign in to comment.