Re: [RFC PATCH] ASoC: wm8904: add CCF support

Mark Rutland
2014-03-21T10:37:47Z

On Fri, Mar 21, 2014 at 02:51:02AM +0000, Bo Shen wrote:
> Enable WM8904 to support common clock framework.
> And also supports different clk configuration.
>
> Signed-off-by: Bo Shen <voice.shen@atmel.com>
> ---
>
> Documentation/devicetree/bindings/sound/wm8904.txt | 57 ++++++++++++++++++++++
> sound/soc/codecs/wm8904.c | 39 +++++++++++++++
> 2 files changed, 96 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/wm8904.txt
>
> diff --git a/Documentation/devicetree/bindings/sound/wm8904.txt b/Documentation/devicetree/bindings/sound/wm8904.txt
> new file mode 100644
> index 0000000..039374d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/wm8904.txt
> @@ -0,0 +1,57 @@
> +WM8904 audio CODEC
> +
> +This device supports I2C only.
> +
> +Required properties:
> + - compatible: "wlf,wm8904"
> + - reg: the I2C address of the device.
> +
> + if work with CCF, the following properties as required:

The DT shouldn't care about the software stack. You don't need to refer
to the CCF, just the clock bindings.

> + - wlf,sysclk-from-mclk: set the sys clock is driven from mclk,

Why can the kernel not decide this?

> + - wlf,mclk-use-xtal: if the mclk is generated by crystal.
> + if without this property, the mclk is generated from SOC.

Huh? What exact property do you actually are about here?

> + - clocks: which clock generated clock to mclk.
> + - clock-names: the clock names use for retrieve.

NO. Is you wish to use clock-names, then define the set of names you
expect; clock-names are the names of the _input_ lines. The
documentation sets this out clearly. Take a look at
Documentation/devicetree/bindings/clock/clock-bindings.txt.

> + - wlf,mclk-freq: mclk's frequency

If you expect mclk, you should be able to query this from it. You don't
need a separate property.

Unless this is a frequency to set it to? If so, why can the kernel not
choose this?

Chers,
Mark.