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-da7219-max98357.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Mediatek MT8186 with MT6366, DA7219 and MAX98357 ASoC sound card driver 8 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-da7219-max98357-sound 22 23 audio-routing: 24 $ref: /schemas/types.yaml#/definitions/non-unique-string-array 25 description: 26 A list of the connections between audio components. Each entry is a 27 pair of strings, the first being the connection's sink, the second 28 being the connection's source. 29 Valid names could be the input or output widgets of audio components, 30 power supplies, MicBias of codec and the software switch. 31 minItems: 2 32 items: 33 enum: 34 # Sinks 35 - HDMI1 36 - Headphones 37 - Line Out 38 - MIC 39 - Speakers 40 41 # Sources 42 - Headset Mic 43 - HPL 44 - HPR 45 - Speaker 46 - TX 47 48 mediatek,platform: 49 $ref: /schemas/types.yaml#/definitions/phandle 50 description: The phandle of MT8186 ASoC platform. 51 52 headset-codec: 53 type: object 54 deprecated: true 55 additionalProperties: false 56 properties: 57 sound-dai: 58 maxItems: 1 59 required: 60 - sound-dai 61 62 playback-codecs: 63 type: object 64 deprecated: true 65 additionalProperties: false 66 properties: 67 sound-dai: 68 items: 69 - description: phandle of dp codec 70 - description: phandle of l channel speaker codec 71 - description: phandle of r channel speaker codec 72 minItems: 2 73 required: 74 - sound-dai 75 76 mediatek,adsp: 77 $ref: /schemas/types.yaml#/definitions/phandle 78 description: The phandle of MT8186 ADSP platform. 79 80 mediatek,dai-link: 81 $ref: /schemas/types.yaml#/definitions/string-array 82 description: 83 A list of the desired dai-links in the sound card. Each entry is a 84 name defined in the machine driver. 85 86patternProperties: 87 ".*-dai-link$": 88 type: object 89 additionalProperties: false 90 description: 91 Container for dai-link level properties and CODEC sub-nodes. 92 93 properties: 94 link-name: 95 description: Indicates dai-link name and PCM stream name 96 items: 97 enum: 98 - I2S0 99 - I2S1 100 - I2S2 101 - I2S3 102 103 codec: 104 description: Holds subnode which indicates codec dai. 105 type: object 106 additionalProperties: false 107 properties: 108 sound-dai: 109 minItems: 1 110 maxItems: 2 111 required: 112 - sound-dai 113 114 dai-format: 115 description: audio format 116 items: 117 enum: 118 - i2s 119 - right_j 120 - left_j 121 - dsp_a 122 - dsp_b 123 124 mediatek,clk-provider: 125 $ref: /schemas/types.yaml#/definitions/string 126 description: Indicates dai-link clock master. 127 items: 128 enum: 129 - cpu 130 - codec 131 132 required: 133 - link-name 134 135unevaluatedProperties: false 136 137required: 138 - compatible 139 - mediatek,platform 140 141# Disallow legacy properties if xxx-dai-link nodes are specified 142if: 143 not: 144 patternProperties: 145 ".*-dai-link$": false 146then: 147 properties: 148 headset-codec: false 149 speaker-codecs: false 150 151examples: 152 - | 153 154 sound: mt8186-sound { 155 compatible = "mediatek,mt8186-mt6366-da7219-max98357-sound"; 156 model = "mt8186_da7219_m98357"; 157 pinctrl-names = "aud_clk_mosi_off", 158 "aud_clk_mosi_on"; 159 pinctrl-0 = <&aud_clk_mosi_off>; 160 pinctrl-1 = <&aud_clk_mosi_on>; 161 mediatek,platform = <&afe>; 162 163 audio-routing = 164 "Headphones", "HPL", 165 "Headphones", "HPR", 166 "MIC", "Headset Mic", 167 "Speakers", "Speaker", 168 "HDMI1", "TX"; 169 170 hs-playback-dai-link { 171 link-name = "I2S0"; 172 dai-format = "i2s"; 173 mediatek,clk-provider = "cpu"; 174 codec { 175 sound-dai = <&da7219>; 176 }; 177 }; 178 179 hs-capture-dai-link { 180 link-name = "I2S1"; 181 dai-format = "i2s"; 182 mediatek,clk-provider = "cpu"; 183 codec { 184 sound-dai = <&da7219>; 185 }; 186 }; 187 188 spk-dp-playback-dai-link { 189 link-name = "I2S3"; 190 dai-format = "i2s"; 191 mediatek,clk-provider = "cpu"; 192 codec { 193 sound-dai = <&anx_bridge_dp>, <&max98357a>; 194 }; 195 }; 196 }; 197 198... 199