Unverified Commit 141b64f4 authored by Mark Brown's avatar Mark Brown
Browse files

Merge series "ASoC: wm8962: Conversion to json-schema and fix" from Geert...

Merge series "ASoC: wm8962: Conversion to json-schema and fix" from Geert Uytterhoeven <geert+renesas@glider.be>:

	Hi all,

This patch series converts the Wolfson WM8962 Device Tree binding
documentation to json-schema, after fixing an issue in the imx8mn-beacon
DTS file.

Thanks for your comments!

Geert Uytterhoeven (2):
  arm64: dts: imx: imx8mn-beacon: Drop undocumented clock-names
    reference
  ASoC: dt-bindings: wlf,wm8962: Convert to json-schema

 .../devicetree/bindings/sound/wlf,wm8962.yaml | 118 ++++++++++++++++++
 .../devicetree/bindings/sound/wm8962.txt      |  43 -------
 .../freescale/imx8mn-beacon-baseboard.dtsi    |   1 -
 3 files changed, 118 insertions(+), 44 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/wlf,wm8962.yaml
 delete mode 100644 Documentation/devicetree/bindings/sound/wm8962.txt

--
2.25.1

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds
parents 2003c44e cd51b942
Loading
Loading
Loading
Loading
+118 −0
Original line number Original line Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/wlf,wm8962.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Wolfson WM8962 Ultra-Low Power Stereo CODEC

maintainers:
  - patches@opensource.cirrus.com

properties:
  compatible:
    const: wlf,wm8962

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  "#sound-dai-cells":
    const: 0

  AVDD-supply:
    description: Analogue supply.

  CPVDD-supply:
    description: Charge pump power supply.

  DBVDD-supply:
    description: Digital Buffer Supply.

  DCVDD-supply:
    description: Digital Core Supply.

  MICVDD-supply:
    description: Microphone bias amp supply.

  PLLVDD-supply:
    description: PLL Supply

  SPKVDD1-supply:
    description: Supply for left speaker drivers.

  SPKVDD2-supply:
    description: Supply for right speaker drivers.

  spk-mono:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      If present, the SPK_MONO bit of R51 (Class D Control 2) gets set,
      indicating that the speaker is in mono mode.

  mic-cfg:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Default register value for R48 (Additional Control 4).
      If absent, the default should be the register default.

  gpio-cfg:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    minItems: 6
    maxItems: 6
    description:
      A list of GPIO configuration register values.  If absent, no
      configuration of these registers is performed.  Note that only values
      within [0x0, 0xffff] are valid.  Any other value is regarded as setting
      the GPIO register to its reset value 0x0.

  port:
    $ref: audio-graph-port.yaml#
    unevaluatedProperties: false

required:
  - compatible
  - reg
  - AVDD-supply
  - CPVDD-supply
  - DBVDD-supply
  - DCVDD-supply
  - MICVDD-supply
  - PLLVDD-supply
  - SPKVDD1-supply
  - SPKVDD2-supply

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx6qdl-clock.h>

    i2c {
          #address-cells = <1>;
          #size-cells = <0>;

          wm8962: codec@1a {
                  compatible = "wlf,wm8962";
                  reg = <0x1a>;
                  clocks = <&clks IMX6QDL_CLK_CKO>;
                  DCVDD-supply = <&reg_audio>;
                  DBVDD-supply = <&reg_audio>;
                  AVDD-supply = <&reg_audio>;
                  CPVDD-supply = <&reg_audio>;
                  MICVDD-supply = <&reg_audio>;
                  PLLVDD-supply = <&reg_audio>;
                  SPKVDD1-supply = <&reg_audio>;
                  SPKVDD2-supply = <&reg_audio>;
                  gpio-cfg = <
                          0x0000 /* 0:Default */
                          0x0000 /* 1:Default */
                          0x0013 /* 2:FN_DMICCLK */
                          0x0000 /* 3:Default */
                          0x8014 /* 4:FN_DMICCDAT */
                          0x0000 /* 5:Default */
                  >;
          };
    };
+0 −43
Original line number Original line Diff line number Diff line
WM8962 audio CODEC

This device supports I2C only.

Required properties:

  - compatible : "wlf,wm8962"

  - reg : the I2C address of the device.

Optional properties:

  - clocks : The clock source of the mclk

  - spk-mono: This is a boolean property. If present, the SPK_MONO bit
    of R51 (Class D Control 2) gets set, indicating that the speaker is
    in mono mode.

  - mic-cfg : Default register value for R48 (Additional Control 4).
    If absent, the default should be the register default.

  - gpio-cfg : A list of GPIO configuration register values. The list must
    be 6 entries long. If absent, no configuration of these registers is
    performed. And note that only the value within [0x0, 0xffff] is valid.
    Any other value is regarded as setting the GPIO register by its reset
    value 0x0.

Example:

wm8962: codec@1a {
	compatible = "wlf,wm8962";
	reg = <0x1a>;
	clocks = <&clks IMX6QDL_CLK_CKO>;

	gpio-cfg = <
		0x0000 /* 0:Default */
		0x0000 /* 1:Default */
		0x0013 /* 2:FN_DMICCLK */
		0x0000 /* 3:Default */
		0x8014 /* 4:FN_DMICCDAT */
		0x0000 /* 5:Default */
	>;
};