blob: 06b5f7be360829e6c666263e9560a7ff595688d5 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# 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-wsa-macro.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: LPASS(Low Power Audio Subsystem) VA Macro audio codec
8
9maintainers:
10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11
12properties:
13 compatible:
Tom Rini93743d22024-04-01 09:08:13 -040014 oneOf:
15 - enum:
16 - qcom,sc7280-lpass-wsa-macro
17 - qcom,sm8250-lpass-wsa-macro
18 - qcom,sm8450-lpass-wsa-macro
19 - qcom,sm8550-lpass-wsa-macro
20 - qcom,sc8280xp-lpass-wsa-macro
21 - items:
22 - enum:
23 - qcom,sm8650-lpass-wsa-macro
24 - qcom,x1e80100-lpass-wsa-macro
25 - const: qcom,sm8550-lpass-wsa-macro
Tom Rini53633a82024-02-29 12:33:36 -050026
27 reg:
28 maxItems: 1
29
30 "#sound-dai-cells":
31 const: 1
32
33 '#clock-cells':
34 const: 0
35
36 clocks:
37 minItems: 4
38 maxItems: 6
39
40 clock-names:
41 minItems: 4
42 maxItems: 6
43
44 clock-output-names:
45 maxItems: 1
46
47 qcom,dmic-sample-rate:
48 description: dmic sample rate
49 $ref: /schemas/types.yaml#/definitions/uint32
50
51 vdd-micb-supply:
52 description: phandle to voltage regulator of MIC Bias
53
54required:
55 - compatible
56 - reg
57 - "#sound-dai-cells"
58
59allOf:
60 - $ref: dai-common.yaml#
61
62 - if:
63 properties:
64 compatible:
65 enum:
66 - qcom,sc7280-lpass-wsa-macro
67 - qcom,sm8450-lpass-wsa-macro
68 - qcom,sc8280xp-lpass-wsa-macro
69 then:
70 properties:
71 clocks:
72 minItems: 5
73 maxItems: 5
74 clock-names:
75 items:
76 - const: mclk
77 - const: npl
78 - const: macro
79 - const: dcodec
80 - const: fsgen
81
82 - if:
83 properties:
84 compatible:
85 enum:
86 - qcom,sm8250-lpass-wsa-macro
87 then:
88 properties:
89 clocks:
90 minItems: 6
91 clock-names:
92 items:
93 - const: mclk
94 - const: npl
95 - const: macro
96 - const: dcodec
97 - const: va
98 - const: fsgen
99
100 - if:
101 properties:
102 compatible:
Tom Rini93743d22024-04-01 09:08:13 -0400103 contains:
104 enum:
105 - qcom,sm8550-lpass-wsa-macro
Tom Rini53633a82024-02-29 12:33:36 -0500106 then:
107 properties:
108 clocks:
109 minItems: 4
110 maxItems: 4
111 clock-names:
112 items:
113 - const: mclk
114 - const: macro
115 - const: dcodec
116 - const: fsgen
117
118unevaluatedProperties: false
119
120examples:
121 - |
122 #include <dt-bindings/clock/qcom,sm8250-lpass-aoncc.h>
123 #include <dt-bindings/sound/qcom,q6afe.h>
124 codec@3240000 {
125 compatible = "qcom,sm8250-lpass-wsa-macro";
126 reg = <0x3240000 0x1000>;
127 #sound-dai-cells = <1>;
128 #clock-cells = <0>;
129 clocks = <&audiocc 1>,
130 <&audiocc 0>,
131 <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
132 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
133 <&aoncc LPASS_CDC_VA_MCLK>,
134 <&vamacro>;
135 clock-names = "mclk", "npl", "macro", "dcodec", "va", "fsgen";
136 clock-output-names = "mclk";
137 };