brintos

brintos / linux-shallow public Read only

0
0
Text · 3.0 KiB · b8540b3 Raw
138 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/qcom,lpass-rx-macro.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: LPASS(Low Power Audio Subsystem) RX Macro audio codec8 9maintainers:10  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>11 12properties:13  compatible:14    oneOf:15      - enum:16          - qcom,sc7280-lpass-rx-macro17          - qcom,sm8250-lpass-rx-macro18          - qcom,sm8450-lpass-rx-macro19          - qcom,sm8550-lpass-rx-macro20          - qcom,sc8280xp-lpass-rx-macro21      - items:22          - enum:23              - qcom,sm8650-lpass-rx-macro24              - qcom,x1e80100-lpass-rx-macro25          - const: qcom,sm8550-lpass-rx-macro26 27  reg:28    maxItems: 129 30  "#sound-dai-cells":31    const: 132 33  '#clock-cells':34    const: 035 36  clocks:37    minItems: 338    maxItems: 539 40  clock-names:41    minItems: 342    maxItems: 543 44  clock-output-names:45    maxItems: 146 47  power-domains:48    maxItems: 249 50  power-domain-names:51    items:52      - const: macro53      - const: dcodec54 55required:56  - compatible57  - reg58  - "#sound-dai-cells"59 60allOf:61  - $ref: dai-common.yaml#62  - if:63      properties:64        compatible:65          enum:66            - qcom,sc7280-lpass-rx-macro67    then:68      properties:69        clock-names:70          oneOf:71            - items:   # for ADSP based platforms72                - const: mclk73                - const: npl74                - const: macro75                - const: dcodec76                - const: fsgen77            - items:   # for ADSP bypass based platforms78                - const: mclk79                - const: npl80                - const: fsgen81 82  - if:83      properties:84        compatible:85          enum:86            - qcom,sc8280xp-lpass-rx-macro87            - qcom,sm8250-lpass-rx-macro88            - qcom,sm8450-lpass-rx-macro89    then:90      properties:91        clocks:92          minItems: 593          maxItems: 594        clock-names:95          items:96            - const: mclk97            - const: npl98            - const: macro99            - const: dcodec100            - const: fsgen101 102  - if:103      properties:104        compatible:105          contains:106            enum:107              - qcom,sm8550-lpass-rx-macro108    then:109      properties:110        clocks:111          minItems: 4112          maxItems: 4113        clock-names:114          items:115            - const: mclk116            - const: macro117            - const: dcodec118            - const: fsgen119 120unevaluatedProperties: false121 122examples:123  - |124    #include <dt-bindings/sound/qcom,q6afe.h>125    codec@3200000 {126      compatible = "qcom,sm8250-lpass-rx-macro";127      reg = <0x3200000 0x1000>;128      #sound-dai-cells = <1>;129      #clock-cells = <0>;130      clocks = <&audiocc 0>,131               <&audiocc 1>,132               <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,133               <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,134               <&vamacro>;135      clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";136      clock-output-names = "mclk";137    };138