| /* |
| * Copyright 2021-22, NXP |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| |
| #include <nxp/nxp_rt11xx_cm7.dtsi> |
| #include "mimxrt1170_evk.dtsi" |
| #include <zephyr/dt-bindings/display/panel.h> |
| |
| / { |
| model = "NXP MIMXRT1170-EVK board"; |
| compatible = "nxp,mimxrt1176"; |
| |
| aliases { |
| mipi-dsi = &mipi_dsi; |
| watchdog0 = &wdog1; |
| kscan0 = &touch_controller; |
| }; |
| |
| chosen { |
| zephyr,sram = &sdram0; |
| zephyr,dtcm = &dtcm; |
| zephyr,itcm = &itcm; |
| zephyr,console = &lpuart1; |
| zephyr,shell-uart = &lpuart1; |
| zephyr,canbus = &flexcan3; |
| zephyr,flash-controller = &is25wp128; |
| zephyr,flash = &is25wp128; |
| zephyr,code-partition = &slot0_partition; |
| zephyr,display = &lcdif; |
| zephyr,keyboard-scan = &touch_controller; |
| zephyr,cpu1-region = &ocram; |
| zephyr,ipc = &mailbox_a; |
| }; |
| |
| sdram0: memory@80000000 { |
| /* Winbond W9825G6KH-5I */ |
| device_type = "memory"; |
| reg = <0x80000000 DT_SIZE_M(64)>; |
| }; |
| |
| en_mipi_display: enable-mipi-display { |
| compatible = "regulator-fixed"; |
| regulator-name = "en_mipi_display"; |
| enable-gpios = <&gpio11 16 GPIO_ACTIVE_HIGH>; |
| regulator-boot-on; |
| }; |
| }; |
| |
| &lcdif { |
| status = "okay"; |
| pixel-format = <PANEL_PIXEL_FORMAT_BGR_565>; |
| data-bus-width = "24-bit"; |
| backlight-gpios = <&gpio9 29 GPIO_ACTIVE_HIGH>; |
| width = <720>; |
| height = <1280>; |
| |
| display-timings { |
| compatible = "zephyr,panel-timing"; |
| hsync-len = <8>; |
| hfront-porch = <32>; |
| hback-porch = <32>; |
| vsync-len = <2>; |
| vfront-porch = <16>; |
| vback-porch = <14>; |
| hsync-active = <0>; |
| vsync-active = <0>; |
| de-active = <1>; |
| pixelclk-active = <0>; |
| /* |
| * Pixel clock is given by the following formula: |
| * (height + vsync-len + vfront-porch + vback-porch) * |
| * (width + hsync-len + hfront-porch + hback-porch) * frame rate |
| */ |
| clock-frequency = <62346240>; |
| }; |
| }; |
| |
| &mipi_dsi { |
| status = "okay"; |
| nxp,lcdif = <&lcdif>; |
| dpi-color-coding = "24-bit"; |
| dpi-pixel-packet = "24-bit"; |
| dpi-video-mode = "burst"; |
| dpi-bllp-mode = "low-power"; |
| autoinsert-eotp; |
| dphy-ref-frequency = <24000000>; |
| /* |
| * PHY clock is given by the following formula: |
| * (pixel clock * bits per pixel) / MIPI data lanes |
| */ |
| phy-clock = <748154880>; |
| rm68200@0 { |
| status = "okay"; |
| compatible = "raydium,rm68200"; |
| reg = <0x0>; |
| reset-gpios = <&gpio9 1 GPIO_ACTIVE_HIGH>; |
| data-lanes = <2>; |
| width = <720>; |
| height = <1280>; |
| pixel-format = <MIPI_DSI_PIXFMT_RGB565>; |
| }; |
| }; |
| |
| &lpuart1 { |
| status = "okay"; |
| current-speed = <115200>; |
| }; |
| |
| &flexcan3 { |
| status = "okay"; |
| bus-speed = <125000>; |
| |
| can-transceiver { |
| max-bitrate = <5000000>; |
| }; |
| }; |
| |
| &lpspi1 { |
| status = "okay"; |
| }; |
| |
| &lpi2c5 { |
| status = "okay"; |
| pinctrl-0 = <&pinmux_lpi2c5>; |
| pinctrl-names = "default"; |
| |
| touch_controller: gt911@5d { |
| compatible = "goodix,gt911"; |
| reg = <0x5d>; |
| irq-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; |
| reset-gpios = <&gpio9 0 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| &lpadc0 { |
| status = "okay"; |
| }; |
| |
| &usdhc1 { |
| status = "okay"; |
| detect-dat3; |
| pwr-gpios = <&gpio10 2 GPIO_ACTIVE_LOW>; |
| sdmmc { |
| compatible = "zephyr,sdmmc-disk"; |
| status = "okay"; |
| }; |
| }; |
| |
| &edma0 { |
| status = "okay"; |
| }; |
| |
| /* GPT and Systick are enabled. If power management is enabled, the GPT |
| * timer will be used instead of systick, as allows the core clock to |
| * be gated. |
| */ |
| &gpt_hw_timer { |
| status = "okay"; |
| }; |
| |
| &systick { |
| status = "okay"; |
| }; |
| |
| &wdog1 { |
| status = "okay"; |
| }; |
| |
| &enet { |
| status = "okay"; |
| int-gpios = <&gpio9 11 GPIO_ACTIVE_HIGH>; |
| reset-gpios = <&gpio12 12 GPIO_ACTIVE_HIGH>; |
| ptp { |
| status = "okay"; |
| }; |
| }; |
| |
| &sai1 { |
| status = "okay"; |
| }; |
| |
| zephyr_udc0: &usb1 { |
| status = "okay"; |
| }; |
| |
| &mailbox_a { |
| status = "okay"; |
| }; |