boards: Add MIPI support on MXRT1170 EVK

1. Add MIPI support on MXRT1170 EVK board

2. To support the 720x1280 on RT1170 EVK, we
   require more heap for the display buffers.
   Increase the heap size via HEAP_MEM_POOL_SIZE config

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This commit is contained in:
Mahesh Mahadevan 2022-02-23 15:36:49 -06:00 committed by David Leach
commit 2c11c0db54
3 changed files with 74 additions and 1 deletions

View file

@ -46,4 +46,23 @@ config ETH_MCUX_PHY_RESET
endif # NETWORKING
if DISPLAY
config MIPI_DSI
default y
# Adjust the memory pool block size for a 720x1280 display
config MCUX_ELCDIF_POOL_BLOCK_MAX
default 0x1C3000
# Memory from the heap pool is used to allocate display buffers.
# Adjust HEAP_MEM_POOL_SIZE.
config HEAP_MEM_POOL_SIZE
default 4194304
config REGULATOR
default y
endif # DISPLAY
endif # BOARD_MIMXRT1170_EVK_CM7 || BOARD_MIMXRT1170_EVK_CM4

View file

@ -125,6 +125,8 @@ features:
+-----------+------------+-------------------------------------+
| HWINFO | on-chip | Unique device serial number |
+-----------+------------+-------------------------------------+
| DISPLAY | on-chip | display |
+-----------+------------+-------------------------------------+
The default configuration can be found in the defconfig file:
``boards/arm/mimxrt1170_evk/mimxrt1170_evk_cm7_defconfig``

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2021, NXP
* Copyright 2021-22, NXP
*
* SPDX-License-Identifier: Apache-2.0
*/
@ -13,6 +13,10 @@
model = "NXP MIMXRT1170-EVK board";
compatible = "nxp,mimxrt1176";
aliases {
mipi-dsi = &mipi_dsi;
};
chosen {
zephyr,sram = &sdram0;
zephyr,dtcm = &dtcm;
@ -23,6 +27,7 @@
zephyr,flash-controller = &flexspi;
zephyr,flash = &is25wp128;
zephyr,code-partition = &slot0_partition;
zephyr,display = &lcdif;
};
sdram0: memory@80000000 {
@ -30,6 +35,53 @@
device_type = "memory";
reg = <0x80000000 DT_SIZE_M(64)>;
};
en_mipi_display: enable-mipi-display {
compatible = "regulator-fixed-sync", "regulator-fixed";
label = "en_mipi_display";
regulator-name = "en_mipi_display";
enable-gpios = <&gpio11 16 GPIO_ACTIVE_HIGH>;
regulator-boot-on;
};
};
&lcdif {
status = "okay";
width = <720>;
height = <1280>;
hsync = <8>;
hfp = <32>;
hbp = <32>;
vsync = <2>;
vfp = <16>;
vbp = <14>;
polarity = <3>;
pixel-format = "bgr-565";
data-buswidth = "24-bit";
backlight-gpios = <&gpio9 29 GPIO_ACTIVE_HIGH>;
};
&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>;
rm68200@0 {
status = "okay";
compatible = "raydium,rm68200";
reg = <0x0>;
label = "RM68200";
reset-gpios = <&gpio9 1 GPIO_ACTIVE_HIGH>;
data-lanes = <2>;
width = <720>;
height = <1280>;
pixel-format = <MIPI_DSI_PIXFMT_RGB565>;
};
};
&lpuart1 {