File Index
Files and directories
Sign in
FILE

qcom,lpass-tx-macro.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/sound/qcom,lpass-tx-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-tx-macro.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: LPASS(Low Power Audio Subsystem) TX Macro audio codec
  8
  9maintainers:
 10  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
 11
 12properties:
 13  compatible:
 14    oneOf:
 15      - enum:
 16          - qcom,sc7280-lpass-tx-macro
 17          - qcom,sm6115-lpass-tx-macro
 18          - qcom,sm8250-lpass-tx-macro
 19          - qcom,sm8450-lpass-tx-macro
 20          - qcom,sm8550-lpass-tx-macro
 21          - qcom,sc8280xp-lpass-tx-macro
 22      - items:
 23          - enum:
 24              - qcom,kaanapali-lpass-tx-macro
 25              - qcom,sm8650-lpass-tx-macro
 26              - qcom,sm8750-lpass-tx-macro
 27              - qcom,x1e80100-lpass-tx-macro
 28          - const: qcom,sm8550-lpass-tx-macro
 29
 30  reg:
 31    maxItems: 1
 32
 33  "#sound-dai-cells":
 34    const: 1
 35
 36  '#clock-cells':
 37    const: 0
 38
 39  clocks:
 40    minItems: 3
 41    maxItems: 5
 42
 43  clock-names:
 44    minItems: 3
 45    maxItems: 5
 46
 47  clock-output-names:
 48    maxItems: 1
 49
 50  power-domains:
 51    maxItems: 2
 52
 53  power-domain-names:
 54    items:
 55      - const: macro
 56      - const: dcodec
 57
 58  qcom,dmic-sample-rate:
 59    description: dmic sample rate
 60    $ref: /schemas/types.yaml#/definitions/uint32
 61
 62required:
 63  - compatible
 64  - reg
 65  - "#sound-dai-cells"
 66
 67allOf:
 68  - $ref: dai-common.yaml#
 69  - if:
 70      properties:
 71        compatible:
 72          enum:
 73            - qcom,sc7280-lpass-tx-macro
 74    then:
 75      properties:
 76        clock-names:
 77          oneOf:
 78            - items:   # for ADSP based platforms
 79                - const: mclk
 80                - const: npl
 81                - const: macro
 82                - const: dcodec
 83                - const: fsgen
 84            - items:   # for ADSP bypass based platforms
 85                - const: mclk
 86                - const: npl
 87                - const: fsgen
 88
 89  - if:
 90      properties:
 91        compatible:
 92          enum:
 93            - qcom,sc8280xp-lpass-tx-macro
 94            - qcom,sm8250-lpass-tx-macro
 95            - qcom,sm8450-lpass-tx-macro
 96    then:
 97      properties:
 98        clocks:
 99          minItems: 5
100          maxItems: 5
101        clock-names:
102          items:
103            - const: mclk
104            - const: npl
105            - const: macro
106            - const: dcodec
107            - const: fsgen
108
109  - if:
110      properties:
111        compatible:
112          enum:
113            - qcom,sm6115-lpass-tx-macro
114    then:
115      properties:
116        clocks:
117          minItems: 4
118          maxItems: 4
119        clock-names:
120          items:
121            - const: mclk
122            - const: npl
123            - const: dcodec
124            - const: fsgen
125
126  - if:
127      properties:
128        compatible:
129          contains:
130            enum:
131              - qcom,sm8550-lpass-tx-macro
132    then:
133      properties:
134        clocks:
135          minItems: 4
136          maxItems: 4
137        clock-names:
138          items:
139            - const: mclk
140            - const: macro
141            - const: dcodec
142            - const: fsgen
143
144unevaluatedProperties: false
145
146examples:
147  - |
148    #include <dt-bindings/sound/qcom,q6afe.h>
149    codec@3220000 {
150      compatible = "qcom,sm8250-lpass-tx-macro";
151      reg = <0x3220000 0x1000>;
152      #sound-dai-cells = <1>;
153      #clock-cells = <0>;
154      clocks = <&aoncc 0>,
155               <&aoncc 1>,
156               <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
157               <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
158               <&vamacro>;
159      clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
160      clock-output-names = "mclk";
161      qcom,dmic-sample-rate = <600000>;
162    };
~/ Read-only file preview.