1*22e9bd51SCyril Chao# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*22e9bd51SCyril Chao%YAML 1.2 3*22e9bd51SCyril Chao--- 4*22e9bd51SCyril Chao$id: http://devicetree.org/schemas/sound/mediatek,mt8189-afe-pcm.yaml# 5*22e9bd51SCyril Chao$schema: http://devicetree.org/meta-schemas/core.yaml# 6*22e9bd51SCyril Chao 7*22e9bd51SCyril Chaotitle: MediaTek Audio Front End PCM controller for MT8189 8*22e9bd51SCyril Chao 9*22e9bd51SCyril Chaomaintainers: 10*22e9bd51SCyril Chao - Darren Ye <darren.ye@mediatek.com> 11*22e9bd51SCyril Chao - Cyril Chao <cyril.chao@mediatek.com> 12*22e9bd51SCyril Chao 13*22e9bd51SCyril Chaoproperties: 14*22e9bd51SCyril Chao compatible: 15*22e9bd51SCyril Chao const: mediatek,mt8189-afe-pcm 16*22e9bd51SCyril Chao 17*22e9bd51SCyril Chao reg: 18*22e9bd51SCyril Chao maxItems: 1 19*22e9bd51SCyril Chao 20*22e9bd51SCyril Chao interrupts: 21*22e9bd51SCyril Chao maxItems: 1 22*22e9bd51SCyril Chao 23*22e9bd51SCyril Chao memory-region: 24*22e9bd51SCyril Chao maxItems: 1 25*22e9bd51SCyril Chao 26*22e9bd51SCyril Chao mediatek,apmixedsys: 27*22e9bd51SCyril Chao $ref: /schemas/types.yaml#/definitions/phandle 28*22e9bd51SCyril Chao description: To set up the apll12 tuner 29*22e9bd51SCyril Chao 30*22e9bd51SCyril Chao power-domains: 31*22e9bd51SCyril Chao maxItems: 1 32*22e9bd51SCyril Chao 33*22e9bd51SCyril Chao clocks: 34*22e9bd51SCyril Chao items: 35*22e9bd51SCyril Chao - description: mux for audio intbus 36*22e9bd51SCyril Chao - description: mux for audio engen1 37*22e9bd51SCyril Chao - description: mux for audio engen2 38*22e9bd51SCyril Chao - description: mux for audio h 39*22e9bd51SCyril Chao - description: audio apll1 clock 40*22e9bd51SCyril Chao - description: audio apll2 clock 41*22e9bd51SCyril Chao - description: audio apll1 divide4 42*22e9bd51SCyril Chao - description: audio apll2 divide4 43*22e9bd51SCyril Chao - description: audio apll12 divide for i2sin0 44*22e9bd51SCyril Chao - description: audio apll12 divide for i2sin1 45*22e9bd51SCyril Chao - description: audio apll12 divide for i2sout0 46*22e9bd51SCyril Chao - description: audio apll12 divide for i2sout1 47*22e9bd51SCyril Chao - description: audio apll12 divide for fmi2s 48*22e9bd51SCyril Chao - description: audio apll12 divide for tdmout mck 49*22e9bd51SCyril Chao - description: audio apll12 divide for tdmout bck 50*22e9bd51SCyril Chao - description: mux for audio apll1 51*22e9bd51SCyril Chao - description: mux for audio apll2 52*22e9bd51SCyril Chao - description: mux for i2sin0 mck 53*22e9bd51SCyril Chao - description: mux for i2sin1 mck 54*22e9bd51SCyril Chao - description: mux for i2sout0 mck 55*22e9bd51SCyril Chao - description: mux for i2sout1 mck 56*22e9bd51SCyril Chao - description: mux for fmi2s mck 57*22e9bd51SCyril Chao - description: mux for tdmout mck 58*22e9bd51SCyril Chao - description: 26m clock 59*22e9bd51SCyril Chao - description: audio slv clock 60*22e9bd51SCyril Chao - description: audio mst clock 61*22e9bd51SCyril Chao - description: audio intbus clock 62*22e9bd51SCyril Chao 63*22e9bd51SCyril Chao clock-names: 64*22e9bd51SCyril Chao items: 65*22e9bd51SCyril Chao - const: top_aud_intbus 66*22e9bd51SCyril Chao - const: top_aud_eng1 67*22e9bd51SCyril Chao - const: top_aud_eng2 68*22e9bd51SCyril Chao - const: top_aud_h 69*22e9bd51SCyril Chao - const: apll1 70*22e9bd51SCyril Chao - const: apll2 71*22e9bd51SCyril Chao - const: apll1_d4 72*22e9bd51SCyril Chao - const: apll2_d4 73*22e9bd51SCyril Chao - const: apll12_div_i2sin0 74*22e9bd51SCyril Chao - const: apll12_div_i2sin1 75*22e9bd51SCyril Chao - const: apll12_div_i2sout0 76*22e9bd51SCyril Chao - const: apll12_div_i2sout1 77*22e9bd51SCyril Chao - const: apll12_div_fmi2s 78*22e9bd51SCyril Chao - const: apll12_div_tdmout_m 79*22e9bd51SCyril Chao - const: apll12_div_tdmout_b 80*22e9bd51SCyril Chao - const: top_apll1 81*22e9bd51SCyril Chao - const: top_apll2 82*22e9bd51SCyril Chao - const: top_i2sin0 83*22e9bd51SCyril Chao - const: top_i2sin1 84*22e9bd51SCyril Chao - const: top_i2sout0 85*22e9bd51SCyril Chao - const: top_i2sout1 86*22e9bd51SCyril Chao - const: top_fmi2s 87*22e9bd51SCyril Chao - const: top_dptx 88*22e9bd51SCyril Chao - const: clk26m 89*22e9bd51SCyril Chao - const: aud_slv_ck_peri 90*22e9bd51SCyril Chao - const: aud_mst_ck_peri 91*22e9bd51SCyril Chao - const: aud_intbus_ck_peri 92*22e9bd51SCyril Chao 93*22e9bd51SCyril Chaorequired: 94*22e9bd51SCyril Chao - compatible 95*22e9bd51SCyril Chao - reg 96*22e9bd51SCyril Chao - interrupts 97*22e9bd51SCyril Chao - memory-region 98*22e9bd51SCyril Chao - power-domains 99*22e9bd51SCyril Chao - clocks 100*22e9bd51SCyril Chao - clock-names 101*22e9bd51SCyril Chao 102*22e9bd51SCyril ChaoadditionalProperties: false 103*22e9bd51SCyril Chao 104*22e9bd51SCyril Chaoexamples: 105*22e9bd51SCyril Chao - | 106*22e9bd51SCyril Chao #include <dt-bindings/interrupt-controller/arm-gic.h> 107*22e9bd51SCyril Chao #include <dt-bindings/interrupt-controller/irq.h> 108*22e9bd51SCyril Chao 109*22e9bd51SCyril Chao soc { 110*22e9bd51SCyril Chao #address-cells = <2>; 111*22e9bd51SCyril Chao #size-cells = <2>; 112*22e9bd51SCyril Chao 113*22e9bd51SCyril Chao afe@11050000 { 114*22e9bd51SCyril Chao compatible = "mediatek,mt8189-afe-pcm"; 115*22e9bd51SCyril Chao reg = <0 0x11050000 0 0x10000>; 116*22e9bd51SCyril Chao interrupts = <GIC_SPI 392 IRQ_TYPE_LEVEL_HIGH 0>; 117*22e9bd51SCyril Chao memory-region = <&afe_dma_mem_reserved>; 118*22e9bd51SCyril Chao pinctrl-names = "default"; 119*22e9bd51SCyril Chao pinctrl-0 = <&aud_pins_default>; 120*22e9bd51SCyril Chao power-domains = <&scpsys 1>; //MT8189_POWER_DOMAIN_AUDIO 121*22e9bd51SCyril Chao clocks = <&topckgen_clk 23>, //CLK_TOP_AUD_INTBUS_SEL 122*22e9bd51SCyril Chao <&topckgen_clk 39>, //CLK_TOP_AUD_ENGEN1_SEL 123*22e9bd51SCyril Chao <&topckgen_clk 40>, //CLK_TOP_AUD_ENGEN2_SEL 124*22e9bd51SCyril Chao <&topckgen_clk 49>, //CLK_TOP_AUDIO_H_SEL 125*22e9bd51SCyril Chao <&topckgen_clk 146>, //CLK_TOP_APLL1 126*22e9bd51SCyril Chao <&topckgen_clk 151>, //CLK_TOP_APLL2 127*22e9bd51SCyril Chao <&topckgen_clk 148>, //CLK_TOP_APLL1_D4 128*22e9bd51SCyril Chao <&topckgen_clk 153>, //CLK_TOP_APLL2_D4 129*22e9bd51SCyril Chao <&topckgen_clk 93>, //CLK_TOP_APLL12_CK_DIV_I2SIN0 130*22e9bd51SCyril Chao <&topckgen_clk 94>, //CLK_TOP_APLL12_CK_DIV_I2SIN1 131*22e9bd51SCyril Chao <&topckgen_clk 95>, //CLK_TOP_APLL12_CK_DIV_I2SOUT0 132*22e9bd51SCyril Chao <&topckgen_clk 96>, //CLK_TOP_APLL12_CK_DIV_I2SOUT1 133*22e9bd51SCyril Chao <&topckgen_clk 97>, //CLK_TOP_APLL12_CK_DIV_FMI2S 134*22e9bd51SCyril Chao <&topckgen_clk 98>, //CLK_TOP_APLL12_CK_DIV_TDMOUT_M 135*22e9bd51SCyril Chao <&topckgen_clk 99>, //CLK_TOP_APLL12_CK_DIV_TDMOUT_B 136*22e9bd51SCyril Chao <&topckgen_clk 44>, //CLK_TOP_AUD_1_SEL 137*22e9bd51SCyril Chao <&topckgen_clk 45>, //CLK_TOP_AUD_2_SEL 138*22e9bd51SCyril Chao <&topckgen_clk 78>, //CLK_TOP_APLL_I2SIN0_MCK_SEL 139*22e9bd51SCyril Chao <&topckgen_clk 79>, //CLK_TOP_APLL_I2SIN1_MCK_SEL 140*22e9bd51SCyril Chao <&topckgen_clk 84>, //CLK_TOP_APLL_I2SOUT0_MCK_SEL 141*22e9bd51SCyril Chao <&topckgen_clk 85>, //CLK_TOP_APLL_I2SOUT1_MCK_SEL 142*22e9bd51SCyril Chao <&topckgen_clk 90>, //CLK_TOP_APLL_FMI2S_MCK_SEL 143*22e9bd51SCyril Chao <&topckgen_clk 91>, //CLK_TOP_APLL_TDMOUT_MCK_SEL 144*22e9bd51SCyril Chao <&topckgen_clk 191>, //CLK_TOP_TCK_26M_MX9 145*22e9bd51SCyril Chao <&pericfg_ao_clk 77>, //CLK_PERAO_AUDIO0 146*22e9bd51SCyril Chao <&pericfg_ao_clk 78>, //CLK_PERAO_AUDIO1 147*22e9bd51SCyril Chao <&pericfg_ao_clk 79>; //CLK_PERAO_AUDIO2 148*22e9bd51SCyril Chao clock-names = "top_aud_intbus", 149*22e9bd51SCyril Chao "top_aud_eng1", 150*22e9bd51SCyril Chao "top_aud_eng2", 151*22e9bd51SCyril Chao "top_aud_h", 152*22e9bd51SCyril Chao "apll1", 153*22e9bd51SCyril Chao "apll2", 154*22e9bd51SCyril Chao "apll1_d4", 155*22e9bd51SCyril Chao "apll2_d4", 156*22e9bd51SCyril Chao "apll12_div_i2sin0", 157*22e9bd51SCyril Chao "apll12_div_i2sin1", 158*22e9bd51SCyril Chao "apll12_div_i2sout0", 159*22e9bd51SCyril Chao "apll12_div_i2sout1", 160*22e9bd51SCyril Chao "apll12_div_fmi2s", 161*22e9bd51SCyril Chao "apll12_div_tdmout_m", 162*22e9bd51SCyril Chao "apll12_div_tdmout_b", 163*22e9bd51SCyril Chao "top_apll1", 164*22e9bd51SCyril Chao "top_apll2", 165*22e9bd51SCyril Chao "top_i2sin0", 166*22e9bd51SCyril Chao "top_i2sin1", 167*22e9bd51SCyril Chao "top_i2sout0", 168*22e9bd51SCyril Chao "top_i2sout1", 169*22e9bd51SCyril Chao "top_fmi2s", 170*22e9bd51SCyril Chao "top_dptx", 171*22e9bd51SCyril Chao "clk26m", 172*22e9bd51SCyril Chao "aud_slv_ck_peri", 173*22e9bd51SCyril Chao "aud_mst_ck_peri", 174*22e9bd51SCyril Chao "aud_intbus_ck_peri"; 175*22e9bd51SCyril Chao }; 176*22e9bd51SCyril Chao }; 177*22e9bd51SCyril Chao 178*22e9bd51SCyril Chao... 179