drm/panel: panel-himax-hx83102: support for csot-pna957qt1-1 MIPI-DSI panel
[drm/drm-misc.git] / Documentation / devicetree / bindings / sound / qcom,lpass-rx-macro.yaml
blob92f95eb74b1928fde11ad86ab6344f274bdf7790
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#
7 title: LPASS(Low Power Audio Subsystem) RX Macro audio codec
9 maintainers:
10   - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
12 properties:
13   compatible:
14     oneOf:
15       - enum:
16           - qcom,sc7280-lpass-rx-macro
17           - qcom,sm8250-lpass-rx-macro
18           - qcom,sm8450-lpass-rx-macro
19           - qcom,sm8550-lpass-rx-macro
20           - qcom,sc8280xp-lpass-rx-macro
21       - items:
22           - enum:
23               - qcom,sm8650-lpass-rx-macro
24               - qcom,sm8750-lpass-rx-macro
25               - qcom,x1e80100-lpass-rx-macro
26           - const: qcom,sm8550-lpass-rx-macro
28   reg:
29     maxItems: 1
31   "#sound-dai-cells":
32     const: 1
34   '#clock-cells':
35     const: 0
37   clocks:
38     minItems: 3
39     maxItems: 5
41   clock-names:
42     minItems: 3
43     maxItems: 5
45   clock-output-names:
46     maxItems: 1
48   power-domains:
49     maxItems: 2
51   power-domain-names:
52     items:
53       - const: macro
54       - const: dcodec
56 required:
57   - compatible
58   - reg
59   - "#sound-dai-cells"
61 allOf:
62   - $ref: dai-common.yaml#
63   - if:
64       properties:
65         compatible:
66           enum:
67             - qcom,sc7280-lpass-rx-macro
68     then:
69       properties:
70         clock-names:
71           oneOf:
72             - items:   # for ADSP based platforms
73                 - const: mclk
74                 - const: npl
75                 - const: macro
76                 - const: dcodec
77                 - const: fsgen
78             - items:   # for ADSP bypass based platforms
79                 - const: mclk
80                 - const: npl
81                 - const: fsgen
83   - if:
84       properties:
85         compatible:
86           enum:
87             - qcom,sc8280xp-lpass-rx-macro
88             - qcom,sm8250-lpass-rx-macro
89             - qcom,sm8450-lpass-rx-macro
90     then:
91       properties:
92         clocks:
93           minItems: 5
94           maxItems: 5
95         clock-names:
96           items:
97             - const: mclk
98             - const: npl
99             - const: macro
100             - const: dcodec
101             - const: fsgen
103   - if:
104       properties:
105         compatible:
106           contains:
107             enum:
108               - qcom,sm8550-lpass-rx-macro
109     then:
110       properties:
111         clocks:
112           minItems: 4
113           maxItems: 4
114         clock-names:
115           items:
116             - const: mclk
117             - const: macro
118             - const: dcodec
119             - const: fsgen
121 unevaluatedProperties: false
123 examples:
124   - |
125     #include <dt-bindings/sound/qcom,q6afe.h>
126     codec@3200000 {
127       compatible = "qcom,sm8250-lpass-rx-macro";
128       reg = <0x3200000 0x1000>;
129       #sound-dai-cells = <1>;
130       #clock-cells = <0>;
131       clocks = <&audiocc 0>,
132                <&audiocc 1>,
133                <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
134                <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
135                <&vamacro>;
136       clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
137       clock-output-names = "mclk";
138     };