1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/sound/mediatek,mt8188-afe.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: MediaTek AFE PCM controller for mt8188
10 - Trevor Wu <trevor.wu@mediatek.com>
14 const: mediatek,mt8188-afe
31 Shared memory region for AFE memif. A "shared-dma-pool".
32 See dtschema reserved-memory/shared-dma-pool.yaml for details.
35 $ref: /schemas/types.yaml#/definitions/phandle
36 description: The phandle of the mediatek topckgen controller
39 $ref: /schemas/types.yaml#/definitions/phandle
40 description: The phandle of the mediatek infracfg controller
47 - description: 26M clock
48 - description: audio pll1 clock
49 - description: audio pll2 clock
50 - description: clock divider for i2si1_mck
51 - description: clock divider for i2si2_mck
52 - description: clock divider for i2so1_mck
53 - description: clock divider for i2so2_mck
54 - description: clock divider for dptx_mck
55 - description: a1sys hoping clock
56 - description: audio intbus clock
57 - description: audio hires clock
58 - description: audio local bus clock
59 - description: mux for dptx_mck
60 - description: mux for i2so1_mck
61 - description: mux for i2so2_mck
62 - description: mux for i2si1_mck
63 - description: mux for i2si2_mck
64 - description: audio 26m clock
65 - description: audio pll1 divide 4
66 - description: audio pll2 divide 4
67 - description: clock divider for iec
68 - description: mux for a2sys clock
69 - description: mux for aud_iec
82 - const: top_aud_intbus
84 - const: top_audio_local_bus
90 - const: adsp_audio_26m
97 mediatek,etdm-in1-cowork-source:
98 $ref: /schemas/types.yaml#/definitions/uint32
100 etdm modules can share the same external clock pin. Specify
101 which etdm clock source is required by this etdm in module.
107 mediatek,etdm-in2-cowork-source:
108 $ref: /schemas/types.yaml#/definitions/uint32
110 etdm modules can share the same external clock pin. Specify
111 which etdm clock source is required by this etdm in module.
117 mediatek,etdm-out1-cowork-source:
118 $ref: /schemas/types.yaml#/definitions/uint32
120 etdm modules can share the same external clock pin. Specify
121 which etdm clock source is required by this etdm out module.
127 mediatek,etdm-out2-cowork-source:
128 $ref: /schemas/types.yaml#/definitions/uint32
130 etdm modules can share the same external clock pin. Specify
131 which etdm clock source is required by this etdm out module.
138 "^mediatek,etdm-in[1-2]-chn-disabled$":
139 $ref: /schemas/types.yaml#/definitions/uint8-array
143 This is a list of channel IDs which should be disabled.
144 By default, all data received from ETDM pins will be outputted to
145 memory. etdm in supports disable_out in direct mode(w/o interconn),
146 so user can disable the specified channels by the property.
152 "^mediatek,etdm-in[1-2]-multi-pin-mode$":
154 description: if present, the etdm data mode is I2S.
156 "^mediatek,etdm-out[1-3]-multi-pin-mode$":
158 description: if present, the etdm data mode is I2S.
172 additionalProperties: false
176 #include <dt-bindings/interrupt-controller/arm-gic.h>
177 #include <dt-bindings/interrupt-controller/irq.h>
180 compatible = "mediatek,mt8188-afe";
181 reg = <0x10b10000 0x10000>;
182 interrupts = <GIC_SPI 822 IRQ_TYPE_LEVEL_HIGH 0>;
183 resets = <&watchdog 14>;
184 reset-names = "audiosys";
185 memory-region = <&snd_dma_mem_reserved>;
186 mediatek,topckgen = <&topckgen>;
187 mediatek,infracfg = <&infracfg_ao>;
188 power-domains = <&spm 13>; //MT8188_POWER_DOMAIN_AUDIO
189 mediatek,etdm-in2-cowork-source = <2>;
190 mediatek,etdm-out2-cowork-source = <0>;
191 mediatek,etdm-in1-multi-pin-mode;
192 mediatek,etdm-in1-chn-disabled = /bits/ 8 <0x0 0x2>;
194 <&apmixedsys 9>, //CLK_APMIXED_APLL1
195 <&apmixedsys 10>, //CLK_APMIXED_APLL2
196 <&topckgen 186>, //CLK_TOP_APLL12_CK_DIV0
197 <&topckgen 187>, //CLK_TOP_APLL12_CK_DIV1
198 <&topckgen 188>, //CLK_TOP_APLL12_CK_DIV2
199 <&topckgen 189>, //CLK_TOP_APLL12_CK_DIV3
200 <&topckgen 191>, //CLK_TOP_APLL12_CK_DIV9
201 <&topckgen 83>, //CLK_TOP_A1SYS_HP
202 <&topckgen 31>, //CLK_TOP_AUD_INTBUS
203 <&topckgen 32>, //CLK_TOP_AUDIO_H
204 <&topckgen 69>, //CLK_TOP_AUDIO_LOCAL_BUS
205 <&topckgen 81>, //CLK_TOP_DPTX
206 <&topckgen 77>, //CLK_TOP_I2SO1
207 <&topckgen 78>, //CLK_TOP_I2SO2
208 <&topckgen 79>, //CLK_TOP_I2SI1
209 <&topckgen 80>, //CLK_TOP_I2SI2
210 <&adsp_audio26m 0>, //CLK_AUDIODSP_AUDIO26M
211 <&topckgen 132>, //CLK_TOP_APLL1_D4
212 <&topckgen 133>, //CLK_TOP_APLL2_D4
213 <&topckgen 183>, //CLK_TOP_APLL12_CK_DIV4
214 <&topckgen 84>, //CLK_TOP_A2SYS
215 <&topckgen 82>; //CLK_TOP_AUD_IEC>;
216 clock-names = "clk26m",
227 "top_audio_local_bus",