/*
 * Copyright (c) 2021, NXP
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <mem.h>
#include <arm/armv7-m.dtsi>
#include <dt-bindings/clock/imx_ccm_rev2.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/i2c/i2c.h>
#include <dt-bindings/pm/imx_spc.h>

/ {
	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		cpu0: cpu@0 {
			device_type = "cpu";
			compatible = "arm,cortex-m7";
			reg = <0>;

			#address-cells = <1>;
			#size-cells = <1>;
			d-cache-line-size = <32>;

			mpu: mpu@e000ed90 {
				compatible = "arm,armv7m-mpu";
				reg = <0xe000ed90 0x40>;
				arm,num-mpu-regions = <16>;
			};
		};
		cpu1: cpu@1 {
			device_type = "cpu";
			compatible = "arm,cortex-m4f";
			reg = <1>;
			d-cache-line-size = <32>;

			#address-cells = <1>;
			#size-cells = <1>;

			mpu: mpu@e000ed90 {
				compatible = "arm,armv7m-mpu";
				reg = <0xe000ed90 0x40>;
				arm,num-mpu-regions = <16>;
			};
		};
	};

	power-states {
		/*
		 * Power states are managed with set points (see page 30-35 of RT1170
		 * datasheet). These set points correspond to various power
		 * savings, and associated transition (residency) times.
		 *
		 * Set points 1 and 10 were chosen as sane defaults to offer
		 * limited power savings and quick transitions when entering idle for
		 * short periods, and better power savings with longer transition
		 * times for long idle periods
		 */
		idle: set_point_1_wait {
			/* idle corresponds to set point 1 (wait) for RT1170 */
			compatible = "zephyr,power-state";
			power-state-name="runtime-idle";
			substate-id = <IMX_SPC_SET_POINT_1_WAIT>;
			min-residency-us = <10>;
		};

		suspend: set_point_10_suspend {
			/*  suspend corresponds to set point 10 for RT1170 */
			compatible = "zephyr,power-state";
			power-state-name="suspend-to-idle";
			substate-id = <IMX_SPC_SET_POINT_10_SUSPEND>;
			min-residency-us = <5000>;
		};
	};

	xtal: xtal-osc {
		compatible = "fixed-clock";
		clock-frequency = <24000000>;
		#clock-cells = <0>;
	};

	soc {
		flexspi: spi@400cc000 {
			compatible = "nxp,imx-flexspi";
			reg = <0x400cc000 0x4000>;
			interrupts = <130 0>;
			label = "FLEXSPI";
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		flexspi2: spi@400d0000 {
			compatible = "nxp,imx-flexspi";
			reg = <0x400d0000 0x4000>;
			interrupts = <131 0>;
			label = "FLEXSPI2";
			#address-cells = <1>;
			#size-cells = <0>;
			status = "disabled";
		};

		semc: semc0@400d4000 {
			compatible = "nxp,imx-semc";
			reg = <0x400d4000 0x4000>;
			interrupts = <132 0>;
			label = "SEMC0";
			#address-cells = <1>;
			#size-cells = <1>;
		};

		/* GPT1 is used for the hardware timer, not as a standard counter */
		gpt_hw_timer: gpt@400ec000 {
			compatible = "nxp,gpt-hw-timer";
			reg = <0x400ec000 0x4000>;
			interrupts = <119 0>;
			label = "GPT_HW_TIMER";
			status = "disabled";
		};

		gpt2: gpt@400f0000 {
			compatible = "nxp,imx-gpt";
			reg = <0x400f0000 0x4000>;
			interrupts = <120 0>;
			gptfreq = <24000000>;
			clocks = <&ccm IMX_CCM_GPT_CLK 0x41 0>;
			label = "GPT2";
		};

		gpt3: gpt@400f4000 {
			compatible = "nxp,imx-gpt";
			reg = <0x400f4000 0x4000>;
			interrupts = <121 0>;
			gptfreq = <24000000>;
			clocks = <&ccm IMX_CCM_GPT_CLK 0x42 0>;
			label = "GPT3";
		};

		gpt4: gpt@400f8000 {
			compatible = "nxp,imx-gpt";
			reg = <0x400f8000 0x4000>;
			interrupts = <122 0>;
			gptfreq = <24000000>;
			clocks = <&ccm IMX_CCM_GPT_CLK 0x43 0>;
			label = "GPT4";
		};

		gpt5: gpt@400fc000 {
			compatible = "nxp,imx-gpt";
			reg = <0x400fc000 0x4000>;
			interrupts = <123 0>;
			gptfreq = <24000000>;
			clocks = <&ccm IMX_CCM_GPT_CLK 0x44 0>;
			label = "GPT5";
		};

		gpt6: gpt@40100000 {
			compatible = "nxp,imx-gpt";
			reg = <0x40100000 0x4000>;
			interrupts = <124 0>;
			gptfreq = <24000000>;
			clocks = <&ccm IMX_CCM_GPT_CLK 0x45 0>;
			label = "GPT6";
		};

		ccm: ccm@40cc0000 {
			compatible = "nxp,imx-ccm-rev2";
			reg = <0x40cc0000 0x4000>;
			label = "CCM";

			#clock-cells = <3>;
		};

		gpio1: gpio@4012c000 {
			compatible = "nxp,imx-gpio";
			reg = <0x4012c000 0x4000>;
			interrupts = <100 0>, <101 0>;
			label = "GPIO_1";
			gpio-controller;
			#gpio-cells = <2>;
		};

		/*
		 * Note that CM7 and CM4 cores do not have the same memory addresses
		 * for GPIO2 and GPIO3, so those peripherals are defined in the SOC
		 * specific DTS files
		 */

		gpio4: gpio@40138000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40138000 0x4000>;
			interrupts = <106 0>, <107 0>;
			label = "GPIO_4";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio5: gpio@4013c000 {
			compatible = "nxp,imx-gpio";
			reg = <0x4013c000 0x4000>;
			interrupts = <108 0>, <109 0>;
			label = "GPIO_5";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio6: gpio@40140000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40140000 0x4000>;
			label = "GPIO_6";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio7: gpio@40c5c000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c5c000 0x4000>;
			label = "GPIO_7";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio8: gpio@40c60000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c60000 0x4000>;
			label = "GPIO_8";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio9: gpio@40c64000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c64000 0x4000>;
			label = "GPIO_9";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio10: gpio@40c68000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c68000 0x4000>;
			label = "GPIO_10";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio11: gpio@40c6c000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c6c000 0x4000>;
			label = "GPIO_11";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio12: gpio@40c70000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40c70000 0x4000>;
			label = "GPIO_12";
			gpio-controller;
			#gpio-cells = <2>;
		};

		gpio13: gpio@40ca0000 {
			compatible = "nxp,imx-gpio";
			reg = <0x40ca0000 0x4000>;
			interrupts = <93 0>;
			label = "GPIO_13";
			gpio-controller;
			#gpio-cells = <2>;
		};

		lpi2c1: i2c@40104000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40104000 0x4000>;
			interrupts = <32 0>;
			clocks = <&ccm IMX_CCM_LPI2C1_CLK 0x70 6>;
			label = "I2C_1";
			status = "disabled";
		};

		lpi2c2: i2c@40108000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40108000 0x4000>;
			interrupts = <33 0>;
			clocks = <&ccm IMX_CCM_LPI2C2_CLK 0x70 8>;
			label = "I2C_2";
			status = "disabled";
		};

		lpi2c3: i2c@4010c000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x4010c000 0x4000>;
			interrupts = <34 0>;
			clocks = <&ccm IMX_CCM_LPI2C3_CLK 0x70 10>;
			label = "I2C_3";
			status = "disabled";
		};

		lpi2c4: i2c@40110000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40110000 0x4000>;
			interrupts = <35 0>;
			clocks = <&ccm IMX_CCM_LPI2C4_CLK 0x80 24>;
			label = "I2C_4";
			status = "disabled";
		};

		lpi2c5: i2c@40c34000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40c34000 0x4000>;
			interrupts = <36 0>;
			clocks = <&ccm IMX_CCM_LPI2C5_CLK 0x80 24>;
			label = "I2C_5";
			status = "disabled";
		};

		lpi2c6: i2c@40c38000 {
			compatible = "nxp,imx-lpi2c";
			clock-frequency = <I2C_BITRATE_STANDARD>;
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x40c38000 0x4000>;
			interrupts = <37 0>;
			clocks = <&ccm IMX_CCM_LPI2C6_CLK 0x80 24>;
			label = "I2C_6";
			status = "disabled";
		};

		iomuxc: iomuxc@400e8000 {
			compatible = "nxp,imx-iomuxc";
			reg = <0x400e8000 0x4000>;
			status = "okay";
			pinctrl: pinctrl {
				status = "okay";
				compatible = "nxp,mcux-rt11xx-pinctrl";
			};
		};

		iomuxc_lpsr: iomuxc_lpsr@40c08000 {
			compatible = "nxp,mcux-rt-pinctrl";
			reg = <0x40c08000 0x4000>;
			status = "disabled";
		};

		iomuxc_lpsr_gpr: iomuxc_lpsr_gpr@40c08000 {
			compatible = "nxp,imx-gpr";
			reg = <0x40c08000 0x4000>;
			label = "IOMUX_GPR";
			#pinmux-cells = <2>;
		};

		lcdif: display-controller@40804000 {
			compatible = "nxp,imx-elcdif";
			reg = <0x40804000 0x4000>;
			interrupts = <54 0>;
			label = "ELCDIF_1";
			status = "disabled";
		};

		lpspi1: spi@40114000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x40114000 0x4000>;
			interrupts = <38 3>;
			label = "SPI_1";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI1_CLK 0x6c 0>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpspi2: spi@40118000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x40118000 0x4000>;
			interrupts = <39 3>;
			label = "SPI_2";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI2_CLK 0x6c 2>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpspi3: spi@4011c000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x4011c000 0x4000>;
			interrupts = <40 3>;
			label = "SPI_3";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI3_CLK 0x6c 4>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpspi4: spi@40120000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x40120000 0x4000>;
			interrupts = <41 3>;
			label = "SPI_4";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI4_CLK 0x6c 6>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpspi5: spi@40c2c000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x40c2c000 0x4000>;
			interrupts = <42 3>;
			label = "SPI_5";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI5_CLK 0x6c 6>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpspi6: spi@40c30000 {
			compatible = "nxp,imx-lpspi";
			reg = <0x40c30000 0x4000>;
			interrupts = <43 3>;
			label = "SPI_6";
			status = "disabled";
			clocks = <&ccm IMX_CCM_LPSPI6_CLK 0x6c 6>;
			#address-cells = <1>;
			#size-cells = <0>;
		};

		lpuart1: uart@4007c000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x4007c000 0x4000>;
			interrupts = <20 0>;
			clocks = <&ccm IMX_CCM_LPUART1_CLK 0x7c 24>;
			label = "UART_1";
			status = "disabled";
		};

		lpuart2: uart@40080000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40080000 0x4000>;
			interrupts = <21 0>;
			clocks = <&ccm IMX_CCM_LPUART2_CLK 0x68 28>;
			label = "UART_2";
			status = "disabled";
		};

		lpuart3: uart@40084000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40084000 0x4000>;
			interrupts = <22 0>;
			clocks = <&ccm IMX_CCM_LPUART3_CLK 0x68 12>;
			label = "UART_3";
			status = "disabled";
		};

		lpuart4: uart@40088000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40088000 0x4000>;
			interrupts = <23 0>;
			clocks = <&ccm IMX_CCM_LPUART4_CLK 0x6c 24>;
			label = "UART_4";
			status = "disabled";
		};

		lpuart5: uart@4008c000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x4008c000 0x4000>;
			interrupts = <24 0>;
			clocks = <&ccm IMX_CCM_LPUART5_CLK 0x74 2>;
			label = "UART_5";
			status = "disabled";
		};

		lpuart6: uart@40090000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40090000 0x4000>;
			interrupts = <25 0>;
			clocks = <&ccm IMX_CCM_LPUART6_CLK 0x74 6>;
			label = "UART_6";
			status = "disabled";
		};

		lpuart7: uart@40094000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40094000 0x4000>;
			interrupts = <26 0>;
			clocks = <&ccm IMX_CCM_LPUART7_CLK 0x7c 26>;
			label = "UART_7";
			status = "disabled";
		};

		lpuart8: uart@40098000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40098000 0x4000>;
			interrupts = <27 0>;
			clocks = <&ccm IMX_CCM_LPUART8_CLK 0x80 14>;
			label = "UART_8";
			status = "disabled";
		};

		lpuart9: uart@4009c000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x4009c000 0x4000>;
			interrupts = <28 0>;
			clocks = <&ccm IMX_CCM_LPUART9_CLK 0x80 14>;
			label = "UART_9";
			status = "disabled";
		};

		lpuart10: uart@400a0000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x400a0000 0x4000>;
			interrupts = <29 0>;
			clocks = <&ccm IMX_CCM_LPUART10_CLK 0x80 14>;
			label = "UART_10";
			status = "disabled";
		};

		lpuart11: uart@40c24000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40c24000 0x4000>;
			interrupts = <30 0>;
			clocks = <&ccm IMX_CCM_LPUART11_CLK 0x80 14>;
			label = "UART_11";
			status = "disabled";
		};

		lpuart12: uart@40098000 {
			compatible = "nxp,kinetis-lpuart";
			reg = <0x40098000 0x4000>;
			interrupts = <31 0>;
			clocks = <&ccm IMX_CCM_LPUART12_CLK 0x80 14>;
			label = "UART_12";
			status = "disabled";
		};

		flexpwm1: flexpwm@4018c000 {
			compatible = "nxp,flexpwm";
			reg = <0x4018c000 0x4000>;
			interrupts = <129 0>;

			flexpwm1_pwm0: pwm0 {
				compatible = "nxp,imx-pwm";
				index = <0>;
				label = "FLEXPWM1_PWM0";
				interrupts = <125 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm1_pwm1: pwm1 {
				compatible = "nxp,imx-pwm";
				index = <1>;
				label = "FLEXPWM1_PWM1";
				interrupts = <126 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm1_pwm2: pwm2 {
				compatible = "nxp,imx-pwm";
				index = <2>;
				label = "FLEXPWM1_PWM2";
				interrupts = <127 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm1_pwm3: pwm3 {
				compatible = "nxp,imx-pwm";
				index = <3>;
				label = "FLEXPWM1_PWM3";
				interrupts = <128 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};
		};

		flexpwm2: flexpwm@40190000 {
			compatible = "nxp,flexpwm";
			reg = <0x40190000 0x4000>;
			interrupts =  <181 0>;

			flexpwm2_pwm0: pwm0 {
				compatible = "nxp,imx-pwm";
				index = <0>;
				label = "FLEXPWM2_PWM0";
				interrupts = <177 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm2_pwm1: pwm1 {
				compatible = "nxp,imx-pwm";
				index = <1>;
				label = "FLEXPWM2_PWM1";
				interrupts = <178 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm2_pwm2: pwm2 {
				compatible = "nxp,imx-pwm";
				index = <2>;
				label = "FLEXPWM2_PWM2";
				interrupts = <179 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm2_pwm3: pwm3 {
				compatible = "nxp,imx-pwm";
				index = <3>;
				label = "FLEXPWM2_PWM3";
				interrupts = <180 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};
		};

		flexpwm3: flexpwm@40194000 {
			compatible = "nxp,flexpwm";
			reg = <0x40194000 0x4000>;
			interrupts =  <186 0>;

			flexpwm3_pwm0: pwm0 {
				compatible = "nxp,imx-pwm";
				index = <0>;
				label = "FLEXPWM3_PWM0";
				interrupts = <182 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm3_pwm1: pwm1 {
				compatible = "nxp,imx-pwm";
				index = <1>;
				label = "FLEXPWM3_PWM1";
				interrupts = <183 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm3_pwm2: pwm2 {
				compatible = "nxp,imx-pwm";
				index = <2>;
				label = "FLEXPWM3_PWM2";
				interrupts = <184 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm3_pwm3: pwm3 {
				compatible = "nxp,imx-pwm";
				index = <3>;
				label = "FLEXPWM3_PWM3";
				interrupts = <185 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};
		};

		flexpwm4: flexpwm@40198000 {
			compatible = "nxp,flexpwm";
			reg = <0x40198000 0x4000>;
			interrupts = <191 0>;

			flexpwm4_pwm0: pwm0 {
				compatible = "nxp,imx-pwm";
				index = <0>;
				label = "FLEXPWM4_PWM0";
				interrupts = <187 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm4_pwm1: pwm1 {
				compatible = "nxp,imx-pwm";
				index = <1>;
				label = "FLEXPWM4_PWM1";
				interrupts = <188 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm4_pwm2: pwm2 {
				compatible = "nxp,imx-pwm";
				index = <2>;
				label = "FLEXPWM4_PWM2";
				interrupts = <189 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};

			flexpwm4_pwm3: pwm3 {
				compatible = "nxp,imx-pwm";
				index = <3>;
				label = "FLEXPWM4_PWM3";
				interrupts = <190 0>;
				#pwm-cells = <1>;
				clocks = <&ccm IMX_CCM_PWM_CLK 0 0>;
				status = "disabled";
			};
		};

		enet: ethernet@40424000 {
			compatible = "nxp,kinetis-ethernet";
			reg = <0x40424000 0x628>;
			interrupts = <137 0>;
			interrupt-names = "COMMON";
			status = "disabled";
			label = "ETH_0";
			phy-addr = <2>;
			ptp: ptp {
				compatible = "nxp,kinetis-ptp";
				status = "disabled";
				interrupts = <138 0>;
				interrupt-names = "IEEE1588_TMR";
			};
		};

		usb1: usbd@40430000 {
			compatible = "nxp,mcux-usbd";
			reg = <0x40430000 0x200>;
			interrupts = <136 1>;
			interrupt-names = "usb_otg";
			clocks = <&xtal>;
			num-bidir-endpoints = <8>;
			maximum-speed = "full-speed";
			status = "disabled";
			label = "USBD_1";
		};

		usb2: usbd@4042c000 {
			compatible = "nxp,mcux-usbd";
			reg = <0x4042c000 0x200>;
			interrupts = <135 1>;
			interrupt-names = "usb_otg";
			clocks = <&xtal>;
			num-bidir-endpoints = <8>;
			maximum-speed = "full-speed";
			status = "disabled";
			label = "USBD_2";
		};

		usdhc1: usdhc@40418000 {
			compatible = "nxp,imx-usdhc";
			reg = <0x40418000 0x4000>;
			status = "disabled";
			interrupts = <133 0>;
			clocks = <&ccm IMX_CCM_USDHC1_CLK 0 0>;
			label = "USDHC_1";
		};

		usdhc2: usdhc@4041c000 {
			compatible = "nxp,imx-usdhc";
			reg = <0x4041c000 0x4000>;
			status = "disabled";
			interrupts = <134 0>;
			clocks = <&ccm IMX_CCM_USDHC2_CLK 0 0>;
			label = "USDHC_2";
		};

		csi: csi@40800000 {
			compatible = "nxp,imx-csi";
			reg = <0x40800000 0x4000>;
			interrupts = <56 1>;
			status = "disabled";
			label = "CSI";
		};

		flexcan1: can@400c4000 {
			compatible = "nxp,kinetis-flexcan";
			reg = <0x400c4000 0x1000>;
			interrupts = <44 0>, <45 0>;
			interrupt-names = "common", "error";
			clocks = <&ccm IMX_CCM_CAN1_CLK 0x68 14>;
			clk-source = <0>;
			label = "CAN_1";
			sjw = <1>;
			sample-point = <875>;
			status = "disabled";
		};

		flexcan2: can@400c8000 {
			compatible = "nxp,kinetis-flexcan";
			reg = <0x400c8000 0x1000>;
			interrupts = <46 0>, <47 0>;
			interrupt-names = "common", "error";
			clocks = <&ccm IMX_CCM_CAN2_CLK 0x68 18>;
			clk-source = <0>;
			label = "CAN_2";
			sjw = <1>;
			sample-point = <875>;
			status = "disabled";
		};

		flexcan3: can@40c3c000 {
			compatible = "nxp,kinetis-flexcan";
			reg = <0x40c3c000 0x1000>;
			interrupts = <48 0>, <49 0>;
			interrupt-names = "common", "error";
			clocks = <&ccm IMX_CCM_CAN3_CLK 0x84 6>;
			clk-source = <0>;
			label = "CAN_3";
			sjw = <1>;
			sample-point = <875>;
			status = "disabled";
		};

		wdog1: wdog@40030000 {
			compatible = "nxp,imx-wdog";
			reg = <0x40030000 0xA>;
			status = "disabled";
			interrupts = <112 0>;
			label = "WDOG1";
		};

		ocram: ocram@20200000 {
			compatible = "mmio-sram";
			reg = <0x20200000 DT_SIZE_K(256)>;
		};

		ocram1: ocram@20240000 {
			compatible = "mmio-sram";
			reg = <0x20240000 DT_SIZE_K(512)>;
		};

		ocram2: ocram@202c0000 {
			compatible = "mmio-sram";
			reg = <0x202c0000 DT_SIZE_K(512)>;
		};

		lpadc0: lpadc@40050000 {
			compatible = "nxp,lpc-lpadc";
			reg = <0x40050000 0x304>;
			interrupts = <88 0>;
			status = "disabled";
			clk-divider = <8>;
			clk-source = <0>;
			voltage-ref= <2>;
			calibration-average = <128>;
			power-level = <1>;
			label = "LPADC_0";
			offset-value-a = <10>;
			offset-value-b = <10>;
			#io-channel-cells = <1>;
		};

		lpadc1: lpadc@40054000 {
			compatible = "nxp,lpc-lpadc";
			reg = <0x40054000 0x304>;
			interrupts = <89 0>;
			status = "disabled";
			clk-divider = <8>;
			clk-source = <0>;
			voltage-ref= <2>;
			calibration-average = <128>;
			power-level = <1>;
			label = "LPADC_1";
			offset-value-a = <10>;
			offset-value-b = <10>;
			#io-channel-cells = <1>;
		};

		anatop: anatop@40c84000 {
			compatible = "nxp,imx-anatop";
			reg = <0x40c84000 0x4000>;
			label = "CCM_ANA";
			#clock-cells = <4>;
			#pll-clock-cells = <3>;
		};

		edma0: dma-controller@40070000 {
			#dma-cells = <2>;
			compatible = "nxp,mcux-edma";
			dma-channels = <32>;
			dma-requests = <208>;
			nxp,mem2mem;
			nxp,a_on;
			reg = <0x40070000 0x4000>,
				<0x40074000 0x4000>;
			clocks = <&ccm IMX_CCM_EDMA_CLK 0x7C 0x000000C0>;
				status = "disabled";
			label = "DMA_0";
			interrupts = <0 0>, <1 0>, <2 0>, <3 0>,
				<4 0>, <5 0>, <6 0>, <7 0>,
				<8 0>, <9 0>, <10 0>, <11 0>,
				<12 0>, <13 0>, <14 0>, <15 0>,
				<16 0>;
		};

		edma_lpsr0: dma-controller@40c14000 {
			#dma-cells = <2>;
			compatible = "nxp,mcux-edma";
			dma-channels = <32>;
			dma-requests = <208>;
			nxp,mem2mem;
			nxp,a_on;
			reg = <0x40c14000 0x4000>,
				<0x40c18000 0x4000>;
			clocks = <&ccm IMX_CCM_EDMA_LPSR_CLK 0x7C 0x000000C0>;
			status = "disabled";
			label = "DMA_0";
			interrupts = <0 0>, <1 0>, <2 0>, <3 0>,
				<4 0>, <5 0>, <6 0>, <7 0>,
				<8 0>, <9 0>, <10 0>, <11 0>,
				<12 0>, <13 0>, <14 0>, <15 0>,
				<16 0>;
		};

		iomuxcgpr: iomuxcgpr@400e4000 {
			compatible = "nxp,imx-gpr";
			reg = <0x400e4000 0x4000>;
			label = "IOMUX_GPR";
			#pinmux-cells = <2>;
		};

		sai1: sai@40404000 {
			compatible = "nxp,mcux-i2s";
			#address-cells = <1>;
			#size-cells = <0>;
			#pinmux-cells = <2>;
			reg = <0x40404000 0x4000>;
			clocks = <&ccm IMX_CCM_SAI1_CLK 0x2004 4>;
			pre-div = <0>;
			podf = <4>;
			pll-clocks = <&anatop 0 0 0>,
					<&anatop 0 0 30>,
					<&anatop 0 0 1>,
					<&anatop 0 0 77>,
					<&anatop 0 0 100>;
			pll-clock-names = "src", "lp", "pd", "num", "den";
			pinmuxes = <&iomuxcgpr 0x0 0x100>;
			interrupts = <76 0>;
			nxp,tx-channel = <1>;
			status = "disabled";
			label = "I2S_0";
		};

		sai2: sai@40408000 {
			compatible = "nxp,mcux-i2s";
			#address-cells = <1>;
			#size-cells = <0>;
			#pinmux-cells = <2>;
			reg = <0x40408000 0x4000>;
			clocks = <&ccm IMX_CCM_SAI2_CLK 0x2084 4>;
			pre-div = <0>;
			podf = <63>;
			pll-clocks = <&anatop 0 0 0>,
					<&anatop 0 0 30>,
					<&anatop 0 0 1>,
					<&anatop 0 0 77>,
					<&anatop 0 0 100>;
			pll-clock-names = "src", "lp", "pd", "num", "den";
			pinmuxes = <&iomuxcgpr 0x4 0x100>;
			interrupts = <77 0>;
			nxp,tx-channel = <1>;
			status = "disabled";
			label = "I2S_1";
		};

		sai3: sai@4040c000 {
			compatible = "nxp,mcux-i2s";
			#address-cells = <1>;
			#size-cells = <0>;
			#pinmux-cells = <2>;
			reg = <0x4040c000 0x4000>;
			clocks = <&ccm IMX_CCM_SAI3_CLK 0x2104 4>;
			pre-div = <0>;
			podf = <63>;
			pll-clocks = <&anatop 0 0 0>,
					<&anatop 0 0 30>,
					<&anatop 0 0 1>,
					<&anatop 0 0 77>,
					<&anatop 0 0 100>;
			pll-clock-names = "src", "lp", "pd", "num", "den";
			pinmuxes = <&iomuxcgpr 0x8 0x100>;
			interrupts = <78 0>, <79 0>;
			nxp,tx-channel = <1>;
			status = "disabled";
			label = "I2S_2";
		};

		sai4: sai@40c40000 {
			compatible = "nxp,mcux-i2s";
			#address-cells = <1>;
			#size-cells = <0>;
			#pinmux-cells = <2>;
			reg = <0x40c40000 0x4000>;
			clocks = <&ccm IMX_CCM_SAI4_CLK 0x2184 6>;
			pre-div = <0>;
			podf = <63>;
			pll-clocks = <&anatop 0 0 0>,
					<&anatop 0 0 30>,
					<&anatop 0 0 1>,
					<&anatop 0 0 77>,
					<&anatop 0 0 100>;
			pll-clock-names = "src", "lp", "pd", "num", "den";
			pinmuxes = <&iomuxcgpr 0x8 0x200>;
			interrupts = <80 0>, <81 0>;
			nxp,tx-channel = <1>;
			status = "disabled";
			label = "I2S_3";
		};

	};
};

&nvic {
	arm,num-irq-priority-bits = <4>;
};

&systick {
	/*
	 * RT11xx relies by default on the GPT Timer for system clock
	 * implementation, so the SysTick node should not be enabled.
	 */
	status = "disabled";
};
