202 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/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 driver8 9maintainers:10 - Jiaxin Yu <jiaxin.yu@mediatek.com>11 12description:13 This binding describes the MT8186 sound card.14 15allOf:16 - $ref: sound-card-common.yaml#17 18properties:19 compatible:20 enum:21 - mediatek,mt8186-mt6366-rt1019-rt5682s-sound22 - mediatek,mt8186-mt6366-rt5682s-max98360-sound23 - mediatek,mt8186-mt6366-rt5650-sound24 25 audio-routing:26 $ref: /schemas/types.yaml#/definitions/non-unique-string-array27 description:28 A list of the connections between audio components. Each entry is a29 pair of strings, the first being the connection's sink, the second30 being the connection's source.31 Valid names could be the input or output widgets of audio components,32 power supplies, MicBias of codec and the software switch.33 minItems: 234 items:35 enum:36 # Sinks37 - HDMI138 - Headphone39 - IN1P40 - IN1N41 - Line Out42 - Speakers43 44 # Sources45 - Headset Mic46 - HPOL47 - HPOR48 - Speaker49 - SPOL50 - SPOR51 - TX52 53 mediatek,platform:54 $ref: /schemas/types.yaml#/definitions/phandle55 description: The phandle of MT8186 ASoC platform.56 57 dmic-gpios:58 maxItems: 159 description:60 dmic-gpios optional prop for switching between two DMICs.61 Ex, the GPIO can control a MUX HW component to select62 dmic clk and data form a Front or Rear dmic.63 64 headset-codec:65 type: object66 deprecated: true67 additionalProperties: false68 properties:69 sound-dai:70 maxItems: 171 required:72 - sound-dai73 74 playback-codecs:75 type: object76 deprecated: true77 additionalProperties: false78 properties:79 sound-dai:80 items:81 - description: phandle of dp codec82 - description: phandle of l channel speaker codec83 - description: phandle of r channel speaker codec84 minItems: 285 required:86 - sound-dai87 88 mediatek,adsp:89 $ref: /schemas/types.yaml#/definitions/phandle90 description: The phandle of MT8186 ADSP platform.91 92 mediatek,dai-link:93 $ref: /schemas/types.yaml#/definitions/string-array94 description:95 A list of the desired dai-links in the sound card. Each entry is a96 name defined in the machine driver.97 98patternProperties:99 ".*-dai-link$":100 type: object101 additionalProperties: false102 description:103 Container for dai-link level properties and CODEC sub-nodes.104 105 properties:106 link-name:107 description: Indicates dai-link name and PCM stream name108 enum: [ I2S0, I2S1, I2S2, I2S3 ]109 110 codec:111 description: Holds subnode which indicates codec dai.112 type: object113 additionalProperties: false114 properties:115 sound-dai:116 minItems: 1117 maxItems: 2118 required:119 - sound-dai120 121 dai-format:122 description: audio format123 enum: [ i2s, right_j, left_j, dsp_a, dsp_b ]124 125 mediatek,clk-provider:126 $ref: /schemas/types.yaml#/definitions/string127 description: Indicates dai-link clock master.128 enum: [ cpu, codec ]129 130 required:131 - link-name132 133unevaluatedProperties: false134 135required:136 - compatible137 - mediatek,platform138 139# Disallow legacy properties if xxx-dai-link nodes are specified140if:141 not:142 patternProperties:143 ".*-dai-link$": false144then:145 properties:146 headset-codec: false147 speaker-codecs: false148 149examples:150 - |151 #include <dt-bindings/gpio/gpio.h>152 153 sound: mt8186-sound {154 compatible = "mediatek,mt8186-mt6366-rt1019-rt5682s-sound";155 model = "mt8186_rt1019_rt5682s";156 pinctrl-names = "aud_clk_mosi_off",157 "aud_clk_mosi_on",158 "aud_gpio_dmic_sec";159 pinctrl-0 = <&aud_clk_mosi_off>;160 pinctrl-1 = <&aud_clk_mosi_on>;161 pinctrl-2 = <&aud_gpio_dmic_sec>;162 mediatek,platform = <&afe>;163 164 dmic-gpios = <&pio 23 GPIO_ACTIVE_HIGH>;165 166 audio-routing =167 "Headphone", "HPOL",168 "Headphone", "HPOR",169 "IN1P", "Headset Mic",170 "Speakers", "Speaker",171 "HDMI1", "TX";172 173 hs-playback-dai-link {174 link-name = "I2S0";175 dai-format = "i2s";176 mediatek,clk-provider = "cpu";177 codec {178 sound-dai = <&rt5682s 0>;179 };180 };181 182 hs-capture-dai-link {183 link-name = "I2S1";184 dai-format = "i2s";185 mediatek,clk-provider = "cpu";186 codec {187 sound-dai = <&rt5682s 0>;188 };189 };190 191 spk-hdmi-playback-dai-link {192 link-name = "I2S3";193 dai-format = "i2s";194 mediatek,clk-provider = "cpu";195 codec {196 sound-dai = <&it6505dptx>, <&rt1019p>;197 };198 };199 };200 201...202