Re: [PATCH v3 02/17] mfd: madera: Add DT bindings for Cirrus Logic Madera codecs

From: Lee Jones
Date: Mon Jun 05 2017 - 06:13:59 EST


On Fri, 02 Jun 2017, Richard Fitzgerald wrote:

> Specification of the bindings for the parent MFD driver component
> of the Cirrus Logic Madera codec drivers.
>
> Note that although the interrupt controller and GPIO are child
> drivers their required bindings are trivial, mandatory, and exist
> within the parent MFD node so are documented here.
>
> Signed-off-by: Richard Fitzgerald <rf@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> ---
> Changes since V2:
> - Moved the gpio driver bindings into the main MFD binding doc
>
> Documentation/devicetree/bindings/mfd/madera.txt | 102 +++++++++++++++++++++++
> 1 file changed, 102 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/mfd/madera.txt

For my own reference:
Acked-for-MFD-by: Lee Jones <lee.jones@xxxxxxxxxx>

> diff --git a/Documentation/devicetree/bindings/mfd/madera.txt b/Documentation/devicetree/bindings/mfd/madera.txt
> new file mode 100644
> index 0000000..db32660
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/madera.txt
> @@ -0,0 +1,102 @@
> +Cirrus Logic Madera class audio codecs Multi-Functional Device
> +
> +These devices are audio SoCs with extensive digital capabilities and a range
> +of analogue I/O.
> +
> +See also the child driver bindings in:
> +bindings/pinctrl/cirrus,madera-pinctrl.txt
> +bindings/regulator/arizona-regulator.txt
> +bindings/sound/madera.txt
> +
> +Required properties:
> +
> + - compatible : One of the following chip-specific strings:
> + "cirrus,cs47l35"
> + "cirrus,cs47l85"
> + "cirrus,cs47l90"
> + "cirrus,cs47l91"
> + "cirrus,wm1840"
> +
> + - reg : I2C slave address when connected using I2C, chip select number when
> + using SPI.
> +
> + - DCVDD-supply : Power supply for the device as defined in
> + bindings/regulator/regulator.txt
> + Mandatory on CS47L35, CS47L90, CS47L91
> + Optional on CS47L85, WM1840
> +
> + - AVDD-supply, DBVDD1-supply, DBVDD2-supply, CPVDD1-supply, CPVDD2-supply :
> + Power supplies for the device
> +
> + - DBVDD3-supply, DBVDD4-supply : Power supplies for the device
> + (CS47L85, CS47L90, CS47L91, WM1840)
> +
> + - SPKVDDL-supply, SPKVDDR-supply : Power supplies for the device
> + (CS47L85, WM1840)
> +
> + - SPKVDD-supply : Power supply for the device
> + (CS47L35)
> +
> + - interrupt-controller : Indicates that this device is an interrupt controller
> +
> + - #interrupt-cells: the number of cells to describe an IRQ, must be 2.
> + The first cell is the IRQ number.
> + The second cell is the flags, encoded as the trigger masks from
> + bindings/interrupt-controller/interrupts.txt
> +
> + - gpio-controller : Indicates this device is a GPIO controller.
> +
> + - #gpio-cells : Must be 2. The first cell is the pin number. The second cell
> + is reserved for future use and must be zero
> +
> + - interrupt-parent : The parent interrupt controller.
> +
> + - interrupts : The interrupt line the /IRQ signal for the device is
> + connected to.
> +
> +Optional properties:
> +
> + - MICVDD-supply : Power supply, only need to be specified if
> + powered externally
> +
> + - reset-gpios : One entry specifying the GPIO controlling /RESET.
> + As defined in bindings/gpio.txt.
> + Although optional, it is strongly recommended to use a hardware reset
> +
> + - MICBIASx : Initial data for the MICBIAS regulators, as covered in
> + Documentation/devicetree/bindings/regulator/regulator.txt.
> + One for each MICBIAS generator (MICBIAS1, MICBIAS2, ...)
> + (all codecs)
> +
> + One for each output pin (MICBIAS1A, MIBCIAS1B, MICBIAS2A, ...)
> + (all except CS47L85, WM1840)
> +
> + The following following additional property is supported for the generator
> + nodes:
> + - cirrus,ext-cap : Set to 1 if the MICBIAS has external decoupling
> + capacitors attached.
> +
> +Optional child nodes:
> + micvdd : Node containing initialization data for the micvdd regulator
> + See bindings/regulator/arizona-regulator.txt
> +
> + ldo1 : Node containing initialization data for the LDO1 regulator
> + See bindings/regulator/arizona-regulator.txt
> + (cs47l85, wm1840)
> +
> +Example:
> +
> +cs47l85@0 {
> + compatible = "cirrus,cs47l85";
> + reg = <0>;
> +
> + reset-gpios = <&gpio 0>;
> +
> + interrupt-controller;
> + #interrupt-cells = <2>;
> + interrupts = <&host_irq1>;
> + interrupt-parent = <&gic>;
> +
> + gpio-controller;
> + #gpio-cells = <2>;
> +};

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog