[alsa-devel] [PATCH v3] ASoC: wm8960: Let wm8960 codec driver manage its own MCLK
Charles Keepax
ckeepax at opensource.wolfsonmicro.com
Fri Dec 5 18:01:56 CET 2014
On Thu, Dec 04, 2014 at 08:41:19PM +0800, Zidan Wang wrote:
> When we want to use wm8960 codec, we should enable its MCLK in machine
> driver. It's reasonable for wm8960 codec driver to manage its own MCLK to
> save power.
>
> If platform data is not supplied, we will get MCLK from device tree and check
> the return code to handle probe deferral.
>
> Enable runtime power management, and auto enable/disable MCLK in pm_runtime
> resume and suspend. When wm8960 codec is being used, it will triger resume()
> to enable MCLK. When codec is not being used, it will triger suspend() to
> disable MCLK.
>
> Signed-off-by: Zidan Wang <b50113 at freescale.com>
> ---
> include/sound/wm8960.h | 1 +
> sound/soc/codecs/wm8960.c | 56 ++++++++++++++++++++++++++++++++++++++++++++---
> 2 files changed, 54 insertions(+), 3 deletions(-)
>
> diff --git a/include/sound/wm8960.h b/include/sound/wm8960.h
> index e8ce8ee..d7e84ed 100644
> --- a/include/sound/wm8960.h
> +++ b/include/sound/wm8960.h
> @@ -16,6 +16,7 @@
> #define WM8960_DRES_MAX 3
>
> struct wm8960_data {
> + struct clk *mclk;
Is this really pdata? Would the pdata entry to locate the clock
not be a string holding the clock name that you call clk_get on,
rather than a clk pointer itself? Probably this should go in
wm8960_priv instead.
Thanks,
Charles
More information about the Alsa-devel
mailing list