xref: /openbmc/linux/Documentation/devicetree/bindings/sound/google,sc7280-herobrine.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
17bd43148SSrinivasa Rao Mandadapu# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
27bd43148SSrinivasa Rao Mandadapu%YAML 1.2
37bd43148SSrinivasa Rao Mandadapu---
47bd43148SSrinivasa Rao Mandadapu$id: http://devicetree.org/schemas/sound/google,sc7280-herobrine.yaml#
57bd43148SSrinivasa Rao Mandadapu$schema: http://devicetree.org/meta-schemas/core.yaml#
67bd43148SSrinivasa Rao Mandadapu
77bd43148SSrinivasa Rao Mandadaputitle: Google SC7280-Herobrine ASoC sound card driver
87bd43148SSrinivasa Rao Mandadapu
97bd43148SSrinivasa Rao Mandadapumaintainers:
107bd43148SSrinivasa Rao Mandadapu  - Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
117bd43148SSrinivasa Rao Mandadapu  - Judy Hsiao <judyhsiao@chromium.org>
127bd43148SSrinivasa Rao Mandadapu
137bd43148SSrinivasa Rao Mandadapudescription:
147bd43148SSrinivasa Rao Mandadapu  This binding describes the SC7280 sound card which uses LPASS for audio.
157bd43148SSrinivasa Rao Mandadapu
16*a06ce12eSKrzysztof KozlowskiallOf:
17*a06ce12eSKrzysztof Kozlowski  - $ref: sound-card-common.yaml#
18*a06ce12eSKrzysztof Kozlowski
197bd43148SSrinivasa Rao Mandadapuproperties:
207bd43148SSrinivasa Rao Mandadapu  compatible:
217bd43148SSrinivasa Rao Mandadapu    enum:
227bd43148SSrinivasa Rao Mandadapu      - google,sc7280-herobrine
237bd43148SSrinivasa Rao Mandadapu
247bd43148SSrinivasa Rao Mandadapu  "#address-cells":
257bd43148SSrinivasa Rao Mandadapu    const: 1
267bd43148SSrinivasa Rao Mandadapu
277bd43148SSrinivasa Rao Mandadapu  "#size-cells":
287bd43148SSrinivasa Rao Mandadapu    const: 0
297bd43148SSrinivasa Rao Mandadapu
307bd43148SSrinivasa Rao MandadapupatternProperties:
317bd43148SSrinivasa Rao Mandadapu  "^dai-link@[0-9a-f]$":
327bd43148SSrinivasa Rao Mandadapu    description:
337bd43148SSrinivasa Rao Mandadapu      Each subnode represents a dai link. Subnodes of each dai links would be
347bd43148SSrinivasa Rao Mandadapu      cpu/codec dais.
357bd43148SSrinivasa Rao Mandadapu
367bd43148SSrinivasa Rao Mandadapu    type: object
377bd43148SSrinivasa Rao Mandadapu
387bd43148SSrinivasa Rao Mandadapu    properties:
397bd43148SSrinivasa Rao Mandadapu      link-name:
407bd43148SSrinivasa Rao Mandadapu        description: Indicates dai-link name and PCM stream name.
417bd43148SSrinivasa Rao Mandadapu        $ref: /schemas/types.yaml#/definitions/string
427bd43148SSrinivasa Rao Mandadapu        maxItems: 1
437bd43148SSrinivasa Rao Mandadapu
447bd43148SSrinivasa Rao Mandadapu      reg:
457bd43148SSrinivasa Rao Mandadapu        maxItems: 1
467bd43148SSrinivasa Rao Mandadapu        description: dai link address.
477bd43148SSrinivasa Rao Mandadapu
487bd43148SSrinivasa Rao Mandadapu      cpu:
497bd43148SSrinivasa Rao Mandadapu        description: Holds subnode which indicates cpu dai.
507bd43148SSrinivasa Rao Mandadapu        type: object
517bd43148SSrinivasa Rao Mandadapu        properties:
527bd43148SSrinivasa Rao Mandadapu          sound-dai: true
537bd43148SSrinivasa Rao Mandadapu
547bd43148SSrinivasa Rao Mandadapu        required:
557bd43148SSrinivasa Rao Mandadapu          - sound-dai
567bd43148SSrinivasa Rao Mandadapu
577bd43148SSrinivasa Rao Mandadapu        additionalProperties: false
587bd43148SSrinivasa Rao Mandadapu
597bd43148SSrinivasa Rao Mandadapu      codec:
607bd43148SSrinivasa Rao Mandadapu        description: Holds subnode which indicates codec dai.
617bd43148SSrinivasa Rao Mandadapu        type: object
627bd43148SSrinivasa Rao Mandadapu        properties:
637bd43148SSrinivasa Rao Mandadapu          sound-dai: true
647bd43148SSrinivasa Rao Mandadapu
657bd43148SSrinivasa Rao Mandadapu        required:
667bd43148SSrinivasa Rao Mandadapu          - sound-dai
677bd43148SSrinivasa Rao Mandadapu
687bd43148SSrinivasa Rao Mandadapu        additionalProperties: false
697bd43148SSrinivasa Rao Mandadapu
70ec900972SSrinivasa Rao Mandadapu      platform:
71ec900972SSrinivasa Rao Mandadapu        description: Holds subnode which includes the phandle of q6apm platform device.
72ec900972SSrinivasa Rao Mandadapu        type: object
73ec900972SSrinivasa Rao Mandadapu        properties:
74ec900972SSrinivasa Rao Mandadapu          sound-dai:
75ec900972SSrinivasa Rao Mandadapu            maxItems: 1
76ec900972SSrinivasa Rao Mandadapu
77ec900972SSrinivasa Rao Mandadapu        required:
78ec900972SSrinivasa Rao Mandadapu          - sound-dai
79ec900972SSrinivasa Rao Mandadapu
80ec900972SSrinivasa Rao Mandadapu        additionalProperties: false
81ec900972SSrinivasa Rao Mandadapu
827bd43148SSrinivasa Rao Mandadapu    required:
837bd43148SSrinivasa Rao Mandadapu      - link-name
847bd43148SSrinivasa Rao Mandadapu      - cpu
857bd43148SSrinivasa Rao Mandadapu      - codec
867bd43148SSrinivasa Rao Mandadapu      - reg
877bd43148SSrinivasa Rao Mandadapu
887bd43148SSrinivasa Rao Mandadapu    additionalProperties: false
897bd43148SSrinivasa Rao Mandadapu
907bd43148SSrinivasa Rao Mandadapurequired:
917bd43148SSrinivasa Rao Mandadapu  - compatible
927bd43148SSrinivasa Rao Mandadapu  - "#address-cells"
937bd43148SSrinivasa Rao Mandadapu  - "#size-cells"
947bd43148SSrinivasa Rao Mandadapu
95*a06ce12eSKrzysztof KozlowskiunevaluatedProperties: false
967bd43148SSrinivasa Rao Mandadapu
977bd43148SSrinivasa Rao Mandadapuexamples:
987bd43148SSrinivasa Rao Mandadapu
997bd43148SSrinivasa Rao Mandadapu  - |
1007bd43148SSrinivasa Rao Mandadapu    #include <dt-bindings/sound/qcom,lpass.h>
1017bd43148SSrinivasa Rao Mandadapu    sound {
1027bd43148SSrinivasa Rao Mandadapu        compatible = "google,sc7280-herobrine";
1037bd43148SSrinivasa Rao Mandadapu        model = "sc7280-wcd938x-max98360a-4dmic";
1047bd43148SSrinivasa Rao Mandadapu
1057bd43148SSrinivasa Rao Mandadapu        audio-routing =
1067bd43148SSrinivasa Rao Mandadapu            "IN1_HPHL", "HPHL_OUT",
1077bd43148SSrinivasa Rao Mandadapu            "IN2_HPHR", "HPHR_OUT",
1087bd43148SSrinivasa Rao Mandadapu            "AMIC1", "MIC BIAS1",
1097bd43148SSrinivasa Rao Mandadapu            "AMIC2", "MIC BIAS2",
1107bd43148SSrinivasa Rao Mandadapu            "VA DMIC0", "MIC BIAS3",
1117bd43148SSrinivasa Rao Mandadapu            "VA DMIC1", "MIC BIAS3",
1127bd43148SSrinivasa Rao Mandadapu            "VA DMIC2", "MIC BIAS4",
1137bd43148SSrinivasa Rao Mandadapu            "VA DMIC3", "MIC BIAS4",
1147bd43148SSrinivasa Rao Mandadapu            "TX SWR_ADC0", "ADC1_OUTPUT",
1157bd43148SSrinivasa Rao Mandadapu            "TX SWR_ADC1", "ADC2_OUTPUT",
1167bd43148SSrinivasa Rao Mandadapu            "TX SWR_ADC2", "ADC3_OUTPUT",
1177bd43148SSrinivasa Rao Mandadapu            "TX SWR_DMIC0", "DMIC1_OUTPUT",
1187bd43148SSrinivasa Rao Mandadapu            "TX SWR_DMIC1", "DMIC2_OUTPUT",
1197bd43148SSrinivasa Rao Mandadapu            "TX SWR_DMIC2", "DMIC3_OUTPUT",
1207bd43148SSrinivasa Rao Mandadapu            "TX SWR_DMIC3", "DMIC4_OUTPUT";
1217bd43148SSrinivasa Rao Mandadapu
1227bd43148SSrinivasa Rao Mandadapu        #address-cells = <1>;
1237bd43148SSrinivasa Rao Mandadapu        #size-cells = <0>;
1247bd43148SSrinivasa Rao Mandadapu
1257bd43148SSrinivasa Rao Mandadapu        dai-link@0 {
1267bd43148SSrinivasa Rao Mandadapu            link-name = "WCD Playback";
1277bd43148SSrinivasa Rao Mandadapu            reg = <LPASS_CDC_DMA_RX0>;
1287bd43148SSrinivasa Rao Mandadapu            cpu {
1297bd43148SSrinivasa Rao Mandadapu                sound-dai = <&lpass_cpu LPASS_CDC_DMA_RX0>;
1307bd43148SSrinivasa Rao Mandadapu            };
1317bd43148SSrinivasa Rao Mandadapu
1327bd43148SSrinivasa Rao Mandadapu            codec {
1337bd43148SSrinivasa Rao Mandadapu                sound-dai = <&wcd938x 0>, <&swr0 0>, <&rxmacro 0>;
1347bd43148SSrinivasa Rao Mandadapu            };
1357bd43148SSrinivasa Rao Mandadapu        };
1367bd43148SSrinivasa Rao Mandadapu        dai-link@1 {
1377bd43148SSrinivasa Rao Mandadapu            link-name = "WCD Capture";
1387bd43148SSrinivasa Rao Mandadapu            reg = <LPASS_CDC_DMA_TX3>;
1397bd43148SSrinivasa Rao Mandadapu            cpu {
1407bd43148SSrinivasa Rao Mandadapu                sound-dai = <&lpass_cpu LPASS_CDC_DMA_TX3>;
1417bd43148SSrinivasa Rao Mandadapu            };
1427bd43148SSrinivasa Rao Mandadapu
1437bd43148SSrinivasa Rao Mandadapu            codec {
1447bd43148SSrinivasa Rao Mandadapu                sound-dai = <&wcd938x 1>, <&swr1 0>, <&txmacro 0>;
1457bd43148SSrinivasa Rao Mandadapu            };
1467bd43148SSrinivasa Rao Mandadapu        };
1477bd43148SSrinivasa Rao Mandadapu
1487bd43148SSrinivasa Rao Mandadapu        dai-link@2 {
1497bd43148SSrinivasa Rao Mandadapu            link-name = "MI2S Playback";
1507bd43148SSrinivasa Rao Mandadapu            reg = <MI2S_SECONDARY>;
1517bd43148SSrinivasa Rao Mandadapu            cpu {
1527bd43148SSrinivasa Rao Mandadapu                sound-dai = <&lpass_cpu MI2S_SECONDARY>;
1537bd43148SSrinivasa Rao Mandadapu            };
1547bd43148SSrinivasa Rao Mandadapu
1557bd43148SSrinivasa Rao Mandadapu            codec {
1567bd43148SSrinivasa Rao Mandadapu                sound-dai = <&max98360a>;
1577bd43148SSrinivasa Rao Mandadapu            };
1587bd43148SSrinivasa Rao Mandadapu        };
1597bd43148SSrinivasa Rao Mandadapu
1607bd43148SSrinivasa Rao Mandadapu        dai-link@3 {
1617bd43148SSrinivasa Rao Mandadapu            link-name = "DMIC Capture";
1627bd43148SSrinivasa Rao Mandadapu            reg = <LPASS_CDC_DMA_VA_TX0>;
1637bd43148SSrinivasa Rao Mandadapu            cpu {
1647bd43148SSrinivasa Rao Mandadapu                sound-dai = <&lpass_cpu LPASS_CDC_DMA_VA_TX0>;
1657bd43148SSrinivasa Rao Mandadapu            };
1667bd43148SSrinivasa Rao Mandadapu
1677bd43148SSrinivasa Rao Mandadapu            codec {
1687bd43148SSrinivasa Rao Mandadapu                sound-dai = <&vamacro 0>;
1697bd43148SSrinivasa Rao Mandadapu            };
1707bd43148SSrinivasa Rao Mandadapu        };
1717bd43148SSrinivasa Rao Mandadapu
1727bd43148SSrinivasa Rao Mandadapu        dai-link@5 {
1737bd43148SSrinivasa Rao Mandadapu            link-name = "DP Playback";
1747bd43148SSrinivasa Rao Mandadapu            reg = <LPASS_DP_RX>;
1757bd43148SSrinivasa Rao Mandadapu            cpu {
1767bd43148SSrinivasa Rao Mandadapu                sound-dai = <&lpass_cpu LPASS_DP_RX>;
1777bd43148SSrinivasa Rao Mandadapu            };
1787bd43148SSrinivasa Rao Mandadapu
1797bd43148SSrinivasa Rao Mandadapu            codec {
1807bd43148SSrinivasa Rao Mandadapu                sound-dai = <&mdss_dp>;
1817bd43148SSrinivasa Rao Mandadapu            };
1827bd43148SSrinivasa Rao Mandadapu        };
1837bd43148SSrinivasa Rao Mandadapu    };
184