GNU Linux-libre 5.19-rc6-gnu
[releases.git] / Documentation / devicetree / bindings / sound / qcom,lpass-tx-macro.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/qcom,lpass-tx-macro.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: LPASS(Low Power Audio Subsystem) TX Macro audio codec DT bindings
8
9 maintainers:
10   - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11
12 properties:
13   compatible:
14     enum:
15       - qcom,sc7280-lpass-tx-macro
16       - qcom,sm8250-lpass-tx-macro
17
18   reg:
19     maxItems: 1
20
21   "#sound-dai-cells":
22     const: 1
23
24   '#clock-cells':
25     const: 0
26
27   clocks:
28     maxItems: 5
29
30   clock-names:
31     oneOf:
32       - items:   #for ADSP based platforms
33           - const: mclk
34           - const: npl
35           - const: macro
36           - const: dcodec
37           - const: fsgen
38       - items:   #for ADSP bypass based platforms
39           - const: mclk
40           - const: npl
41           - const: fsgen
42
43   clock-output-names:
44     items:
45       - const: mclk
46
47   power-domains:
48     maxItems: 2
49
50   power-domain-names:
51     items:
52       - const: macro
53       - const: dcodec
54
55   qcom,dmic-sample-rate:
56     description: dmic sample rate
57     $ref: /schemas/types.yaml#/definitions/uint32
58
59 required:
60   - compatible
61   - reg
62   - "#sound-dai-cells"
63
64 additionalProperties: false
65
66 examples:
67   - |
68     #include <dt-bindings/sound/qcom,q6afe.h>
69     codec@3220000 {
70       compatible = "qcom,sm8250-lpass-tx-macro";
71       reg = <0x3220000 0x1000>;
72       #sound-dai-cells = <1>;
73       #clock-cells = <0>;
74       clocks = <&aoncc 0>,
75                <&aoncc 1>,
76                <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
77                <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
78                <&vamacro>;
79       clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
80       clock-output-names = "mclk";
81       qcom,dmic-sample-rate = <600000>;
82     };