Linux 6.7-rc7
[linux-modified.git] / Documentation / devicetree / bindings / sound / adi,adau7118.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/adi,adau7118.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
8 title: Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter
9
10 maintainers:
11   - Nuno Sá <nuno.sa@analog.com>
12
13 description: |
14   Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter over I2C or HW
15   standalone mode.
16   https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU7118.pdf
17
18 allOf:
19   - $ref: dai-common.yaml#
20
21 properties:
22   compatible:
23     enum:
24       - adi,adau7118
25
26   reg:
27     maxItems: 1
28
29   "#sound-dai-cells":
30     const: 0
31
32   iovdd-supply:
33     description: Digital Input/Output Power Supply.
34
35   dvdd-supply:
36     description: Internal Core Digital Power Supply.
37
38   adi,decimation-ratio:
39     description: |
40       This property set's the decimation ratio of PDM to PCM audio data.
41     $ref: /schemas/types.yaml#/definitions/uint32
42     enum: [64, 32, 16]
43     default: 64
44
45   adi,pdm-clk-map:
46     description: |
47       The ADAU7118 has two PDM clocks for the four Inputs. Each input must be
48       assigned to one of these two clocks. This property set's the mapping
49       between the clocks and the inputs.
50     $ref: /schemas/types.yaml#/definitions/uint32-array
51     minItems: 4
52     maxItems: 4
53     items:
54       maximum: 1
55     default: [0, 0, 1, 1]
56
57 required:
58   - "#sound-dai-cells"
59   - compatible
60   - iovdd-supply
61   - dvdd-supply
62
63 unevaluatedProperties: false
64
65 examples:
66   - |
67     i2c {
68         /* example with i2c support */
69         #address-cells = <1>;
70         #size-cells = <0>;
71         adau7118_codec: audio-codec@14 {
72                 compatible = "adi,adau7118";
73                 reg = <0x14>;
74                 #sound-dai-cells = <0>;
75                 iovdd-supply = <&supply>;
76                 dvdd-supply = <&supply>;
77                 adi,pdm-clk-map = <1 1 0 0>;
78                 adi,decimation-ratio = <16>;
79         };
80     };
81
82     /* example with hw standalone mode */
83     adau7118_codec_hw: adau7118-codec-hw {
84             compatible = "adi,adau7118";
85             #sound-dai-cells = <0>;
86             iovdd-supply = <&supply>;
87             dvdd-supply = <&supply>;
88     };