1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2*0e8011faSEmmanuel Vadot/* 3*0e8011faSEmmanuel Vadot * Copyright 2024 NXP 4*0e8011faSEmmanuel Vadot * Dong Aisheng <aisheng.dong@nxp.com> 5*0e8011faSEmmanuel Vadot */ 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadot/delete-node/ &acm; 8*0e8011faSEmmanuel Vadot/delete-node/ &sai4; 9*0e8011faSEmmanuel Vadot/delete-node/ &sai5; 10*0e8011faSEmmanuel Vadot/delete-node/ &sai4_lpcg; 11*0e8011faSEmmanuel Vadot/delete-node/ &sai5_lpcg; 12*0e8011faSEmmanuel Vadot 13*0e8011faSEmmanuel Vadot&amix { 14*0e8011faSEmmanuel Vadot dais = <&sai6>, <&sai7>; 15*0e8011faSEmmanuel Vadot}; 16*0e8011faSEmmanuel Vadot 17*0e8011faSEmmanuel Vadot&asrc0 { 18*0e8011faSEmmanuel Vadot clocks = <&asrc0_lpcg IMX_LPCG_CLK_0>, 19*0e8011faSEmmanuel Vadot <&asrc0_lpcg IMX_LPCG_CLK_2>, 20*0e8011faSEmmanuel Vadot <&aud_pll_div0_lpcg IMX_LPCG_CLK_0>, 21*0e8011faSEmmanuel Vadot <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>, 22*0e8011faSEmmanuel Vadot <&acm IMX_ADMA_ACM_AUD_CLK0_SEL>, 23*0e8011faSEmmanuel Vadot <&acm IMX_ADMA_ACM_AUD_CLK1_SEL>, 24*0e8011faSEmmanuel Vadot <&clk_dummy>, 25*0e8011faSEmmanuel Vadot <&clk_dummy>, 26*0e8011faSEmmanuel Vadot <&clk_dummy>, 27*0e8011faSEmmanuel Vadot <&clk_dummy>, 28*0e8011faSEmmanuel Vadot <&clk_dummy>, 29*0e8011faSEmmanuel Vadot <&clk_dummy>, 30*0e8011faSEmmanuel Vadot <&clk_dummy>, 31*0e8011faSEmmanuel Vadot <&clk_dummy>, 32*0e8011faSEmmanuel Vadot <&clk_dummy>, 33*0e8011faSEmmanuel Vadot <&clk_dummy>, 34*0e8011faSEmmanuel Vadot <&clk_dummy>, 35*0e8011faSEmmanuel Vadot <&clk_dummy>, 36*0e8011faSEmmanuel Vadot <&clk_dummy>; 37*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_ASRC_0>; 38*0e8011faSEmmanuel Vadot}; 39*0e8011faSEmmanuel Vadot 40*0e8011faSEmmanuel Vadot&asrc0_lpcg { 41*0e8011faSEmmanuel Vadot clocks = <&audio_ipg_clk>, 42*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 43*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_2>; 44*0e8011faSEmmanuel Vadot clock-output-names = "asrc0_lpcg_ipg_clk", "asrc0_lpcg_mem_clk"; 45*0e8011faSEmmanuel Vadot}; 46*0e8011faSEmmanuel Vadot 47*0e8011faSEmmanuel Vadot&asrc1 { 48*0e8011faSEmmanuel Vadot clocks = <&asrc1_lpcg IMX_LPCG_CLK_0>, 49*0e8011faSEmmanuel Vadot <&asrc1_lpcg IMX_LPCG_CLK_2>, 50*0e8011faSEmmanuel Vadot <&aud_pll_div0_lpcg IMX_LPCG_CLK_0>, 51*0e8011faSEmmanuel Vadot <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>, 52*0e8011faSEmmanuel Vadot <&acm IMX_ADMA_ACM_AUD_CLK0_SEL>, 53*0e8011faSEmmanuel Vadot <&acm IMX_ADMA_ACM_AUD_CLK1_SEL>, 54*0e8011faSEmmanuel Vadot <&clk_dummy>, 55*0e8011faSEmmanuel Vadot <&clk_dummy>, 56*0e8011faSEmmanuel Vadot <&clk_dummy>, 57*0e8011faSEmmanuel Vadot <&clk_dummy>, 58*0e8011faSEmmanuel Vadot <&clk_dummy>, 59*0e8011faSEmmanuel Vadot <&clk_dummy>, 60*0e8011faSEmmanuel Vadot <&clk_dummy>, 61*0e8011faSEmmanuel Vadot <&clk_dummy>, 62*0e8011faSEmmanuel Vadot <&clk_dummy>, 63*0e8011faSEmmanuel Vadot <&clk_dummy>, 64*0e8011faSEmmanuel Vadot <&clk_dummy>, 65*0e8011faSEmmanuel Vadot <&clk_dummy>, 66*0e8011faSEmmanuel Vadot <&clk_dummy>; 67*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_ASRC_1>; 68*0e8011faSEmmanuel Vadot}; 69*0e8011faSEmmanuel Vadot 70*0e8011faSEmmanuel Vadot&asrc1_lpcg { 71*0e8011faSEmmanuel Vadot clocks = <&audio_ipg_clk>, <&audio_ipg_clk>; 72*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_2>; 73*0e8011faSEmmanuel Vadot clock-output-names = "asrc1_lpcg_ipg_clk", "asrc1_lpcg_mem_clk"; 74*0e8011faSEmmanuel Vadot}; 75*0e8011faSEmmanuel Vadot 76*0e8011faSEmmanuel Vadot&audio_subsys { 77*0e8011faSEmmanuel Vadot 78*0e8011faSEmmanuel Vadot sai4: sai@59080000 { 79*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-sai"; 80*0e8011faSEmmanuel Vadot reg = <0x59080000 0x10000>; 81*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>; 82*0e8011faSEmmanuel Vadot clocks = <&sai4_lpcg IMX_LPCG_CLK_0>, 83*0e8011faSEmmanuel Vadot <&clk_dummy>, 84*0e8011faSEmmanuel Vadot <&sai4_lpcg IMX_LPCG_CLK_4>, 85*0e8011faSEmmanuel Vadot <&clk_dummy>, 86*0e8011faSEmmanuel Vadot <&clk_dummy>; 87*0e8011faSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 88*0e8011faSEmmanuel Vadot dma-names = "rx"; 89*0e8011faSEmmanuel Vadot dmas = <&edma0 18 0 1>; 90*0e8011faSEmmanuel Vadot fsl,dataline = <0 0xf 0x0>; 91*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_4>; 92*0e8011faSEmmanuel Vadot status = "disabled"; 93*0e8011faSEmmanuel Vadot }; 94*0e8011faSEmmanuel Vadot 95*0e8011faSEmmanuel Vadot sai5: sai@59090000 { 96*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-sai"; 97*0e8011faSEmmanuel Vadot reg = <0x59090000 0x10000>; 98*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>; 99*0e8011faSEmmanuel Vadot clocks = <&sai5_lpcg IMX_LPCG_CLK_0>, 100*0e8011faSEmmanuel Vadot <&clk_dummy>, 101*0e8011faSEmmanuel Vadot <&sai5_lpcg IMX_LPCG_CLK_4>, 102*0e8011faSEmmanuel Vadot <&clk_dummy>, 103*0e8011faSEmmanuel Vadot <&clk_dummy>; 104*0e8011faSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 105*0e8011faSEmmanuel Vadot dma-names = "tx"; 106*0e8011faSEmmanuel Vadot dmas = <&edma0 19 0 0>; 107*0e8011faSEmmanuel Vadot fsl,dataline = <0 0x0 0xf>; 108*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_5>; 109*0e8011faSEmmanuel Vadot status = "disabled"; 110*0e8011faSEmmanuel Vadot }; 111*0e8011faSEmmanuel Vadot 112*0e8011faSEmmanuel Vadot sai4_lpcg: clock-controller@59480000 { 113*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 114*0e8011faSEmmanuel Vadot reg = <0x59480000 0x10000>; 115*0e8011faSEmmanuel Vadot #clock-cells = <1>; 116*0e8011faSEmmanuel Vadot clocks = <&acm IMX_ADMA_ACM_SAI4_MCLK_SEL>, 117*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 118*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 119*0e8011faSEmmanuel Vadot clock-output-names = "sai4_lpcg_mclk", "sai4_lpcg_ipg_clk"; 120*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_4>; 121*0e8011faSEmmanuel Vadot status = "disabled"; 122*0e8011faSEmmanuel Vadot }; 123*0e8011faSEmmanuel Vadot 124*0e8011faSEmmanuel Vadot sai5_lpcg: clock-controller@59490000 { 125*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 126*0e8011faSEmmanuel Vadot reg = <0x59490000 0x10000>; 127*0e8011faSEmmanuel Vadot #clock-cells = <1>; 128*0e8011faSEmmanuel Vadot clocks = <&acm IMX_ADMA_ACM_SAI5_MCLK_SEL>, 129*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 130*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 131*0e8011faSEmmanuel Vadot clock-output-names = "sai5_lpcg_mclk", "sai5_lpcg_ipg_clk"; 132*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_5>; 133*0e8011faSEmmanuel Vadot status = "disabled"; 134*0e8011faSEmmanuel Vadot }; 135*0e8011faSEmmanuel Vadot 136*0e8011faSEmmanuel Vadot esai1: esai@59810000 { 137*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-esai"; 138*0e8011faSEmmanuel Vadot reg = <0x59810000 0x10000>; 139*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 411 IRQ_TYPE_LEVEL_HIGH>; 140*0e8011faSEmmanuel Vadot clocks = <&esai1_lpcg IMX_LPCG_CLK_0>, 141*0e8011faSEmmanuel Vadot <&esai1_lpcg IMX_LPCG_CLK_4>, 142*0e8011faSEmmanuel Vadot <&esai1_lpcg IMX_LPCG_CLK_0>, 143*0e8011faSEmmanuel Vadot <&clk_dummy>; 144*0e8011faSEmmanuel Vadot clock-names = "core", "extal", "fsys", "spba"; 145*0e8011faSEmmanuel Vadot dmas = <&edma1 6 0 1>, <&edma1 7 0 0>; 146*0e8011faSEmmanuel Vadot dma-names = "rx", "tx"; 147*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_ESAI_1>; 148*0e8011faSEmmanuel Vadot status = "disabled"; 149*0e8011faSEmmanuel Vadot }; 150*0e8011faSEmmanuel Vadot 151*0e8011faSEmmanuel Vadot sai6: sai@59820000 { 152*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-sai"; 153*0e8011faSEmmanuel Vadot reg = <0x59820000 0x10000>; 154*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>; 155*0e8011faSEmmanuel Vadot clocks = <&sai6_lpcg IMX_LPCG_CLK_0>, 156*0e8011faSEmmanuel Vadot <&clk_dummy>, 157*0e8011faSEmmanuel Vadot <&sai6_lpcg IMX_LPCG_CLK_4>, 158*0e8011faSEmmanuel Vadot <&clk_dummy>, 159*0e8011faSEmmanuel Vadot <&clk_dummy>; 160*0e8011faSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 161*0e8011faSEmmanuel Vadot dma-names = "rx", "tx"; 162*0e8011faSEmmanuel Vadot dmas = <&edma1 8 0 1>, <&edma1 9 0 0>; 163*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_6>; 164*0e8011faSEmmanuel Vadot status = "disabled"; 165*0e8011faSEmmanuel Vadot }; 166*0e8011faSEmmanuel Vadot 167*0e8011faSEmmanuel Vadot sai7: sai@59830000 { 168*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-sai"; 169*0e8011faSEmmanuel Vadot reg = <0x59830000 0x10000>; 170*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 171*0e8011faSEmmanuel Vadot clocks = <&sai7_lpcg IMX_LPCG_CLK_0>, 172*0e8011faSEmmanuel Vadot <&clk_dummy>, 173*0e8011faSEmmanuel Vadot <&sai7_lpcg IMX_LPCG_CLK_4>, 174*0e8011faSEmmanuel Vadot <&clk_dummy>, 175*0e8011faSEmmanuel Vadot <&clk_dummy>; 176*0e8011faSEmmanuel Vadot clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 177*0e8011faSEmmanuel Vadot dma-names = "tx"; 178*0e8011faSEmmanuel Vadot dmas = <&edma1 10 0 0>; 179*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_7>; 180*0e8011faSEmmanuel Vadot status = "disabled"; 181*0e8011faSEmmanuel Vadot }; 182*0e8011faSEmmanuel Vadot 183*0e8011faSEmmanuel Vadot esai1_lpcg: clock-controller@59c10000 { 184*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 185*0e8011faSEmmanuel Vadot reg = <0x59c10000 0x10000>; 186*0e8011faSEmmanuel Vadot #clock-cells = <1>; 187*0e8011faSEmmanuel Vadot clocks = <&acm IMX_ADMA_ACM_ESAI1_MCLK_SEL>, 188*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 189*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 190*0e8011faSEmmanuel Vadot clock-output-names = "esai1_lpcg_extal_clk", "esai1_lpcg_ipg_clk"; 191*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_ESAI_1>; 192*0e8011faSEmmanuel Vadot }; 193*0e8011faSEmmanuel Vadot 194*0e8011faSEmmanuel Vadot sai6_lpcg: clock-controller@59c20000 { 195*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 196*0e8011faSEmmanuel Vadot reg = <0x59c20000 0x10000>; 197*0e8011faSEmmanuel Vadot #clock-cells = <1>; 198*0e8011faSEmmanuel Vadot clocks = <&acm IMX_ADMA_ACM_SAI6_MCLK_SEL>, 199*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 200*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 201*0e8011faSEmmanuel Vadot clock-output-names = "sai6_lpcg_mclk", "sai6_lpcg_ipg_clk"; 202*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_6>; 203*0e8011faSEmmanuel Vadot }; 204*0e8011faSEmmanuel Vadot 205*0e8011faSEmmanuel Vadot sai7_lpcg: clock-controller@59c30000 { 206*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 207*0e8011faSEmmanuel Vadot reg = <0x59c30000 0x10000>; 208*0e8011faSEmmanuel Vadot #clock-cells = <1>; 209*0e8011faSEmmanuel Vadot clocks = <&acm IMX_ADMA_ACM_SAI7_MCLK_SEL>, 210*0e8011faSEmmanuel Vadot <&audio_ipg_clk>; 211*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 212*0e8011faSEmmanuel Vadot clock-output-names = "sai7_lpcg_mclk", "sai7_lpcg_ipg_clk"; 213*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_7>; 214*0e8011faSEmmanuel Vadot }; 215*0e8011faSEmmanuel Vadot 216*0e8011faSEmmanuel Vadot acm: acm@59e00000 { 217*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qm-acm"; 218*0e8011faSEmmanuel Vadot reg = <0x59e00000 0x1d0000>; 219*0e8011faSEmmanuel Vadot #clock-cells = <1>; 220*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_AUDIO_CLK_0>, 221*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_AUDIO_CLK_1>, 222*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_MCLK_OUT_0>, 223*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_MCLK_OUT_1>, 224*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_AUDIO_PLL_0>, 225*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_AUDIO_PLL_1>, 226*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_ASRC_0>, 227*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_ASRC_1>, 228*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_ESAI_0>, 229*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_ESAI_1>, 230*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_0>, 231*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_1>, 232*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_2>, 233*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_3>, 234*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_4>, 235*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_5>, 236*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_6>, 237*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SAI_7>, 238*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SPDIF_0>, 239*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_SPDIF_1>, 240*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_MQS_0>; 241*0e8011faSEmmanuel Vadot clocks = <&aud_rec0_lpcg IMX_LPCG_CLK_0>, 242*0e8011faSEmmanuel Vadot <&aud_rec1_lpcg IMX_LPCG_CLK_0>, 243*0e8011faSEmmanuel Vadot <&aud_pll_div0_lpcg IMX_LPCG_CLK_0>, 244*0e8011faSEmmanuel Vadot <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>, 245*0e8011faSEmmanuel Vadot <&clk_mlb_clk>, 246*0e8011faSEmmanuel Vadot <&clk_hdmi_rx_mclk>, 247*0e8011faSEmmanuel Vadot <&clk_ext_aud_mclk0>, 248*0e8011faSEmmanuel Vadot <&clk_ext_aud_mclk1>, 249*0e8011faSEmmanuel Vadot <&clk_esai0_rx_clk>, 250*0e8011faSEmmanuel Vadot <&clk_esai0_rx_hf_clk>, 251*0e8011faSEmmanuel Vadot <&clk_esai0_tx_clk>, 252*0e8011faSEmmanuel Vadot <&clk_esai0_tx_hf_clk>, 253*0e8011faSEmmanuel Vadot <&clk_esai1_rx_clk>, 254*0e8011faSEmmanuel Vadot <&clk_esai1_rx_hf_clk>, 255*0e8011faSEmmanuel Vadot <&clk_esai1_tx_clk>, 256*0e8011faSEmmanuel Vadot <&clk_esai1_tx_hf_clk>, 257*0e8011faSEmmanuel Vadot <&clk_spdif0_rx>, 258*0e8011faSEmmanuel Vadot <&clk_spdif0_rx>, 259*0e8011faSEmmanuel Vadot <&clk_sai0_rx_bclk>, 260*0e8011faSEmmanuel Vadot <&clk_sai0_tx_bclk>, 261*0e8011faSEmmanuel Vadot <&clk_sai1_rx_bclk>, 262*0e8011faSEmmanuel Vadot <&clk_sai1_tx_bclk>, 263*0e8011faSEmmanuel Vadot <&clk_sai2_rx_bclk>, 264*0e8011faSEmmanuel Vadot <&clk_sai3_rx_bclk>, 265*0e8011faSEmmanuel Vadot <&clk_sai4_rx_bclk>, 266*0e8011faSEmmanuel Vadot <&clk_sai5_rx_bclk>, 267*0e8011faSEmmanuel Vadot <&clk_sai6_rx_bclk>; 268*0e8011faSEmmanuel Vadot clock-names = "aud_rec_clk0_lpcg_clk", 269*0e8011faSEmmanuel Vadot "aud_rec_clk1_lpcg_clk", 270*0e8011faSEmmanuel Vadot "aud_pll_div_clk0_lpcg_clk", 271*0e8011faSEmmanuel Vadot "aud_pll_div_clk1_lpcg_clk", 272*0e8011faSEmmanuel Vadot "mlb_clk", 273*0e8011faSEmmanuel Vadot "hdmi_rx_mclk", 274*0e8011faSEmmanuel Vadot "ext_aud_mclk0", 275*0e8011faSEmmanuel Vadot "ext_aud_mclk1", 276*0e8011faSEmmanuel Vadot "esai0_rx_clk", 277*0e8011faSEmmanuel Vadot "esai0_rx_hf_clk", 278*0e8011faSEmmanuel Vadot "esai0_tx_clk", 279*0e8011faSEmmanuel Vadot "esai0_tx_hf_clk", 280*0e8011faSEmmanuel Vadot "esai1_rx_clk", 281*0e8011faSEmmanuel Vadot "esai1_rx_hf_clk", 282*0e8011faSEmmanuel Vadot "esai1_tx_clk", 283*0e8011faSEmmanuel Vadot "esai1_tx_hf_clk", 284*0e8011faSEmmanuel Vadot "spdif0_rx", 285*0e8011faSEmmanuel Vadot "spdif1_rx", 286*0e8011faSEmmanuel Vadot "sai0_rx_bclk", 287*0e8011faSEmmanuel Vadot "sai0_tx_bclk", 288*0e8011faSEmmanuel Vadot "sai1_rx_bclk", 289*0e8011faSEmmanuel Vadot "sai1_tx_bclk", 290*0e8011faSEmmanuel Vadot "sai2_rx_bclk", 291*0e8011faSEmmanuel Vadot "sai3_rx_bclk", 292*0e8011faSEmmanuel Vadot "sai4_rx_bclk", 293*0e8011faSEmmanuel Vadot "sai5_tx_bclk", 294*0e8011faSEmmanuel Vadot "sai6_rx_bclk"; 295*0e8011faSEmmanuel Vadot }; 296*0e8011faSEmmanuel Vadot}; 297*0e8011faSEmmanuel Vadot 298*0e8011faSEmmanuel Vadot&dsp_lpcg { 299*0e8011faSEmmanuel Vadot status = "disabled"; 300*0e8011faSEmmanuel Vadot}; 301*0e8011faSEmmanuel Vadot 302*0e8011faSEmmanuel Vadot&dsp_ram_lpcg { 303*0e8011faSEmmanuel Vadot status = "disabled"; 304*0e8011faSEmmanuel Vadot}; 305*0e8011faSEmmanuel Vadot 306*0e8011faSEmmanuel Vadot/* edma2 called in imx8qm RM with the same address in edma0 of imx8qxp */ 307*0e8011faSEmmanuel Vadot&edma0{ 308*0e8011faSEmmanuel Vadot reg = <0x591f0000 0x150000>; 309*0e8011faSEmmanuel Vadot dma-channels = <20>; 310*0e8011faSEmmanuel Vadot dma-channel-mask = <0>; 311*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>, /* asrc0 */ 312*0e8011faSEmmanuel Vadot <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>, 313*0e8011faSEmmanuel Vadot <GIC_SPI 376 IRQ_TYPE_LEVEL_HIGH>, 314*0e8011faSEmmanuel Vadot <GIC_SPI 377 IRQ_TYPE_LEVEL_HIGH>, 315*0e8011faSEmmanuel Vadot <GIC_SPI 378 IRQ_TYPE_LEVEL_HIGH>, 316*0e8011faSEmmanuel Vadot <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>, 317*0e8011faSEmmanuel Vadot <GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH>, /* esai0 */ 318*0e8011faSEmmanuel Vadot <GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH>, 319*0e8011faSEmmanuel Vadot <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>, /* spdif0 */ 320*0e8011faSEmmanuel Vadot <GIC_SPI 459 IRQ_TYPE_LEVEL_HIGH>, 321*0e8011faSEmmanuel Vadot <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>, /* spdif1 */ 322*0e8011faSEmmanuel Vadot <GIC_SPI 463 IRQ_TYPE_LEVEL_HIGH>, 323*0e8011faSEmmanuel Vadot <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, /* sai0 */ 324*0e8011faSEmmanuel Vadot <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 325*0e8011faSEmmanuel Vadot <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, /* sai1 */ 326*0e8011faSEmmanuel Vadot <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 327*0e8011faSEmmanuel Vadot <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>, /* sai2 */ 328*0e8011faSEmmanuel Vadot <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>, /* sai3 */ 329*0e8011faSEmmanuel Vadot <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, /* sai4 */ 330*0e8011faSEmmanuel Vadot <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; /* sai5 */ 331*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_DMA_2_CH0>, 332*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH1>, 333*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH2>, 334*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH3>, 335*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH4>, 336*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH5>, 337*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH6>, 338*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH7>, 339*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH8>, 340*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH9>, 341*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH10>, 342*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH11>, 343*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH12>, 344*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH13>, 345*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH14>, 346*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH15>, 347*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH16>, 348*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH17>, 349*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH18>, 350*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_2_CH19>; 351*0e8011faSEmmanuel Vadot}; 352*0e8011faSEmmanuel Vadot 353*0e8011faSEmmanuel Vadot/* edma3 called in imx8qm RM with the same address in edma1 of imx8qxp */ 354*0e8011faSEmmanuel Vadot&edma1{ 355*0e8011faSEmmanuel Vadot reg = <0x599f0000 0xc0000>; 356*0e8011faSEmmanuel Vadot dma-channels = <11>; 357*0e8011faSEmmanuel Vadot dma-channel-mask = <0xc0>; 358*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 382 IRQ_TYPE_LEVEL_HIGH>, /* asrc1 */ 359*0e8011faSEmmanuel Vadot <GIC_SPI 383 IRQ_TYPE_LEVEL_HIGH>, 360*0e8011faSEmmanuel Vadot <GIC_SPI 384 IRQ_TYPE_LEVEL_HIGH>, 361*0e8011faSEmmanuel Vadot <GIC_SPI 385 IRQ_TYPE_LEVEL_HIGH>, 362*0e8011faSEmmanuel Vadot <GIC_SPI 386 IRQ_TYPE_LEVEL_HIGH>, 363*0e8011faSEmmanuel Vadot <GIC_SPI 387 IRQ_TYPE_LEVEL_HIGH>, 364*0e8011faSEmmanuel Vadot <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, /* no used */ 365*0e8011faSEmmanuel Vadot <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, /* no used */ 366*0e8011faSEmmanuel Vadot <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, /* sai6 */ 367*0e8011faSEmmanuel Vadot <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 368*0e8011faSEmmanuel Vadot <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>; /* sai7 */ 369*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_DMA_3_CH0>, 370*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH1>, 371*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH2>, 372*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH3>, 373*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH4>, 374*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH5>, 375*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH6>, 376*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH7>, 377*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH8>, 378*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH9>, 379*0e8011faSEmmanuel Vadot <&pd IMX_SC_R_DMA_3_CH10>; 380*0e8011faSEmmanuel Vadot}; 381*0e8011faSEmmanuel Vadot 382*0e8011faSEmmanuel Vadot&esai0 { 383*0e8011faSEmmanuel Vadot clocks = <&esai0_lpcg IMX_LPCG_CLK_0>, 384*0e8011faSEmmanuel Vadot <&esai0_lpcg IMX_LPCG_CLK_4>, 385*0e8011faSEmmanuel Vadot <&esai0_lpcg IMX_LPCG_CLK_0>, 386*0e8011faSEmmanuel Vadot <&clk_dummy>; 387*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_ESAI_0>; 388*0e8011faSEmmanuel Vadot}; 389*0e8011faSEmmanuel Vadot 390*0e8011faSEmmanuel Vadot&esai0_lpcg { 391*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 392*0e8011faSEmmanuel Vadot clock-output-names = "esai0_lpcg_extal_clk", "esai0_lpcg_ipg_clk"; 393*0e8011faSEmmanuel Vadot}; 394*0e8011faSEmmanuel Vadot 395*0e8011faSEmmanuel Vadot&mqs0_lpcg { 396*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 397*0e8011faSEmmanuel Vadot clock-output-names = "mqs0_lpcg_mclk", "mqs0_lpcg_ipg_clk"; 398*0e8011faSEmmanuel Vadot}; 399*0e8011faSEmmanuel Vadot 400*0e8011faSEmmanuel Vadot&sai0 { 401*0e8011faSEmmanuel Vadot clocks = <&sai0_lpcg IMX_LPCG_CLK_0>, 402*0e8011faSEmmanuel Vadot <&clk_dummy>, 403*0e8011faSEmmanuel Vadot <&sai0_lpcg IMX_LPCG_CLK_4>, 404*0e8011faSEmmanuel Vadot <&clk_dummy>, 405*0e8011faSEmmanuel Vadot <&clk_dummy>; 406*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_0>; 407*0e8011faSEmmanuel Vadot}; 408*0e8011faSEmmanuel Vadot 409*0e8011faSEmmanuel Vadot&sai0_lpcg { 410*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 411*0e8011faSEmmanuel Vadot clock-output-names = "sai0_lpcg_mclk", "sai0_lpcg_ipg_clk"; 412*0e8011faSEmmanuel Vadot}; 413*0e8011faSEmmanuel Vadot 414*0e8011faSEmmanuel Vadot&sai1 { 415*0e8011faSEmmanuel Vadot clocks = <&sai1_lpcg IMX_LPCG_CLK_0>, 416*0e8011faSEmmanuel Vadot <&clk_dummy>, 417*0e8011faSEmmanuel Vadot <&sai1_lpcg IMX_LPCG_CLK_4>, 418*0e8011faSEmmanuel Vadot <&clk_dummy>, 419*0e8011faSEmmanuel Vadot <&clk_dummy>; 420*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_1>; 421*0e8011faSEmmanuel Vadot}; 422*0e8011faSEmmanuel Vadot 423*0e8011faSEmmanuel Vadot&sai1_lpcg { 424*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 425*0e8011faSEmmanuel Vadot clock-output-names = "sai1_lpcg_mclk", "sai1_lpcg_ipg_clk"; 426*0e8011faSEmmanuel Vadot}; 427*0e8011faSEmmanuel Vadot 428*0e8011faSEmmanuel Vadot&sai2 { 429*0e8011faSEmmanuel Vadot clocks = <&sai2_lpcg IMX_LPCG_CLK_0>, 430*0e8011faSEmmanuel Vadot <&clk_dummy>, 431*0e8011faSEmmanuel Vadot <&sai2_lpcg IMX_LPCG_CLK_4>, 432*0e8011faSEmmanuel Vadot <&clk_dummy>, 433*0e8011faSEmmanuel Vadot <&clk_dummy>; 434*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_2>; 435*0e8011faSEmmanuel Vadot}; 436*0e8011faSEmmanuel Vadot 437*0e8011faSEmmanuel Vadot&sai2_lpcg { 438*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 439*0e8011faSEmmanuel Vadot clock-output-names = "sai2_lpcg_mclk", "sai2_lpcg_ipg_clk"; 440*0e8011faSEmmanuel Vadot}; 441*0e8011faSEmmanuel Vadot 442*0e8011faSEmmanuel Vadot&sai3 { 443*0e8011faSEmmanuel Vadot clocks = <&sai3_lpcg IMX_LPCG_CLK_0>, 444*0e8011faSEmmanuel Vadot <&clk_dummy>, 445*0e8011faSEmmanuel Vadot <&sai3_lpcg IMX_LPCG_CLK_4>, 446*0e8011faSEmmanuel Vadot <&clk_dummy>, 447*0e8011faSEmmanuel Vadot <&clk_dummy>; 448*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SAI_3>; 449*0e8011faSEmmanuel Vadot}; 450*0e8011faSEmmanuel Vadot 451*0e8011faSEmmanuel Vadot&sai3_lpcg { 452*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_0>; 453*0e8011faSEmmanuel Vadot clock-output-names = "sai3_lpcg_mclk", "sai3_lpcg_ipg_clk"; 454*0e8011faSEmmanuel Vadot}; 455*0e8011faSEmmanuel Vadot 456*0e8011faSEmmanuel Vadot&spdif0 { 457*0e8011faSEmmanuel Vadot clocks = <&spdif0_lpcg IMX_LPCG_CLK_4>, /* core */ 458*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx0 */ 459*0e8011faSEmmanuel Vadot <&spdif0_lpcg IMX_LPCG_CLK_5>, /* rxtx1 */ 460*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx2 */ 461*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx3 */ 462*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx4 */ 463*0e8011faSEmmanuel Vadot <&audio_ipg_clk>, /* rxtx5 */ 464*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx6 */ 465*0e8011faSEmmanuel Vadot <&clk_dummy>, /* rxtx7 */ 466*0e8011faSEmmanuel Vadot <&clk_dummy>; /* spba */ 467*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_SPDIF_0>; 468*0e8011faSEmmanuel Vadot}; 469*0e8011faSEmmanuel Vadot 470*0e8011faSEmmanuel Vadot&spdif0_lpcg { 471*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_5>, <IMX_LPCG_CLK_4>; 472*0e8011faSEmmanuel Vadot clock-output-names = "spdif0_lpcg_tx_clk", "spdif0_lpcg_gclkw"; 473*0e8011faSEmmanuel Vadot}; 474