xref: /freebsd/sys/contrib/device-tree/Bindings/sound/adi,adau7118.yaml (revision a64729f5077d77e13b9497cb33ecb3c82e606ee8)
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
8title: Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter
9
10maintainers:
11  - Nuno Sá <nuno.sa@analog.com>
12
13description: |
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
18allOf:
19  - $ref: dai-common.yaml#
20
21properties:
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
57required:
58  - "#sound-dai-cells"
59  - compatible
60  - iovdd-supply
61  - dvdd-supply
62
63unevaluatedProperties: false
64
65examples:
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    };
89