/* * Copyright (c) 2017, NXP * * SPDX-License-Identifier: Apache-2.0 */ #include #include #include #include / { aliases { eth = &enet; gpio-1 = &gpio1; gpio-2 = &gpio2; gpio-3 = &gpio3; gpio-4 = &gpio4; gpio-5 = &gpio5; i2c-1 = &lpi2c1; i2c-2 = &lpi2c2; i2c-3 = &lpi2c3; i2c-4 = &lpi2c4; spi-1 = &lpspi1; spi-2 = &lpspi2; spi-3 = &lpspi3; spi-4 = &lpspi4; uart-1 = &lpuart1; uart-2 = &lpuart2; uart-3 = &lpuart3; uart-4 = &lpuart4; uart-5 = &lpuart5; uart-6 = &lpuart6; uart-7 = &lpuart7; uart-8 = &lpuart8; usbd-1 = &usb1; usbd-2 = &usb2; }; chosen { zephyr,entropy = &trng; }; cpus { #address-cells = <1>; #size-cells = <0>; cpu@0 { device_type = "cpu"; compatible = "arm,cortex-m7"; reg = <0>; #address-cells = <1>; #size-cells = <1>; mpu: mpu@e000ed90 { compatible = "arm,armv7m-mpu"; reg = <0xe000ed90 0x40>; arm,num-mpu-regions = <16>; }; }; }; sysclk: system-clock { compatible = "fixed-clock"; clock-frequency = <600000000>; #clock-cells = <0>; }; soc { flexram: flexram@400b0000 { compatible = "nxp,imx-flexram"; reg = <0x400b0000 0x4000>; interrupts = <38 0>; #address-cells = <1>; #size-cells = <1>; itcm: itcm@0 { compatible = "nxp,imx-itcm"; reg = <0x00000000 0x20000>; }; dtcm: dtcm@20000000 { compatible = "nxp,imx-dtcm"; reg = <0x20000000 0x20000>; }; ocram: ocram@20200000 { compatible = "mmio-sram"; reg = <0x20200000 0x40000>; }; }; flexspi: spi@402a8000 { compatible = "nxp,imx-flexspi"; reg = <0x402a8000 0x4000>; interrupts = <108 0>; label = "FLEXSPI"; #address-cells = <1>; #size-cells = <0>; }; flexspi2: spi@402a4000 { compatible = "nxp,imx-flexspi"; reg = <0x402a4000 0x4000>; interrupts = <107 0>; label = "FLEXSPI1"; #address-cells = <1>; #size-cells = <0>; }; semc: semc0@402f0000 { compatible = "nxp,imx-semc"; reg = <0x402f0000 0x4000>; interrupts = <109 0>; label = "SEMC0"; #address-cells = <1>; #size-cells = <1>; }; gpt1: gpt@401ec000 { compatible = "nxp,imx-gpt"; reg = <0x401ec000 0x4000>; interrupts = <100 0>; label = "GPT1"; }; gpt2: gpt@401f0000 { compatible = "nxp,imx-gpt"; reg = <0x401f0000 0x4000>; interrupts = <101 0>; label = "GPT2"; }; ccm: ccm@400fc000 { compatible = "nxp,imx-ccm"; reg = <0x400fc000 0x4000>; label = "CCM"; #clock-cells = <3>; }; gpio1: gpio@401b8000 { compatible = "nxp,imx-gpio"; reg = <0x401b8000 0x4000>; interrupts = <80 0>, <81 0>; label = "GPIO_1"; gpio-controller; #gpio-cells = <2>; }; gpio2: gpio@401bc000 { compatible = "nxp,imx-gpio"; reg = <0x401bc000 0x4000>; interrupts = <82 0>, <83 0>; label = "GPIO_2"; gpio-controller; #gpio-cells = <2>; }; gpio3: gpio@401c0000 { compatible = "nxp,imx-gpio"; reg = <0x401c0000 0x4000>; interrupts = <84 0>, <85 0>; label = "GPIO_3"; gpio-controller; #gpio-cells = <2>; }; gpio4: gpio@401c4000 { compatible = "nxp,imx-gpio"; reg = <0x401c4000 0x4000>; interrupts = <86 0>, <87 0>; label = "GPIO_4"; gpio-controller; #gpio-cells = <2>; }; gpio5: gpio@400c0000 { compatible = "nxp,imx-gpio"; reg = <0x400c0000 0x4000>; interrupts = <88 0>, <89 0>; label = "GPIO_5"; gpio-controller; #gpio-cells = <2>; }; lpi2c1: i2c@403f0000 { compatible = "nxp,imx-lpi2c"; clock-frequency = ; #address-cells = <1>; #size-cells = <0>; reg = <0x403f0000 0x4000>; interrupts = <28 0>; clocks = <&ccm IMX_CCM_LPI2C_CLK 0x70 6>; label = "I2C_1"; status = "disabled"; }; lpi2c2: i2c@403f4000 { compatible = "nxp,imx-lpi2c"; clock-frequency = ; #address-cells = <1>; #size-cells = <0>; reg = <0x403f4000 0x4000>; interrupts = <29 0>; clocks = <&ccm IMX_CCM_LPI2C_CLK 0x70 8>; label = "I2C_2"; status = "disabled"; }; lpi2c3: i2c@403f8000 { compatible = "nxp,imx-lpi2c"; clock-frequency = ; #address-cells = <1>; #size-cells = <0>; reg = <0x403f8000 0x4000>; interrupts = <30 0>; clocks = <&ccm IMX_CCM_LPI2C_CLK 0x70 10>; label = "I2C_3"; status = "disabled"; }; lpi2c4: i2c@403fc000 { compatible = "nxp,imx-lpi2c"; clock-frequency = ; #address-cells = <1>; #size-cells = <0>; reg = <0x403fc000 0x4000>; interrupts = <31 0>; clocks = <&ccm IMX_CCM_LPI2C_CLK 0x80 24>; label = "I2C_4"; status = "disabled"; }; iomuxc: iomuxc@401f8000 { reg = <0x401f8000 0x4000>; label = "PINMUX_0"; }; lcdif: display-controller@402b8000 { compatible = "fsl,imx6sx-lcdif"; reg = <0x402b8000 0x4000>; interrupts = <42 0>; label = "ELCDIF_1"; status = "disabled"; }; lpspi1: spi@40394000 { compatible = "nxp,imx-lpspi"; reg = <0x40394000 0x4000>; interrupts = <32 3>; label = "SPI_1"; status = "disabled"; clocks = <&ccm IMX_CCM_LPSPI_CLK 0x6c 0>; #address-cells = <1>; #size-cells = <0>; }; lpspi2: spi@40398000 { compatible = "nxp,imx-lpspi"; reg = <0x40398000 0x4000>; interrupts = <33 3>; label = "SPI_2"; status = "disabled"; clocks = <&ccm IMX_CCM_LPSPI_CLK 0x6c 2>; #address-cells = <1>; #size-cells = <0>; }; lpspi3: spi@4039c000 { compatible = "nxp,imx-lpspi"; reg = <0x4039c000 0x4000>; interrupts = <34 3>; label = "SPI_3"; status = "disabled"; clocks = <&ccm IMX_CCM_LPSPI_CLK 0x6c 4>; #address-cells = <1>; #size-cells = <0>; }; lpspi4: spi@403a0000 { compatible = "nxp,imx-lpspi"; reg = <0x403a0000 0x4000>; interrupts = <35 3>; label = "SPI_4"; status = "disabled"; clocks = <&ccm IMX_CCM_LPSPI_CLK 0x6c 6>; #address-cells = <1>; #size-cells = <0>; }; lpuart1: uart@40184000 { compatible = "nxp,kinetis-lpuart"; reg = <0x40184000 0x4000>; interrupts = <20 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x7c 24>; label = "UART_1"; status = "disabled"; }; lpuart2: uart@40188000 { compatible = "nxp,kinetis-lpuart"; reg = <0x40188000 0x4000>; interrupts = <21 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x68 28>; label = "UART_2"; status = "disabled"; }; lpuart3: uart@4018c000 { compatible = "nxp,kinetis-lpuart"; reg = <0x4018c000 0x4000>; interrupts = <22 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x68 12>; label = "UART_3"; status = "disabled"; }; lpuart4: uart@40190000 { compatible = "nxp,kinetis-lpuart"; reg = <0x40190000 0x4000>; interrupts = <23 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x6c 24>; label = "UART_4"; status = "disabled"; }; lpuart5: uart@40194000 { compatible = "nxp,kinetis-lpuart"; reg = <0x40194000 0x4000>; interrupts = <24 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x74 2>; label = "UART_5"; status = "disabled"; }; lpuart6: uart@40198000 { compatible = "nxp,kinetis-lpuart"; reg = <0x40198000 0x4000>; interrupts = <25 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x74 6>; label = "UART_6"; status = "disabled"; }; lpuart7: uart@4019c000 { compatible = "nxp,kinetis-lpuart"; reg = <0x4019c000 0x4000>; interrupts = <26 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x7c 26>; label = "UART_7"; status = "disabled"; }; lpuart8: uart@401a0000 { compatible = "nxp,kinetis-lpuart"; reg = <0x401a0000 0x4000>; interrupts = <27 0>; clocks = <&ccm IMX_CCM_LPUART_CLK 0x80 14>; label = "UART_8"; status = "disabled"; }; flexpwm1: flexpwm@403dc000 { compatible = "nxp,flexpwm"; reg = <0x403dc000 0x4000>; interrupts = <106 0>; flexpwm1_pwm0: pwm0 { compatible = "nxp,imx-pwm"; index = <0>; label = "FLEXPWM1_PWM0"; interrupts = <102 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm1_pwm1: pwm1 { compatible = "nxp,imx-pwm"; index = <1>; label = "FLEXPWM1_PWM1"; interrupts = <103 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm1_pwm2: pwm2 { compatible = "nxp,imx-pwm"; index = <2>; label = "FLEXPWM1_PWM2"; interrupts = <104 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm1_pwm3: pwm3 { compatible = "nxp,imx-pwm"; index = <3>; label = "FLEXPWM1_PWM3"; interrupts = <105 0>; #pwm-cells = <1>; status = "disabled"; }; }; flexpwm2: flexpwm@403e0000 { compatible = "nxp,flexpwm"; reg = <0x403e0000 0x4000>; interrupts = <141 0>; flexpwm2_pwm0: pwm0 { compatible = "nxp,imx-pwm"; index = <0>; label = "FLEXPWM2_PWM0"; interrupts = <137 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm2_pwm1: pwm1 { compatible = "nxp,imx-pwm"; index = <1>; label = "FLEXPWM2_PWM1"; interrupts = <138 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm2_pwm2: pwm2 { compatible = "nxp,imx-pwm"; index = <2>; label = "FLEXPWM2_PWM2"; interrupts = <139 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm2_pwm3: pwm3 { compatible = "nxp,imx-pwm"; index = <3>; label = "FLEXPWM2_PWM3"; interrupts = <140 0>; #pwm-cells = <1>; status = "disabled"; }; }; flexpwm3: flexpwm@403e4000 { compatible = "nxp,flexpwm"; reg = <0x403e4000 0x4000>; interrupts = <146 0>; flexpwm3_pwm0: pwm0 { compatible = "nxp,imx-pwm"; index = <0>; label = "FLEXPWM3_PWM0"; interrupts = <142 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm3_pwm1: pwm1 { compatible = "nxp,imx-pwm"; index = <1>; label = "FLEXPWM3_PWM1"; interrupts = <143 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm3_pwm2: pwm2 { compatible = "nxp,imx-pwm"; index = <2>; label = "FLEXPWM3_PWM2"; interrupts = <144 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm3_pwm3: pwm3 { compatible = "nxp,imx-pwm"; index = <3>; label = "FLEXPWM3_PWM3"; interrupts = <145 0>; #pwm-cells = <1>; status = "disabled"; }; }; flexpwm4: flexpwm@403e8000 { compatible = "nxp,flexpwm"; reg = <0x403e8000 0x4000>; interrupts = <151 0>; flexpwm4_pwm0: pwm0 { compatible = "nxp,imx-pwm"; index = <0>; label = "FLEXPWM4_PWM0"; interrupts = <147 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm4_pwm1: pwm1 { compatible = "nxp,imx-pwm"; index = <1>; label = "FLEXPWM4_PWM1"; interrupts = <148 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm4_pwm2: pwm2 { compatible = "nxp,imx-pwm"; index = <2>; label = "FLEXPWM4_PWM2"; interrupts = <149 0>; #pwm-cells = <1>; status = "disabled"; }; flexpwm4_pwm3: pwm3 { compatible = "nxp,imx-pwm"; index = <3>; label = "FLEXPWM4_PWM3"; interrupts = <150 0>; #pwm-cells = <1>; status = "disabled"; }; }; enet: ethernet@402d8000 { compatible = "nxp,kinetis-ethernet"; reg = <0x402D8000 0x628>; interrupts = <114 0>; interrupt-names = "COMMON"; status = "disabled"; label = "ETH_0"; ptp { compatible = "nxp,kinetis-ptp"; status = "disabled"; interrupts = <115 0>; interrupt-names = "IEEE1588_TMR"; }; }; trng: random@400cc000 { compatible = "nxp,kinetis-trng"; reg = <0x400cc000 0x4000>; status = "okay"; interrupts = <53 0>; label = "TRNG"; }; usb1: usbd@402e0000 { compatible = "nxp,kinetis-usbd"; reg = <0x402E0000 0x200>; interrupts = <113 1>; interrupt-names = "usb_otg"; clocks = <&sysclk>; num-bidir-endpoints = <8>; maximum-speed = "full-speed"; status = "disabled"; label = "USBD_1"; }; usb2: usbd@402e0200 { compatible = "nxp,kinetis-usbd"; reg = <0x402E0200 0x200>; interrupts = <112 1>; interrupt-names = "usb_otg"; num-bidir-endpoints = <8>; maximum-speed = "full-speed"; status = "disabled"; label = "USBD_2"; }; usdhc1: usdhc@402c0000 { compatible = "nxp,imx-usdhc"; reg = <0x402c0000 0x4000>; status = "disabled"; interrupts = <110 0>; clocks = <&ccm IMX_CCM_USDHC1_CLK 0 0>; label = "USDHC_1"; }; usdhc2: usdhc@402c4000 { compatible = "nxp,imx-usdhc"; reg = <0x402c4000 0x4000>; status = "disabled"; interrupts = <111 0>; clocks = <&ccm IMX_CCM_USDHC2_CLK 0 0>; label = "USDHC_2"; }; csi: csi@402bc000 { compatible = "nxp,imx-csi"; reg = <0x402BC000 0x4000>; interrupts = <43 1>; status = "disabled"; label = "CSI"; }; edma0: dma-controller@400e8000 { #dma-cells = <2>; compatible = "nxp,mcux-edma"; dma-channels = <32>; dma-requests = <128>; nxp,mem2mem; nxp,a_on; reg = <0x400E8000 0x4000>, <0x400EC000 0x4000>; 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>; clocks = <&ccm IMX_CCM_EDMA_CLK 0x7C 0x000000C0>; status = "disabled"; label = "EDMA0"; }; }; }; &nvic { arm,num-irq-priority-bits = <4>; };