boards: nxp: rd_rw612_bga: add support for LCDIC
Enable support for LCDIC on rd_rw612_bga. This support also enables acceleration features such as DMA for LVGL, to improve performance Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
This commit is contained in:
parent
049b2d8620
commit
b530202871
4 changed files with 53 additions and 0 deletions
33
boards/nxp/rd_rw612_bga/Kconfig.defconfig
Normal file
33
boards/nxp/rd_rw612_bga/Kconfig.defconfig
Normal file
|
@ -0,0 +1,33 @@
|
|||
# RD_RW612_BGA board
|
||||
|
||||
# Copyright 2022-2024 NXP
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if BOARD_RD_RW612_BGA
|
||||
|
||||
if LVGL
|
||||
|
||||
# Enable DMA for LCDIC
|
||||
config MIPI_DBI_NXP_LCDIC_DMA
|
||||
default y if MIPI_DBI
|
||||
|
||||
# Increase descriptor count. LVGL will allocate a 30KB buffer,
|
||||
# and the SPI driver sets up RX and TX side. Since LPC DMA has
|
||||
# 1KB limit per descriptor, we need 60
|
||||
config DMA_MCUX_LPC_NUMBER_OF_DESCRIPTORS
|
||||
default 60
|
||||
|
||||
# Allocate buffer that is 10% of screen size
|
||||
config LV_Z_VDB_SIZE
|
||||
default 10
|
||||
|
||||
# Enable double buffering and offloaded render thread to improve performance
|
||||
config LV_Z_DOUBLE_VDB
|
||||
default y
|
||||
|
||||
config LV_Z_FLUSH_THREAD
|
||||
default y
|
||||
|
||||
endif # LVGL
|
||||
|
||||
endif # BOARD_RD_RW612_BGA
|
|
@ -51,6 +51,8 @@ Supported Features
|
|||
+-----------+------------+-----------------------------------+
|
||||
| DMIC | on-chip | dmic |
|
||||
+-----------+------------+-----------------------------------+
|
||||
| LCDIC | on-chip | mipi-dbi |
|
||||
+-----------+------------+-----------------------------------+
|
||||
| WWDT | on-chip | watchdog |
|
||||
+-----------+------------+-----------------------------------+
|
||||
| CTIMER | on-chip | counter |
|
||||
|
|
|
@ -42,6 +42,18 @@
|
|||
};
|
||||
};
|
||||
|
||||
pinmux_lcdic: pinmux_lcdic {
|
||||
group0 {
|
||||
pinmux = <IO_MUX_LCD_SPI_IO44>,
|
||||
<IO_MUX_LCD_SPI_IO45>,
|
||||
<IO_MUX_LCD_SPI_IO46>,
|
||||
<IO_MUX_LCD_SPI_IO47>,
|
||||
<IO_MUX_LCD_SPI_IO48>,
|
||||
<IO_MUX_LCD_SPI_IO49>;
|
||||
slew-rate = "ultra";
|
||||
};
|
||||
};
|
||||
|
||||
pinmux_flexspi: pinmux_flexspi {
|
||||
group0 {
|
||||
pinmux = <IO_MUX_QUAD_SPI_FLASH_IO28
|
||||
|
|
|
@ -203,6 +203,12 @@ arduino_i2c: &flexcomm2 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&lcdic {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pinmux_lcdic>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&mrt0_channel0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue