brintos

brintos / linux-shallow public Read only

0
0
Text · 5.4 KiB · 6ad4515 Raw
206 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/qcom,apq8016-sbc-sndcard.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Qualcomm APQ8016 and similar sound cards8 9maintainers:10  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>11  - Stephan Gerhold <stephan@gerhold.net>12 13properties:14  compatible:15    enum:16      - qcom,apq8016-sbc-sndcard17      - qcom,msm8916-qdsp6-sndcard18 19  reg:20    items:21      - description: Microphone I/O mux register address22      - description: Speaker I/O mux register address23 24  reg-names:25    items:26      - const: mic-iomux27      - const: spkr-iomux28 29  audio-routing:30    $ref: /schemas/types.yaml#/definitions/non-unique-string-array31    description:32      A list of the connections between audio components. Each entry is a33      pair of strings, the first being the connection's sink, the second34      being the connection's source. Valid names could be power supplies,35      MicBias of codec and the jacks on the board.36 37  aux-devs:38    $ref: /schemas/types.yaml#/definitions/phandle-array39    description: |40      List of phandles pointing to auxiliary devices, such41      as amplifiers, to be added to the sound card.42 43  model:44    $ref: /schemas/types.yaml#/definitions/string45    description: User visible long sound card name46 47  pin-switches:48    description: List of widget names for which pin switches should be created.49    $ref: /schemas/types.yaml#/definitions/string-array50 51  widgets:52    description: User specified audio sound widgets.53    $ref: /schemas/types.yaml#/definitions/non-unique-string-array54 55patternProperties:56  ".*-dai-link$":57    description:58      Each subnode represents a dai link. Subnodes of each dai links would be59      cpu/codec dais.60 61    type: object62 63    properties:64      link-name:65        description: Indicates dai-link name and PCM stream name.66        $ref: /schemas/types.yaml#/definitions/string67        maxItems: 168 69      cpu:70        description: Holds subnode which indicates cpu dai.71        type: object72        additionalProperties: false73 74        properties:75          sound-dai:76            maxItems: 177 78      platform:79        description: Holds subnode which indicates platform dai.80        type: object81        additionalProperties: false82 83        properties:84          sound-dai:85            maxItems: 186 87      codec:88        description: Holds subnode which indicates codec dai.89        type: object90        additionalProperties: false91 92        properties:93          sound-dai:94            minItems: 195            maxItems: 896 97    required:98      - link-name99      - cpu100 101    additionalProperties: false102 103required:104  - compatible105  - reg106  - reg-names107  - model108 109additionalProperties: false110 111examples:112  - |113    #include <dt-bindings/sound/qcom,lpass.h>114    sound@7702000 {115        compatible = "qcom,apq8016-sbc-sndcard";116        reg = <0x07702000 0x4>, <0x07702004 0x4>;117        reg-names = "mic-iomux", "spkr-iomux";118 119        model = "DB410c";120        audio-routing =121            "AMIC2", "MIC BIAS Internal2",122            "AMIC3", "MIC BIAS External1";123 124        pinctrl-0 = <&cdc_pdm_lines_act &ext_sec_tlmm_lines_act &ext_mclk_tlmm_lines_act>;125        pinctrl-1 = <&cdc_pdm_lines_sus &ext_sec_tlmm_lines_sus &ext_mclk_tlmm_lines_sus>;126        pinctrl-names = "default", "sleep";127 128        quaternary-dai-link {129            link-name = "ADV7533";130            cpu {131                sound-dai = <&lpass MI2S_QUATERNARY>;132            };133            codec {134                sound-dai = <&adv_bridge 0>;135            };136        };137 138        primary-dai-link {139            link-name = "WCD";140            cpu {141                sound-dai = <&lpass MI2S_PRIMARY>;142            };143            codec {144                sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;145            };146        };147 148        tertiary-dai-link {149            link-name = "WCD-Capture";150            cpu {151                sound-dai = <&lpass MI2S_TERTIARY>;152            };153            codec {154                sound-dai = <&lpass_codec 1>, <&wcd_codec 1>;155            };156        };157    };158 159  - |160    #include <dt-bindings/sound/qcom,q6afe.h>161    #include <dt-bindings/sound/qcom,q6asm.h>162    sound@7702000 {163        compatible = "qcom,msm8916-qdsp6-sndcard";164        reg = <0x07702000 0x4>, <0x07702004 0x4>;165        reg-names = "mic-iomux", "spkr-iomux";166 167        model = "msm8916";168        widgets =169            "Speaker", "Speaker",170            "Headphone", "Headphones";171        pin-switches = "Speaker";172        audio-routing =173            "Speaker", "Speaker Amp OUT",174            "Speaker Amp IN", "HPH_R",175            "Headphones", "HPH_L",176            "Headphones", "HPH_R",177            "AMIC1", "MIC BIAS Internal1",178            "AMIC2", "MIC BIAS Internal2",179            "AMIC3", "MIC BIAS Internal3";180        aux-devs = <&speaker_amp>;181 182        pinctrl-names = "default", "sleep";183        pinctrl-0 = <&cdc_pdm_lines_act>;184        pinctrl-1 = <&cdc_pdm_lines_sus>;185 186        mm1-dai-link {187            link-name = "MultiMedia1";188            cpu {189                sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;190            };191        };192 193        primary-dai-link {194            link-name = "Primary MI2S";195            cpu {196                sound-dai = <&q6afedai PRIMARY_MI2S_RX>;197            };198            platform {199                sound-dai = <&q6routing>;200            };201            codec {202                sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;203            };204        };205    };206