There is no smartdma on RT700, so to perform DCS memory write the CPU has to write APB buffer word by word, which is too slow for most applications. But the DCNano in DBI mode can be used to interface with the MIPI-DSI on RT700, and send data to MIPI-DSI to transfer, once it is properly configured, which solves the issue. First added new parameter first_write in display_buffer_descriptor to let NXP DCNano DBI driver know to use MIPI_DCS_WRITE_MEMORY_START or MIPI_DCS_WRITE_MEMORY_CONTINUE. Second updated the MCUX MIPI-DSI driver to support using the NXP DCNano DBI driver for memory write. Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
45 lines
1.2 KiB
Text
45 lines
1.2 KiB
Text
# Copyright 2022-2023 NXP
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config MIPI_DSI_MCUX
|
|
bool "NXP MCUX MIPI-DSI Host Controller"
|
|
default y
|
|
depends on DT_HAS_NXP_IMX_MIPI_DSI_ENABLED
|
|
help
|
|
NXP MIPI DSI controller driver
|
|
|
|
config MIPI_DSI_MCUX_2L
|
|
bool "NXP MCUX MIPI-DSI 2L Controller"
|
|
default y
|
|
depends on DT_HAS_NXP_MIPI_DSI_2L_ENABLED
|
|
help
|
|
NXP MIPI DSI 2L controller driver
|
|
|
|
if MIPI_DSI_MCUX_2L
|
|
|
|
config MIPI_DSI_MCUX_2L_SMARTDMA
|
|
bool "Use smartDMA controller with MIPI DSI"
|
|
default y
|
|
depends on DMA_MCUX_SMARTDMA
|
|
help
|
|
Use SMARTDMA. This accelerator will automatically
|
|
convert RGB565 input data to BGR565 (little endian to big endian),
|
|
and write it to the MIPI DSI.
|
|
|
|
config MIPI_DSI_MCUX_NXP_DCNANO_LCDIF
|
|
bool "Use NXP DCNano DBI controller with MIPI DSI"
|
|
default y
|
|
depends on DT_HAS_NXP_MIPI_DBI_DCNANO_LCDIF_ENABLED
|
|
select MIPI_DBI
|
|
help
|
|
Use DCNano DBI controller for the data transfer.
|
|
|
|
config MIPI_DSI_MCUX_2L_SWAP16
|
|
bool "Swap 16 byte color"
|
|
help
|
|
Swap 16 byte color data from little to big endian format. When
|
|
this Kconfig is enabled, the DSI expects RGB565 data in little endian
|
|
format, which will then be byte swapped.
|
|
|
|
|
|
endif # MIPI_DSI_MCUX_2L
|