linux/arch/arm64/boot/dts/freescale/imx8dxl-ss-adma.dtsi

// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright 2019~2020, 2022 NXP
 */

/delete-node/ &asrc1;
/delete-node/ &asrc1_lpcg;
/delete-node/ &adc1;
/delete-node/ &adc1_lpcg;
/delete-node/ &amix;
/delete-node/ &amix_lpcg;
/delete-node/ &edma1;
/delete-node/ &esai0;
/delete-node/ &esai0_lpcg;
/delete-node/ &sai4;
/delete-node/ &sai4_lpcg;
/delete-node/ &sai5;
/delete-node/ &sai5_lpcg;

&acm {
	compatible = "fsl,imx8dxl-acm";
	power-domains = <&pd IMX_SC_R_AUDIO_CLK_0>,
			<&pd IMX_SC_R_AUDIO_CLK_1>,
			<&pd IMX_SC_R_MCLK_OUT_0>,
			<&pd IMX_SC_R_MCLK_OUT_1>,
			<&pd IMX_SC_R_AUDIO_PLL_0>,
			<&pd IMX_SC_R_AUDIO_PLL_1>,
			<&pd IMX_SC_R_ASRC_0>,
			<&pd IMX_SC_R_SAI_0>,
			<&pd IMX_SC_R_SAI_1>,
			<&pd IMX_SC_R_SAI_2>,
			<&pd IMX_SC_R_SAI_3>,
			<&pd IMX_SC_R_SPDIF_0>,
			<&pd IMX_SC_R_MQS_0>;
	clocks = <&aud_rec0_lpcg IMX_LPCG_CLK_0>,
		 <&aud_rec1_lpcg IMX_LPCG_CLK_0>,
		 <&aud_pll_div0_lpcg IMX_LPCG_CLK_0>,
		 <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>,
		 <&clk_ext_aud_mclk0>,
		 <&clk_ext_aud_mclk1>,
		 <&clk_spdif0_rx>,
		 <&clk_sai0_rx_bclk>,
		 <&clk_sai0_tx_bclk>,
		 <&clk_sai1_rx_bclk>,
		 <&clk_sai1_tx_bclk>,
		 <&clk_sai2_rx_bclk>,
		 <&clk_sai3_rx_bclk>;
	clock-names = "aud_rec_clk0_lpcg_clk",
		      "aud_rec_clk1_lpcg_clk",
		      "aud_pll_div_clk0_lpcg_clk",
		      "aud_pll_div_clk1_lpcg_clk",
		      "ext_aud_mclk0",
		      "ext_aud_mclk1",
		      "spdif0_rx",
		      "sai0_rx_bclk",
		      "sai0_tx_bclk",
		      "sai1_rx_bclk",
		      "sai1_tx_bclk",
		      "sai2_rx_bclk",
		      "sai3_rx_bclk";
};

&audio_ipg_clk {
	clock-frequency = <160000000>;
};

&dma_ipg_clk {
	clock-frequency = <160000000>;
};

&adc0 {
	interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
};

&edma0 {
	reg = <0x591f0000 0x1a0000>;
	#dma-cells = <3>;
	dma-channels = <25>;
	dma-channel-mask = <0x1c0cc0>;
	interrupts = <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>, /* asrc 0 */
		<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>, /* spdif0 */
		<GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, /* sai0 */
		<GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>, /* sai1 */
		<GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, /* sai2 */
		<GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>, /* sai3 */
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 0   IRQ_TYPE_LEVEL_HIGH>,
		<GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>, /* gpt0 */
		<GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>, /* gpt1 */
		<GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>, /* gpt2 */
		<GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>; /* gpt3 */
	power-domains = <&pd IMX_SC_R_DMA_0_CH0>,
			<&pd IMX_SC_R_DMA_0_CH1>,
			<&pd IMX_SC_R_DMA_0_CH2>,
			<&pd IMX_SC_R_DMA_0_CH3>,
			<&pd IMX_SC_R_DMA_0_CH4>,
			<&pd IMX_SC_R_DMA_0_CH5>,
			<&pd IMX_SC_R_DMA_0_CH6>,
			<&pd IMX_SC_R_DMA_0_CH7>,
			<&pd IMX_SC_R_DMA_0_CH8>,
			<&pd IMX_SC_R_DMA_0_CH9>,
			<&pd IMX_SC_R_DMA_0_CH10>,
			<&pd IMX_SC_R_DMA_0_CH11>,
			<&pd IMX_SC_R_DMA_0_CH12>,
			<&pd IMX_SC_R_DMA_0_CH13>,
			<&pd IMX_SC_R_DMA_0_CH14>,
			<&pd IMX_SC_R_DMA_0_CH15>,
			<&pd IMX_SC_R_DMA_0_CH16>,
			<&pd IMX_SC_R_DMA_0_CH17>,
			<&pd IMX_SC_R_DMA_0_CH18>,
			<&pd IMX_SC_R_DMA_0_CH19>,
			<&pd IMX_SC_R_DMA_0_CH20>,
			<&pd IMX_SC_R_DMA_0_CH21>,
			<&pd IMX_SC_R_DMA_0_CH22>,
			<&pd IMX_SC_R_DMA_0_CH23>,
			<&pd IMX_SC_R_DMA_0_CH24>;
};

&edma2 {
	interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 289 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 291 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 292 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>;
};

&edma3 {
	interrupts = <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 301 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>,
		     <GIC_SPI 303 IRQ_TYPE_LEVEL_HIGH>;
};

&flexcan1 {
	interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
};

&flexcan2 {
	interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
};

&flexcan3 {
	interrupts = <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>;
};

&i2c0 {
	compatible = "fsl,imx8dxl-lpi2c", "fsl,imx7ulp-lpi2c";
	interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
	dma-names = "tx","rx";
	dmas = <&edma3 1 0 0>, <&edma3 0 0 FSL_EDMA_RX>;
};

&i2c1 {
	compatible = "fsl,imx8dxl-lpi2c", "fsl,imx7ulp-lpi2c";
	interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
	dma-names = "tx","rx";
	dmas = <&edma3 3 0 0>, <&edma3 2 0 FSL_EDMA_RX>;
};

&i2c2 {
	compatible = "fsl,imx8dxl-lpi2c", "fsl,imx7ulp-lpi2c";
	interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
	dma-names = "tx","rx";
	dmas = <&edma3 5 0 0>, <&edma3 4 0 FSL_EDMA_RX>;
};

&i2c3 {
	compatible = "fsl,imx8dxl-lpi2c", "fsl,imx7ulp-lpi2c";
	interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>;
	dma-names = "tx","rx";
	dmas = <&edma3 7 0 0>, <&edma3 6 0 FSL_EDMA_RX>;
};

&lpuart0 {
	compatible = "fsl,imx8dxl-lpuart", "fsl,imx8qxp-lpuart";
	interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
};

&lpuart1 {
	compatible = "fsl,imx8dxl-lpuart", "fsl,imx8qxp-lpuart";
	interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
};

&lpuart2 {
	compatible = "fsl,imx8dxl-lpuart", "fsl,imx8qxp-lpuart";
	interrupts = <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>;
};

&lpuart3 {
	compatible = "fsl,imx8dxl-lpuart", "fsl,imx8qxp-lpuart";
	interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>;
};

&lpspi0 {
	interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
};

&lpspi1 {
	interrupts = <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>;
};

&lpspi2 {
	interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
};

&lpspi3 {
	interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
};

&sai0 {
	interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
};

&sai1 {
	interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
};

&sai2 {
	interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
};

&sai3 {
	interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
};

&spdif0 {
	interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>, /* rx */
		     <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>; /* tx */
};