Document the ADAU7118 8 channel PDM to I2S/TDM converter devicetree bindings. Signed-off-by: Nuno Sá <nuno.sa@xxxxxxxxxx> --- Changes in v2: * List regulators as required. .../bindings/sound/adi,adau7118.yaml | 90 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 91 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/adi,adau7118.yaml diff --git a/Documentation/devicetree/bindings/sound/adi,adau7118.yaml b/Documentation/devicetree/bindings/sound/adi,adau7118.yaml new file mode 100644 index 000000000000..5713133005b5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/adi,adau7118.yaml @@ -0,0 +1,90 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/adi,adau7118.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + + +title: Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter + +maintainers: + - Nuno Sá <nuno.sa@xxxxxxxxxx> + +description: | + Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter over I2C or HW + standalone mode. + https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU7118.pdf + +properties: + compatible: + enum: + - adi,adau7118 + + reg: + maxItems: 1 + + "#sound-dai-cells": + const: 0 + + IOVDD-supply: + description: Digital Input/Output Power Supply. + $ref: "/schemas/types.yaml#/definitions/phandle" + + DVDD-supply: + description: Internal Core Digital Power Supply. + $ref: "/schemas/types.yaml#/definitions/phandle" + + adi,decimation-ratio: + description: | + This property set's the decimation ratio of PDM to PCM audio data. + allOf: + - $ref: /schemas/types.yaml#/definitions/uint32 + - enum: [64, 32, 16] + default: 64 + + adi,pdm-clk-map: + description: | + The ADAU7118 has two PDM clocks for the four Inputs. Each input must be + assigned to one of these two clocks. This property set's the mapping + between the clocks and the inputs. + allOf: + - $ref: /schemas/types.yaml#/definitions/uint32-array + - minItems: 4 + maxItems: 4 + items: + maximum: 1 + default: [0, 0, 1, 1] + +required: + - "#sound-dai-cells" + - compatible + - IOVDD-supply + - DVDD-supply + +examples: + - | + i2c0 { + /* example with i2c support */ + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + adau7118_codec: adau7118-codec@14 { + compatible = "adi,adau7118"; + reg = <14>; + #sound-dai-cells = <0>; + status = "okay"; + IOVDD-supply = <&supply>; + DVDD-supply = <&supply>; + adi,pdm-clk-map = <1 1 0 0>; + adi,decimation-ratio = <16>; + }; + }; + + /* example with hw standalone mode */ + adau7118_codec_hw: adau7118-codec-hw { + compatible = "adi,adau7118"; + #sound-dai-cells = <0>; + status = "okay"; + IOVDD-supply = <&supply>; + DVDD-supply = <&supply>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 8ba47cac8e83..58f7bc6e8897 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1013,6 +1013,7 @@ F: sound/soc/codecs/ad1* F: sound/soc/codecs/ad7* F: sound/soc/codecs/ssm* F: sound/soc/codecs/sigmadsp.* +F: Documentation/devicetree/bindings/sound/adi,adau* ANALOG DEVICES INC DMA DRIVERS M: Lars-Peter Clausen <lars@xxxxxxxxxx> -- 2.23.0