File Index
Files and directories
Sign in
FILE

qcom,lpass-va-macro.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml 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-va-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:
 14    oneOf:
 15      - enum:
 16          - qcom,sc7280-lpass-va-macro
 17          - qcom,sm6115-lpass-va-macro
 18          - qcom,sm8250-lpass-va-macro
 19          - qcom,sm8450-lpass-va-macro
 20          - qcom,sm8550-lpass-va-macro
 21          - qcom,sc8280xp-lpass-va-macro
 22      - items:
 23          - enum:
 24              - qcom,glymur-lpass-va-macro
 25              - qcom,kaanapali-lpass-va-macro
 26              - qcom,sm8650-lpass-va-macro
 27              - qcom,sm8750-lpass-va-macro
 28              - qcom,x1e80100-lpass-va-macro
 29          - const: qcom,sm8550-lpass-va-macro
 30
 31  reg:
 32    maxItems: 1
 33
 34  "#sound-dai-cells":
 35    const: 1
 36
 37  '#clock-cells':
 38    const: 0
 39
 40  clocks:
 41    minItems: 1
 42    maxItems: 4
 43
 44  clock-names:
 45    minItems: 1
 46    maxItems: 4
 47
 48  clock-output-names:
 49    maxItems: 1
 50
 51  power-domains:
 52    maxItems: 2
 53
 54  power-domain-names:
 55    items:
 56      - const: macro
 57      - const: dcodec
 58
 59  qcom,dmic-sample-rate:
 60    description: dmic sample rate
 61    $ref: /schemas/types.yaml#/definitions/uint32
 62
 63  vdd-micb-supply:
 64    description: phandle to voltage regulator of MIC Bias
 65
 66required:
 67  - compatible
 68  - reg
 69  - "#sound-dai-cells"
 70  - clock-names
 71  - clocks
 72
 73allOf:
 74  - $ref: dai-common.yaml#
 75
 76  - if:
 77      properties:
 78        compatible:
 79          contains:
 80            const: qcom,sc7280-lpass-va-macro
 81
 82    then:
 83      if:
 84        required:
 85          - power-domains
 86      then:
 87        properties:
 88          clocks:
 89            maxItems: 1
 90          clock-names:
 91            items:
 92              - const: mclk
 93      else:
 94        properties:
 95          clocks:
 96            minItems: 3
 97            maxItems: 3
 98          clock-names:
 99            items:
100              - const: mclk
101              - const: macro
102              - const: dcodec
103  - if:
104      properties:
105        compatible:
106          contains:
107            const: qcom,sm6115-lpass-va-macro
108    then:
109      properties:
110        clocks:
111          minItems: 3
112          maxItems: 3
113        clock-names:
114          items:
115            - const: mclk
116            - const: dcodec
117            - const: npl
118  - if:
119      properties:
120        compatible:
121          contains:
122            const: qcom,sm8250-lpass-va-macro
123    then:
124      properties:
125        clocks:
126          minItems: 3
127          maxItems: 3
128        clock-names:
129          items:
130            - const: mclk
131            - const: macro
132            - const: dcodec
133
134  - if:
135      properties:
136        compatible:
137          contains:
138            enum:
139              - qcom,sc8280xp-lpass-va-macro
140              - qcom,sm8450-lpass-va-macro
141    then:
142      properties:
143        clocks:
144          minItems: 4
145          maxItems: 4
146        clock-names:
147          items:
148            - const: mclk
149            - const: macro
150            - const: dcodec
151            - const: npl
152
153  - if:
154      properties:
155        compatible:
156          contains:
157            enum:
158              - qcom,sm8550-lpass-va-macro
159    then:
160      properties:
161        clocks:
162          minItems: 3
163          maxItems: 3
164        clock-names:
165          items:
166            - const: mclk
167            - const: macro
168            - const: dcodec
169
170unevaluatedProperties: false
171
172examples:
173  - |
174    #include <dt-bindings/sound/qcom,q6afe.h>
175    codec@3370000 {
176      compatible = "qcom,sm8250-lpass-va-macro";
177      reg = <0x3370000 0x1000>;
178      #sound-dai-cells = <1>;
179      #clock-cells = <0>;
180      clocks = <&aoncc 0>,
181               <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
182               <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
183      clock-names = "mclk", "macro", "dcodec";
184      clock-output-names = "fsgen";
185      qcom,dmic-sample-rate = <600000>;
186      vdd-micb-supply = <&vreg_s4a_1p8>;
187    };
~/ Read-only file preview.