Introduce GPIO-based driver for MIPI DBI class that allows MIPI DBI type A and B displays to be used on general platforms. Since each data pin GPIO can be selected individually, the bus pins are set in a loop, which has a significant negative impact on performance. When using 8-bit mode and all the data GPIO pins are on the same port, a look-up table is generated to set the whole port at once as a performance optimization. This creates a ROM overhead of about 1 kiB. Tested 8-bit 8080 mode with ILI9486 display on nRF52840-DK board. Signed-off-by: Stefan Gloor <code@stefan-gloor.ch>
32 lines
760 B
Plaintext
32 lines
760 B
Plaintext
# MIPI DBI controller options
|
|
|
|
# Copyright 2023 NXP
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig MIPI_DBI
|
|
bool "MIPI-DBI Host Controller drivers [EXPERIMENTAL]"
|
|
select EXPERIMENTAL
|
|
help
|
|
Add support for MIPI-DBI compliant host controllers
|
|
|
|
if MIPI_DBI
|
|
|
|
module = MIPI_DBI
|
|
module-str = mipi_dbi
|
|
source "subsys/logging/Kconfig.template.log_config"
|
|
|
|
config MIPI_DBI_INIT_PRIORITY
|
|
int "Initialization priority"
|
|
default 80
|
|
help
|
|
MIPI-DBI Host Controllers initialization priority.
|
|
|
|
source "drivers/mipi_dbi/Kconfig.spi"
|
|
source "drivers/mipi_dbi/Kconfig.bitbang"
|
|
source "drivers/mipi_dbi/Kconfig.smartbond"
|
|
source "drivers/mipi_dbi/Kconfig.nxp_lcdic"
|
|
source "drivers/mipi_dbi/Kconfig.nxp_flexio_lcdif"
|
|
source "drivers/mipi_dbi/Kconfig.stm32_fmc"
|
|
|
|
endif
|