GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / sound / qcom,lpass-rx-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-rx-macro.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: LPASS(Low Power Audio Subsystem) RX 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-rx-macro
16       - qcom,sm8250-lpass-rx-macro
17       - qcom,sm8450-lpass-rx-macro
18       - qcom,sc8280xp-lpass-rx-macro
19
20   reg:
21     maxItems: 1
22
23   "#sound-dai-cells":
24     const: 1
25
26   '#clock-cells':
27     const: 0
28
29   clocks:
30     minItems: 3
31     maxItems: 5
32
33   clock-names:
34     oneOf:
35       - items:   #for ADSP based platforms
36           - const: mclk
37           - const: npl
38           - const: macro
39           - const: dcodec
40           - const: fsgen
41       - items:   #for ADSP bypass based platforms
42           - const: mclk
43           - const: npl
44           - const: fsgen
45
46   clock-output-names:
47     items:
48       - const: mclk
49
50   power-domains:
51     maxItems: 2
52
53   power-domain-names:
54     items:
55       - const: macro
56       - const: dcodec
57
58 required:
59   - compatible
60   - reg
61   - "#sound-dai-cells"
62
63 additionalProperties: false
64
65 examples:
66   - |
67     #include <dt-bindings/sound/qcom,q6afe.h>
68     codec@3200000 {
69       compatible = "qcom,sm8250-lpass-rx-macro";
70       reg = <0x3200000 0x1000>;
71       #sound-dai-cells = <1>;
72       #clock-cells = <0>;
73       clocks = <&audiocc 0>,
74                <&audiocc 1>,
75                <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
76                <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
77                <&vamacro>;
78       clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
79       clock-output-names = "mclk";
80     };