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

Lee Jones lee.jones at linaro.org
Mon Jun 5 12:13:38 CEST 2017


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 at opensource.wolfsonmicro.com>
> ---
> 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 at linaro.org>
  
> 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 at 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


More information about the Alsa-devel mailing list