1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/mt8186-mt6366-rt1019-rt5682s.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Mediatek MT8186 with MT6366, RT1019 and RT5682S ASoC sound card driver
8
9maintainers:
10  - Jiaxin Yu <jiaxin.yu@mediatek.com>
11
12description:
13  This binding describes the MT8186 sound card.
14
15properties:
16  compatible:
17    enum:
18      - mediatek,mt8186-mt6366-rt1019-rt5682s-sound
19      - mediatek,mt8186-mt6366-rt5682s-max98360-sound
20
21  mediatek,platform:
22    $ref: "/schemas/types.yaml#/definitions/phandle"
23    description: The phandle of MT8186 ASoC platform.
24
25  dmic-gpios:
26    maxItems: 1
27    description:
28      dmic-gpios optional prop for switching between two DMICs.
29      Ex, the GPIO can control a MUX HW component to select
30      dmic clk and data form a Front or Rear dmic.
31
32  headset-codec:
33    type: object
34    additionalProperties: false
35    properties:
36      sound-dai:
37        maxItems: 1
38    required:
39      - sound-dai
40
41  playback-codecs:
42    type: object
43    additionalProperties: false
44    properties:
45      sound-dai:
46        items:
47          - description: phandle of dp codec
48          - description: phandle of l channel speaker codec
49          - description: phandle of r channel speaker codec
50        minItems: 2
51    required:
52      - sound-dai
53
54  mediatek,adsp:
55    $ref: /schemas/types.yaml#/definitions/phandle
56    description: The phandle of MT8186 ADSP platform.
57
58  mediatek,dai-link:
59    $ref: /schemas/types.yaml#/definitions/string-array
60    description:
61      A list of the desired dai-links in the sound card. Each entry is a
62      name defined in the machine driver.
63
64additionalProperties: false
65
66required:
67  - compatible
68  - mediatek,platform
69  - headset-codec
70  - playback-codecs
71
72examples:
73  - |
74    #include <dt-bindings/gpio/gpio.h>
75
76    sound: mt8186-sound {
77        compatible = "mediatek,mt8186-mt6366-rt1019-rt5682s-sound";
78        mediatek,platform = <&afe>;
79        pinctrl-names = "aud_clk_mosi_off",
80                        "aud_clk_mosi_on",
81                        "aud_gpio_dmic_sec";
82        pinctrl-0 = <&aud_clk_mosi_off>;
83        pinctrl-1 = <&aud_clk_mosi_on>;
84        pinctrl-2 = <&aud_gpio_dmic_sec>;
85
86        dmic-gpios = <&pio 23 GPIO_ACTIVE_HIGH>;
87
88        headset-codec {
89            sound-dai = <&rt5682s>;
90        };
91
92        playback-codecs {
93             sound-dai = <&it6505dptx>,
94                         <&rt1019p>;
95        };
96    };
97
98...
99