xref: /linux/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml (revision 3fd6c59042dbba50391e30862beac979491145fe)
1765c3759SSrinivas Kandagatla# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2765c3759SSrinivas Kandagatla%YAML 1.2
3765c3759SSrinivas Kandagatla---
4765c3759SSrinivas Kandagatla$id: http://devicetree.org/schemas/sound/qcom,sm8250.yaml#
5765c3759SSrinivas Kandagatla$schema: http://devicetree.org/meta-schemas/core.yaml#
6765c3759SSrinivas Kandagatla
7b7875d88SStephan Gerholdtitle: Qualcomm Technologies Inc. ASoC sound card drivers
8765c3759SSrinivas Kandagatla
9765c3759SSrinivas Kandagatlamaintainers:
10765c3759SSrinivas Kandagatla  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11765c3759SSrinivas Kandagatla
12765c3759SSrinivas Kandagatladescription:
13b7875d88SStephan Gerhold  This bindings describes Qualcomm SoC based sound cards
14765c3759SSrinivas Kandagatla  which uses LPASS internal codec for audio.
15765c3759SSrinivas Kandagatla
16765c3759SSrinivas Kandagatlaproperties:
17765c3759SSrinivas Kandagatla  compatible:
18b4090b7cSKrzysztof Kozlowski    oneOf:
19b4090b7cSKrzysztof Kozlowski      - items:
20b4090b7cSKrzysztof Kozlowski          - enum:
2150791dcbSKrzysztof Kozlowski              - lenovo,yoga-c630-sndcard
2250791dcbSKrzysztof Kozlowski              - qcom,db845c-sndcard
23b4090b7cSKrzysztof Kozlowski          - const: qcom,sdm845-sndcard
24c239b793SKrzysztof Kozlowski      - items:
25c239b793SKrzysztof Kozlowski          - enum:
26c239b793SKrzysztof Kozlowski              - qcom,sm8550-sndcard
27773df207SNeil Armstrong              - qcom,sm8650-sndcard
28c239b793SKrzysztof Kozlowski              - qcom,sm8750-sndcard
29b4090b7cSKrzysztof Kozlowski          - const: qcom,sm8450-sndcard
30*3cbda25eSRayyan Ansari      - enum:
31c64c4e3fSMohammad Rafi Shaik          - qcom,apq8096-sndcard
32c64c4e3fSMohammad Rafi Shaik          - qcom,qcm6490-idp-sndcard
33e4f10cc2SSrinivas Kandagatla          - qcom,qcs6490-rb3gen2-sndcard
345443d186SNikita Travkin          - qcom,qrb4210-rb2-sndcard
35f19097ccSSrinivas Kandagatla          - qcom,qrb5165-rb5-sndcard
3650791dcbSKrzysztof Kozlowski          - qcom,sc7180-qdsp6-sndcard
371c3ac086SRob Herring          - qcom,sc8280xp-sndcard
38f19097ccSSrinivas Kandagatla          - qcom,sdm845-sndcard
39337d93b4SKrzysztof Kozlowski          - qcom,sm8250-sndcard
40765c3759SSrinivas Kandagatla          - qcom,sm8450-sndcard
41765c3759SSrinivas Kandagatla          - qcom,x1e80100-sndcard
42765c3759SSrinivas Kandagatla
43765c3759SSrinivas Kandagatla  audio-routing:
44765c3759SSrinivas Kandagatla    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
45765c3759SSrinivas Kandagatla    description:
46765c3759SSrinivas Kandagatla      A list of the connections between audio components. Each entry is a
47765c3759SSrinivas Kandagatla      pair of strings, the first being the connection's sink, the second
48765c3759SSrinivas Kandagatla      being the connection's source. Valid names could be power supplies,
491875ae76SStephan Gerhold      MicBias of codec and the jacks on the board.
501875ae76SStephan Gerhold
511875ae76SStephan Gerhold  aux-devs:
521875ae76SStephan Gerhold    $ref: /schemas/types.yaml#/definitions/phandle-array
531875ae76SStephan Gerhold    description: |
541875ae76SStephan Gerhold      List of phandles pointing to auxiliary devices, such
55765c3759SSrinivas Kandagatla      as amplifiers, to be added to the sound card.
56765c3759SSrinivas Kandagatla
57765c3759SSrinivas Kandagatla  model:
58765c3759SSrinivas Kandagatla    $ref: /schemas/types.yaml#/definitions/string
59765c3759SSrinivas Kandagatla    description: User visible long sound card name
60765c3759SSrinivas Kandagatla
61765c3759SSrinivas KandagatlapatternProperties:
62765c3759SSrinivas Kandagatla  ".*-dai-link$":
63765c3759SSrinivas Kandagatla    description:
64765c3759SSrinivas Kandagatla      Each subnode represents a dai link. Subnodes of each dai links would be
65765c3759SSrinivas Kandagatla      cpu/codec dais.
66765c3759SSrinivas Kandagatla
67765c3759SSrinivas Kandagatla    type: object
68765c3759SSrinivas Kandagatla
69765c3759SSrinivas Kandagatla    properties:
70765c3759SSrinivas Kandagatla      link-name:
71765c3759SSrinivas Kandagatla        description: Indicates dai-link name and PCM stream name.
72765c3759SSrinivas Kandagatla        $ref: /schemas/types.yaml#/definitions/string
73765c3759SSrinivas Kandagatla        maxItems: 1
74765c3759SSrinivas Kandagatla
75765c3759SSrinivas Kandagatla      cpu:
769e10a1deSRob Herring        description: Holds subnode which indicates cpu dai.
779e10a1deSRob Herring        type: object
78765c3759SSrinivas Kandagatla        additionalProperties: false
7997709d36SRob Herring
8097709d36SRob Herring        properties:
81765c3759SSrinivas Kandagatla          sound-dai:
82765c3759SSrinivas Kandagatla            maxItems: 1
83765c3759SSrinivas Kandagatla
84765c3759SSrinivas Kandagatla      platform:
859e10a1deSRob Herring        description: Holds subnode which indicates platform dai.
869e10a1deSRob Herring        type: object
87765c3759SSrinivas Kandagatla        additionalProperties: false
8897709d36SRob Herring
8997709d36SRob Herring        properties:
90765c3759SSrinivas Kandagatla          sound-dai:
91765c3759SSrinivas Kandagatla            maxItems: 1
92765c3759SSrinivas Kandagatla
93765c3759SSrinivas Kandagatla      codec:
949e10a1deSRob Herring        description: Holds subnode which indicates codec dai.
959e10a1deSRob Herring        type: object
96765c3759SSrinivas Kandagatla        additionalProperties: false
9797709d36SRob Herring
9897709d36SRob Herring        properties:
99d4a00d16SKrzysztof Kozlowski          sound-dai:
100765c3759SSrinivas Kandagatla            minItems: 1
101765c3759SSrinivas Kandagatla            maxItems: 8
102765c3759SSrinivas Kandagatla
103765c3759SSrinivas Kandagatla    required:
104765c3759SSrinivas Kandagatla      - link-name
105765c3759SSrinivas Kandagatla      - cpu
106765c3759SSrinivas Kandagatla
107765c3759SSrinivas Kandagatla    additionalProperties: false
108765c3759SSrinivas Kandagatla
109765c3759SSrinivas Kandagatlarequired:
110765c3759SSrinivas Kandagatla  - compatible
111765c3759SSrinivas Kandagatla  - model
112765c3759SSrinivas Kandagatla
113765c3759SSrinivas KandagatlaadditionalProperties: false
114765c3759SSrinivas Kandagatla
115765c3759SSrinivas Kandagatlaexamples:
116765c3759SSrinivas Kandagatla
117765c3759SSrinivas Kandagatla  - |
118765c3759SSrinivas Kandagatla    #include <dt-bindings/sound/qcom,q6afe.h>
119a889583aSSrinivas Kandagatla    #include <dt-bindings/sound/qcom,q6asm.h>
120765c3759SSrinivas Kandagatla    sound {
121765c3759SSrinivas Kandagatla        compatible = "qcom,qrb5165-rb5-sndcard";
122765c3759SSrinivas Kandagatla        model = "Qualcomm-qrb5165-RB5-WSA8815-Speakers-DMIC0";
123765c3759SSrinivas Kandagatla        audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
124c55676ecSStephan Gerhold                    "SpkrRight IN", "WSA_SPK2 OUT",
125765c3759SSrinivas Kandagatla                    "VA DMIC0", "vdd-micb",
126765c3759SSrinivas Kandagatla                    "VA DMIC1", "vdd-micb";
127765c3759SSrinivas Kandagatla
128765c3759SSrinivas Kandagatla        mm1-dai-link {
129765c3759SSrinivas Kandagatla            link-name = "MultiMedia0";
130765c3759SSrinivas Kandagatla            cpu {
131765c3759SSrinivas Kandagatla                sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
132765c3759SSrinivas Kandagatla            };
133765c3759SSrinivas Kandagatla        };
134765c3759SSrinivas Kandagatla
135765c3759SSrinivas Kandagatla        mm2-dai-link {
136765c3759SSrinivas Kandagatla            link-name = "MultiMedia2";
137765c3759SSrinivas Kandagatla            cpu {
138765c3759SSrinivas Kandagatla                sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
139765c3759SSrinivas Kandagatla            };
140765c3759SSrinivas Kandagatla        };
141765c3759SSrinivas Kandagatla
142765c3759SSrinivas Kandagatla        mm3-dai-link {
143765c3759SSrinivas Kandagatla            link-name = "MultiMedia3";
144765c3759SSrinivas Kandagatla            cpu {
145765c3759SSrinivas Kandagatla                sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
146765c3759SSrinivas Kandagatla            };
147765c3759SSrinivas Kandagatla        };
148765c3759SSrinivas Kandagatla
149765c3759SSrinivas Kandagatla        hdmi-dai-link {
150765c3759SSrinivas Kandagatla            link-name = "HDMI Playback";
151765c3759SSrinivas Kandagatla            cpu {
152765c3759SSrinivas Kandagatla                sound-dai = <&q6afedai TERTIARY_MI2S_RX>;
153765c3759SSrinivas Kandagatla            };
154765c3759SSrinivas Kandagatla
155765c3759SSrinivas Kandagatla            platform {
156765c3759SSrinivas Kandagatla                sound-dai = <&q6routing>;
157765c3759SSrinivas Kandagatla            };
158765c3759SSrinivas Kandagatla
159765c3759SSrinivas Kandagatla            codec {
160765c3759SSrinivas Kandagatla                sound-dai = <&lt9611_codec 0>;
161765c3759SSrinivas Kandagatla            };
162765c3759SSrinivas Kandagatla        };
163765c3759SSrinivas Kandagatla
164765c3759SSrinivas Kandagatla        wsa-dai-link {
165765c3759SSrinivas Kandagatla            link-name = "WSA Playback";
166765c3759SSrinivas Kandagatla            cpu {
167765c3759SSrinivas Kandagatla                sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>;
168765c3759SSrinivas Kandagatla            };
169765c3759SSrinivas Kandagatla
170765c3759SSrinivas Kandagatla            platform {
171765c3759SSrinivas Kandagatla                sound-dai = <&q6routing>;
172765c3759SSrinivas Kandagatla            };
173765c3759SSrinivas Kandagatla
174765c3759SSrinivas Kandagatla            codec {
175765c3759SSrinivas Kandagatla                sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro>;
176765c3759SSrinivas Kandagatla            };
177765c3759SSrinivas Kandagatla        };
178765c3759SSrinivas Kandagatla
179765c3759SSrinivas Kandagatla        va-dai-link {
180765c3759SSrinivas Kandagatla            link-name = "VA Capture";
181765c3759SSrinivas Kandagatla            cpu {
182765c3759SSrinivas Kandagatla                sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>;
183765c3759SSrinivas Kandagatla            };
184765c3759SSrinivas Kandagatla
185765c3759SSrinivas Kandagatla            platform {
186765c3759SSrinivas Kandagatla                sound-dai = <&q6routing>;
187765c3759SSrinivas Kandagatla            };
188765c3759SSrinivas Kandagatla
189765c3759SSrinivas Kandagatla            codec {
190765c3759SSrinivas Kandagatla                sound-dai = <&vamacro 0>;
191765c3759SSrinivas Kandagatla            };
192        };
193    };
194