e09a79ece9
Add configuration and driver support for the SSD1681 1.54 inch e-paper display, including the necessary waveforms and settings for proper operation. This extends the existing SSD1680 e-paper driver to accommodate the new display module. The changes involve updates to the Kconfig file for additional configuration options, modifications to the driver implementation in ssd1680.c to include SSD1681 specific logic, and updates to the header file ssd1680.h to reflect the added support. Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
1821 lines
42 KiB
Plaintext
1821 lines
42 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
menu "LCD Driver Support"
|
|
|
|
menuconfig LCD
|
|
bool "Graphic LCD Driver Support"
|
|
default n
|
|
---help---
|
|
Drivers for parallel and serial LCD and OLED type devices. These
|
|
drivers support interfaces as defined in include/nuttx/lcd/lcd.h
|
|
|
|
This selection is necessary to enable support for LCD drivers in
|
|
drivers/lcd as well as for board-specific LCD drivers in the boards/
|
|
subdirectories.
|
|
|
|
if LCD
|
|
|
|
config LCD_PACKEDMSFIRST
|
|
bool
|
|
default n
|
|
|
|
comment "Common Graphic LCD Settings"
|
|
|
|
config LCD_DEV
|
|
bool "LCD character device"
|
|
default n
|
|
---help---
|
|
This option enables support for a character driver which exposes
|
|
LCD operations to userspace via ioctl() commands. This is useful when
|
|
not using NXGraphics but an alternative graphics library such as LVGL.
|
|
|
|
config LCD_FRAMEBUFFER
|
|
bool "LCD framebuffer front end"
|
|
default n
|
|
select FB_UPDATE
|
|
---help---
|
|
Enable a "front end" that converts an sequential LCD driver into a
|
|
standard, NuttX frame buffer driver.
|
|
|
|
NOTE: Some LCD drivers implement an internal framebuffer for
|
|
efficiency reasons but do not export a framebuffer interface. So
|
|
those LCD cannot be used as framebuffer drivers. If the option is
|
|
available, then such internal framebuffer support should be
|
|
disabled because this external common framebuffer interface will
|
|
provide the necessary buffering.
|
|
|
|
config LCD_EXTERNINIT
|
|
bool "External LCD Initialization"
|
|
default n
|
|
depends on LCD_FRAMEBUFFER
|
|
---help---
|
|
Define to support external LCD initialization by platform-specific
|
|
code. If this option is defined, then the LCD framebuffer
|
|
emulation will call board_graphics_setup() to initialize the
|
|
graphics device. This option is necessary if display is used that
|
|
cannot be initialized using the standard LCD interfaces.
|
|
|
|
menu "LCD driver selection"
|
|
|
|
config LCD_NOGETRUN
|
|
bool "Write-only LCD"
|
|
default n
|
|
---help---
|
|
Many LCD hardware interfaces provide only minimal graphics capability. In
|
|
particularly, many simple LCD interfaces are write only. That is we, can
|
|
write graphics data to the LCD device memory, but we cannot read it back.
|
|
If the LCD hardware does not support reading the graphics memory, then
|
|
this option should be defined so that the NX layer can taking alternative
|
|
measures when the LCD is not readable. For example, if the LCD is not
|
|
readable, then NX will not attempt to support transparency.
|
|
|
|
See also NX_WRITEONLY in the graphics support menu.
|
|
|
|
config LCD_MAXCONTRAST
|
|
int "LCD maximum contrast"
|
|
default 31 if AQM_1248A
|
|
default 63 if LCD_SHARP_MEMLCD
|
|
default 255 if LCD_P14201 || LCD_LCD1602
|
|
default 63
|
|
range 1 255
|
|
---help---
|
|
must be 63 with the Epson controller and 127 with
|
|
the Phillips controller.
|
|
|
|
config LCD_MAXPOWER
|
|
int "LCD maximum power"
|
|
default 255 if LCD_LCD1602
|
|
default 1
|
|
range 1 255
|
|
---help---
|
|
Maximum value of LCD power setting. This normally equates to brightness:
|
|
The brighter the screen, the high the power usage.
|
|
|
|
On LCDs that have a backlight, this value corresponds directly to that
|
|
backlight setting. Board-specific logic may place restrictions on this
|
|
value.
|
|
|
|
comment "Graphic LCD Devices"
|
|
|
|
config LCD_APA102
|
|
bool "APA102 RGB LED MATRIX as LCD"
|
|
depends on SPI
|
|
default n
|
|
|
|
if LCD_APA102
|
|
config LCD_APA102_XRES
|
|
int "APA102 X Resolution"
|
|
default 16
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_APA102_YRES
|
|
int "APA102 Y Resolution"
|
|
default 16
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_APA102_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
|
|
endif # LCD_APA102
|
|
|
|
config LCD_P14201
|
|
bool "Rit P1402 series display"
|
|
default n
|
|
---help---
|
|
p14201.c. Driver for RiT P14201 series display with SD1329 IC
|
|
controller. This OLED is used with older versions of the
|
|
TI/Luminary LM3S8962 Evaluation Kit.
|
|
|
|
if LCD_P14201
|
|
config P14201_NINTERFACES
|
|
int "Number of physical P14201 devices"
|
|
default 1
|
|
range 1 1
|
|
---help---
|
|
Specifies the number of physical P14201
|
|
devices that will be supported.
|
|
|
|
config P14201_SPIMODE
|
|
int "SPI mode"
|
|
default 2
|
|
range 0 3
|
|
---help---
|
|
Controls the SPI mode
|
|
|
|
config P14201_FREQUENCY
|
|
int "SPI frequency"
|
|
default 1000000
|
|
---help---
|
|
Define to use a different bus frequency,FIXME DEFAULT VALUE OK?
|
|
|
|
config P14201_FRAMEBUFFER
|
|
bool "Enable P14201 GDDRAM cache"
|
|
default y
|
|
---help---
|
|
If defined, accesses will be performed
|
|
using an in-memory copy of the OLEDs GDDRAM. This cost of this
|
|
buffer is 128 * 96 / 2 = 6Kb. If this is defined, then the driver
|
|
will be fully functional. If not, then it will have the following
|
|
limitations:
|
|
|
|
Reading graphics memory cannot be supported, and
|
|
|
|
All pixel writes must be aligned to byte boundaries.
|
|
The latter limitation effectively reduces the 128x96 display to 64x96.
|
|
|
|
NOTE: This option should not be used if CONFIG_LCD_FRAMBEBUFFER is
|
|
enabled. That options provides for a more generalized, external
|
|
LCD framebuffer. This internal framebuffer support should not be
|
|
enabled with CONFIG_LCD_FRAMBEBUFFER because this external common
|
|
framebuffer interface will provide the necessary buffering.
|
|
endif # LCD_P14201
|
|
|
|
config LCD_MAX7219
|
|
bool "Matrix of 8x8 LEDs controlled by MAX7219"
|
|
default n
|
|
---help---
|
|
Matrix of LEDs (8x8) controlled by MAX7219.
|
|
You can use cluster of 8x8 chained together.
|
|
|
|
if LCD_MAX7219
|
|
|
|
config MAX7219_NHORIZONTALBLKS
|
|
int "Number of 8x8 LEDs matrices in the horizontal (width)!"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical 8x8 LED matrices that are
|
|
connected together in the horizontal. In fact we have only
|
|
a single strip, but it can be arranged in blocks creating
|
|
physically horizontal/vertical columns/rows.
|
|
|
|
config MAX7219_NVERTICALBLKS
|
|
int "Number of 8x8 LEDs matrices in the vertical (height)!"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical 8x8 LED matrices that are
|
|
connected together in the vertical. In fact we have only
|
|
a single strip, but it can be arranged in blocks creating
|
|
physically horizontal/vertical columns/rows.
|
|
|
|
config MAX7219_INTENSITY
|
|
int "Default LED Matrix bright intensity"
|
|
default 10
|
|
range 0 15
|
|
---help---
|
|
Specifies the default LEDs bright intensity to use.
|
|
|
|
endif # LCD_MAX7219
|
|
|
|
config LCD_MIO283QT2
|
|
bool "MIO283QT-2 TFT LCD Display Module"
|
|
default n
|
|
---help---
|
|
OLED Display Module, MIO283QT-2, Multi-Inno Technology, Co.
|
|
based on the Himax HX8347-D LCD controller.
|
|
|
|
config LCD_MIO283QT9A
|
|
bool "MIO283QT-9A TFT LCD Display Module"
|
|
default n
|
|
---help---
|
|
Selects the driver for the MI0283QT-9A LCD from Multi-Inno
|
|
Technology Co., Ltd. This LCD is based on the Ilitek ILI9341
|
|
LCD controller.
|
|
|
|
config LCD_UG9664HSWAG01
|
|
bool "UG-9664HSWAG01 OLED Display Module"
|
|
default n
|
|
depends on SPI
|
|
---help---
|
|
OLED Display Module, UG-9664HSWAG01, Univision Technology Inc. Used
|
|
with the LPCXpresso and Embedded Artists base board.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
if LCD_UG9664HSWAG01
|
|
|
|
config UG9664HSWAG01_SPIMODE
|
|
int "UG-9664HSWAG01 SPI Mode"
|
|
default 0
|
|
range 0 3
|
|
---help---
|
|
Controls the SPI mode
|
|
|
|
config UG9664HSWAG01_FREQUENCY
|
|
int "UG-9664HSWAG01 SPI Frequency"
|
|
default 3500000
|
|
---help---
|
|
Define to use a different bus frequency
|
|
|
|
config UG9664HSWAG01_NINTERFACES
|
|
int "Number of UG-9664HSWAG01 Devices"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical UG-9664HSWAG01 devices that will be
|
|
supported. NOTE: At present, this must be undefined or defined to be 1.
|
|
|
|
config UG9664HSWAG01_POWER
|
|
bool "Power control"
|
|
default n
|
|
---help---
|
|
If the hardware supports a controllable OLED a power supply, this
|
|
configuration should be defined. In this case the system must
|
|
provide an interface ug_power().
|
|
|
|
endif # LCD_UG9664HSWAG01
|
|
|
|
config LCD_SH1106_OLED_132
|
|
bool "Generic 0.96'' OLED Display Module (SH1106/SSD1306)"
|
|
default n
|
|
select LCD_SSD1306
|
|
---help---
|
|
0.96'' OLED Display Module, featuring an SH1106, typically advertised as
|
|
SSD1306. Mostly similar to "UG2864HSWEG01" although it uses the full
|
|
132x28 pixels.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
config LCD_UG2864HSWEG01
|
|
bool "UG-2864HSWEG01 OLED Display Module (SSD1306)"
|
|
default n
|
|
select LCD_SSD1306
|
|
---help---
|
|
OLED Display Module, UG-2864HSWEG01, Univision Technology Inc based
|
|
on the Solomon Tech SSD1306 LCD controller.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
config LCD_UG2832HSWEG04
|
|
bool "UG-2832HSWEG04 OLED Display Module (SSD1306)"
|
|
default n
|
|
select LCD_SSD1306
|
|
---help---
|
|
OLED Display Module, UG-UG2832HSWEG04, Univision Technology Inc
|
|
based on the Solomon Tech SSD1306 LCD controller. Used with the
|
|
Atmel SAM4L Xplained Pro board on the OLED1 module.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
config LCD_DD12864WO4A
|
|
bool "DD-12864WO-4A OLED Display Module"
|
|
default n
|
|
select LCD_SSD1306
|
|
select SPI_CMDDATA
|
|
---help---
|
|
OLED Display Module, DD-12864WO-4A, Densitron Technologies
|
|
based on the Solomon Tech SSD1309 LCD controller. Used with the
|
|
ThingseeOne board.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
config LCD_HILETGO
|
|
bool "HiletGO 128x64 OLED"
|
|
default n
|
|
select LCD_SSD1306
|
|
select SPI_CMDDATA
|
|
---help---
|
|
HiletGo 129x64 OLED Display Module, featuring an SSD1306.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
config LCD_SSD1306_CUSTOM
|
|
bool "Custom SSD1306-controlled OLED Display Module"
|
|
default n
|
|
select LCD_SSD1306
|
|
---help---
|
|
Custom OLED Display Module,
|
|
controlled by the Solomon Tech SSD1306 LCD controller.
|
|
|
|
if LCD_SSD1306_CUSTOM
|
|
|
|
config LCD_SSD1306_CUSTOM_DEV_NATIVE_XRES
|
|
int "Custom LCD native X-resolution"
|
|
default 128
|
|
|
|
config LCD_SSD1306_CUSTOM_DEV_NATIVE_YRES
|
|
int "Custom LCD native Y-resolution"
|
|
default 32
|
|
|
|
config LCD_SSD1306_CUSTOM_DEV_XOFFSET
|
|
int "Custom LCD X-offset"
|
|
default 0
|
|
|
|
config LCD_SSD1306_CUSTOM_DEV_PAGES
|
|
int "Custom LCD number of pages"
|
|
default 4
|
|
|
|
config LCD_SSD1306_CUSTOM_DEV_CMNPAD
|
|
int "Custom LCD COM configuration (cmnpad)"
|
|
default 2
|
|
|
|
endif # LCD_SSD1306_CUSTOM
|
|
|
|
config LCD_SSD1306
|
|
bool
|
|
|
|
if LCD_SSD1306
|
|
|
|
config SSD1306_NUMDEVS
|
|
int "Number of SSD1306 displays"
|
|
range 1 256
|
|
default 1
|
|
---help---
|
|
Specifies the number of SSD1306 devices present on the respective board.
|
|
Currently only multiple displays of the same type are supported.
|
|
|
|
choice
|
|
prompt "SSD1306 Interface"
|
|
default LCD_SSD1306_SPI
|
|
|
|
config LCD_SSD1306_SPI
|
|
bool "SSD1306 on SPI Interface"
|
|
select SPI
|
|
---help---
|
|
Enables support for the SPI interface.
|
|
|
|
config LCD_SSD1306_I2C
|
|
bool "SSD1306 on I2C Interface"
|
|
select I2C
|
|
---help---
|
|
Enables support for the I2C interface
|
|
|
|
endchoice # SSD1306 Interface
|
|
endif # LCD_SSD1306
|
|
|
|
if LCD_SSD1306_SPI
|
|
|
|
config SSD1306_SPIMODE
|
|
int "SSD1306 SPI Mode"
|
|
default 0 if !LCD_DD12864WO4A
|
|
default 3 if LCD_DD12864WO4A
|
|
range 0 3
|
|
---help---
|
|
Selects the SPI mode used with the SSD1306 device
|
|
|
|
config SSD1306_FREQUENCY
|
|
int "SSD1306 SPI Frequency"
|
|
default 3500000 if !LCD_DD12864WO4A
|
|
default 10000000 if LCD_DD12864WO4A
|
|
---help---
|
|
Selects the SPI bus frequency used with the SSD1306 device
|
|
|
|
endif # LCD_SSD1306_SPI
|
|
|
|
if LCD_SSD1306_I2C
|
|
|
|
config SSD1306_I2CADDR
|
|
int "SSD1306 I2C Address"
|
|
default 60
|
|
---help---
|
|
7-bit I2C Address of SSD1306. Typical addresses are 0x3c (60) or
|
|
0x3d (61). NOTE that these correspond to the 8-bit addresses
|
|
0x78 or 0x7a that you may see in documentation.
|
|
|
|
config SSD1306_I2CFREQ
|
|
int "SSD1306 I2C Frequency"
|
|
default 400000
|
|
---help---
|
|
I2C Frequency to communicate with SSD1306
|
|
|
|
endif # LCD_SSD1306_I2C
|
|
|
|
config SSD1306_POWEROFF_RECONFIGURE
|
|
bool "Reconfigure SSD1306 after power off"
|
|
default n
|
|
---help---
|
|
Forces a (re)configuration of the SSD1306 after calling power off.
|
|
|
|
config LCD_SSD1351
|
|
bool "SSD1351 OLED Display Module"
|
|
default n
|
|
---help---
|
|
OLED Display Module, SSD1351, Solomon Systech.
|
|
|
|
if LCD_SSD1351
|
|
|
|
choice
|
|
prompt "SSD1351 Interface"
|
|
default SSD1351_SPI4WIRE
|
|
|
|
config SSD1351_PARALLEL8BIT
|
|
bool "8-bit Parallel Interface"
|
|
---help---
|
|
Enables support for the 8-bit parallel interface.
|
|
|
|
config SSD1351_SPI3WIRE
|
|
bool "3-wire SPI Interface"
|
|
select SPI
|
|
---help---
|
|
Enables support for the 3-wire SPI interface.
|
|
|
|
config SSD1351_SPI4WIRE
|
|
bool "4-wire SPI Interface"
|
|
select SPI
|
|
select SPI_CMDDATA
|
|
---help---
|
|
Enables support for the 4-wire SPI interface.
|
|
|
|
endchoice # SSD1351 Interface
|
|
|
|
if SSD1351_SPI3WIRE || SSD1351_SPI4WIRE
|
|
|
|
config SSD1351_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
range 0 3
|
|
---help---
|
|
Specifies the SPI mode.
|
|
|
|
config SSD1351_SPIFREQ
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
---help---
|
|
Specifies the SPI frequency.
|
|
|
|
endif
|
|
|
|
config SSD1351_NINTERFACES
|
|
int "Number of SSD1351 Devices"
|
|
default 1
|
|
range 1 1
|
|
---help---
|
|
Specifies the number of physical SSD1351 devices that will
|
|
be supported.
|
|
|
|
config SSD1351_XRES
|
|
int "X Resolution"
|
|
default 128
|
|
range 1 128
|
|
---help---
|
|
Specifies the X resolution of the display.
|
|
|
|
config SSD1351_YRES
|
|
int "Y Resolution"
|
|
default 128
|
|
range 1 128
|
|
---help---
|
|
Specifies the Y resolution of the display.
|
|
|
|
config SSD1351_MIRRORX
|
|
bool "Mirror X"
|
|
default n
|
|
---help---
|
|
Mirrors the display along the X axis.
|
|
|
|
config SSD1351_MIRRORY
|
|
bool "Mirror Y"
|
|
default n
|
|
---help---
|
|
Mirrors the display along the Y axis.
|
|
|
|
config SSD1351_INVERT
|
|
bool "Invert Display"
|
|
default n
|
|
---help---
|
|
Inverts the display.
|
|
|
|
config SSD1351_VDDEXT
|
|
bool "External VDD"
|
|
default n
|
|
---help---
|
|
Specifies that VDD is external.
|
|
|
|
config SSD1351_TRST
|
|
int "Reset Period"
|
|
default 5
|
|
range 5 31
|
|
---help---
|
|
Specifies the reset period in DCLKs.
|
|
|
|
config SSD1351_TPRECHG1
|
|
int "First Pre-charge Period"
|
|
default 8
|
|
range 3 15
|
|
---help---
|
|
Specifies the first pre-charge period in DCLKs.
|
|
|
|
config SSD1351_PERFENHANCE
|
|
bool "Enhance Display Performance"
|
|
default n
|
|
---help---
|
|
Enhances the display performance.
|
|
|
|
config SSD1351_CLKDIV
|
|
int "Clock Divider"
|
|
default 0
|
|
range 0 10
|
|
---help---
|
|
Specifies the clock divider.
|
|
|
|
config SSD1351_OSCFREQ
|
|
int "Oscillator Frequency"
|
|
default 15
|
|
range 0 15
|
|
---help---
|
|
Specifies the oscillator frequency.
|
|
|
|
config SSD1351_TPRECHG2
|
|
int "Second Pre-charge Period"
|
|
default 8
|
|
range 1 15
|
|
---help---
|
|
Specifies the second pre-charge period in DCLKs.
|
|
|
|
config SSD1351_VPRECHG
|
|
int "Voltage Pre-charge Level"
|
|
default 50
|
|
range 20 60
|
|
---help---
|
|
Specifies the pre-charge voltage level as a percentage of VCC.
|
|
|
|
config SSD1351_VCOMH
|
|
int "COM Deselect Voltage Level"
|
|
default 82
|
|
range 72 86
|
|
---help---
|
|
Specifies the COM deselect voltage level as a percentage of VCC.
|
|
|
|
config SSD1351_CONTRASTA
|
|
int "Color A Contrast"
|
|
default 138
|
|
range 0 255
|
|
---help---
|
|
Specifies the contrast of color A.
|
|
|
|
config SSD1351_CONTRASTB
|
|
int "Color B Contrast"
|
|
default 81
|
|
range 0 255
|
|
---help---
|
|
Specifies the contrast of color B.
|
|
|
|
config SSD1351_CONTRASTC
|
|
int "Color C Contrast"
|
|
default 138
|
|
range 0 255
|
|
---help---
|
|
Specifies the contrast of color C.
|
|
|
|
config SSD1351_MSTRCONTRAST
|
|
int "Master Contrast Ratio"
|
|
default 16
|
|
range 1 16
|
|
---help---
|
|
Specifies the master contrast ratio in sixteenths.
|
|
|
|
endif # LCD_SSD1351
|
|
|
|
config LCD_ST7735
|
|
bool "Sitronix ST7735 TFT Controller"
|
|
default n
|
|
|
|
if LCD_ST7735
|
|
choice
|
|
prompt "LCD Preset Resolutions"
|
|
optional
|
|
|
|
config LCD_ST7735_GM11
|
|
bool "128x160"
|
|
|
|
config LCD_ST7735_GM00
|
|
bool "132x162"
|
|
|
|
config LCD_ST7735_GM01
|
|
bool "132x132"
|
|
|
|
endchoice # LCD Preset Resolutions
|
|
|
|
if !LCD_ST7735_GM00 && !LCD_ST7735_GM01 && !LCD_ST7735_GM11
|
|
|
|
config LCD_ST7735_XRES
|
|
int "ST7735 X Resolution"
|
|
default 128
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_ST7735_YRES
|
|
int "ST7735 Y Resolution"
|
|
default 160
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_ST7735_XOFFSET
|
|
int "ST7735 X Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the X offset of the LCD.
|
|
|
|
config LCD_ST7735_YOFFSET
|
|
int "ST7735 Y Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the Y offset of the LCD.
|
|
|
|
endif
|
|
|
|
config LCD_ST7735_BGR
|
|
bool "Swap R & B channel"
|
|
default n
|
|
|
|
config LCD_ST7735_BPP
|
|
int "Bit Per Pixel (12, 16 or 18)"
|
|
default 16
|
|
|
|
config LCD_ST7735_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
|
|
config LCD_ST7735_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 3000000
|
|
|
|
endif # LCD_ST7735
|
|
|
|
config LCD_ST7789
|
|
bool "Sitronix ST7789 TFT Controller"
|
|
default n
|
|
|
|
if LCD_ST7789
|
|
config LCD_ST7789_3WIRE
|
|
bool "Use 3 wire interface"
|
|
default n
|
|
---help---
|
|
Specifies whether 3 wire or 4 wire (default) interface is
|
|
used. 3 wire interface drops CMD/DATA pin and uses 9th bit
|
|
to determine data/command message.
|
|
|
|
config LCD_ST7789_XRES
|
|
int "ST7789 X Resolution"
|
|
default 240
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_ST7789_YRES
|
|
int "ST7789 Y Resolution"
|
|
default 320
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_ST7789_XOFFSET
|
|
int "ST7789 X Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the X offset of the LCD.
|
|
|
|
config LCD_ST7789_YOFFSET
|
|
int "ST7789 Y Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the Y offset of the LCD.
|
|
|
|
config LCD_ST7789_MIRRORX
|
|
bool "ST7789 Mirror X"
|
|
default n
|
|
|
|
config LCD_ST7789_MIRRORY
|
|
bool "ST7789 Mirror Y"
|
|
default n
|
|
|
|
config LCD_ST7789_INVCOLOR
|
|
bool "ST7789 Invert Color"
|
|
default y
|
|
---help---
|
|
Invert colors of the LCD display. This is useful for implementations
|
|
that assume that that colors are inverted by default.
|
|
|
|
config LCD_ST7789_BGR
|
|
bool "ST7789 Use BGR Instead Of RGB"
|
|
default n
|
|
---help---
|
|
Use BGR color format instead of RGB color format.
|
|
|
|
config LCD_ST7789_BPP
|
|
int "Bit Per Pixel (12 or 16)"
|
|
default 16
|
|
|
|
config LCD_ST7789_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
|
|
config LCD_ST7789_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
|
|
endif # LCD_ST7789
|
|
|
|
config LCD_GC9A01
|
|
bool "Galaxycore GC9A01 TFT Controller"
|
|
default n
|
|
|
|
if LCD_GC9A01
|
|
config LCD_GC9A01_XRES
|
|
int "GC9A01 X Resolution"
|
|
default 240
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_GC9A01_YRES
|
|
int "GC9A01 Y Resolution"
|
|
default 240
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_GC9A01_XOFFSET
|
|
int "GC9A01 X Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the X offset of the LCD.
|
|
|
|
config LCD_GC9A01_YOFFSET
|
|
int "GC9A01 Y Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the Y offset of the LCD.
|
|
|
|
config LCD_GC9A01_BGR
|
|
bool "Swap R & B channel"
|
|
default n
|
|
|
|
config LCD_GC9A01_BPP
|
|
int "Bit Per Pixel (12 or 16)"
|
|
default 16
|
|
|
|
config LCD_GC9A01_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
|
|
config LCD_GC9A01_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
|
|
endif # LCD_GC9A01
|
|
|
|
config LCD_JD9851
|
|
bool "Fitipower JD9851 TFT Controller"
|
|
default n
|
|
|
|
if LCD_JD9851
|
|
config LCD_JD9851_XRES
|
|
int "JD9851 X Resolution"
|
|
default 240
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_JD9851_YRES
|
|
int "JD9851 Y Resolution"
|
|
default 320
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_JD9851_XOFFSET
|
|
int "JD9851 X Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the X offset of the LCD.
|
|
|
|
config LCD_JD9851_YOFFSET
|
|
int "JD9851 Y Offset"
|
|
default 0
|
|
---help---
|
|
Specifies the Y offset of the LCD.
|
|
|
|
config LCD_JD9851_BGR
|
|
bool "Swap R & B channel"
|
|
default n
|
|
|
|
config LCD_JD9851_BPP
|
|
int "Bit Per Pixel (16)"
|
|
default 16
|
|
|
|
config LCD_JD9851_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
|
|
config LCD_JD9851_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
|
|
config LCD_JD9851_INVERT
|
|
bool "Enter into display inversion mode"
|
|
default n
|
|
|
|
config LCD_JD9851_TE
|
|
bool "Tearing effect line on"
|
|
default n
|
|
|
|
endif # LCD_JD9851
|
|
|
|
config LCD_PCD8544
|
|
bool "Nokia 5110 LCD Display (Philips PCD8544)"
|
|
default n
|
|
---help---
|
|
LCD Display Module, PCD8544, Philips
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
|
|
if LCD_PCD8544
|
|
|
|
config PCD8544_NINTERFACES
|
|
int "Number of PCD8544 Devices"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical PCD8544 devices that will be
|
|
supported. NOTE: At present, this must be undefined or defined to be 1.
|
|
|
|
config PCD8544_XRES
|
|
int "PCD8544 X Resolution"
|
|
default 84
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config PCD8544_YRES
|
|
int "PCD8544 Y Resolution"
|
|
default 48
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config PCD8544_INVERSE_VIDEO
|
|
bool "PCD8544 Inverse video"
|
|
default n
|
|
---help---
|
|
Inverse video on LCD.
|
|
|
|
endif # LCD_PCD8544
|
|
|
|
config LCD_ST7565
|
|
bool "ST7565 LCD Display Module"
|
|
default n
|
|
---help---
|
|
LCD Display Module, ST7565, Univision Technology Inc.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
|
|
if LCD_ST7565
|
|
|
|
choice
|
|
prompt "LCD Display Module initialization sequence"
|
|
default NHD_C12864KGZ
|
|
|
|
config NHD_C12864KGZ
|
|
bool "like NHD C12864KGZ"
|
|
|
|
config ERC_12864_3
|
|
bool "like ERC12864-3"
|
|
|
|
config AQM_1248A
|
|
bool "like AQM1248A"
|
|
|
|
endchoice
|
|
|
|
config ST7565_NINTERFACES
|
|
int "Number of ST7565 Devices"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical ST7565 devices that will be
|
|
supported. NOTE: At present, this must be undefined or defined to be 1.
|
|
|
|
config ST7565_XRES
|
|
int "ST7565 X Resolution"
|
|
default 128
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config ST7565_YRES
|
|
int "ST7565 Y Resolution"
|
|
default 48 if AQM_1248A
|
|
default 64
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config ST7565_MIRROR_X
|
|
bool "ST7565 apply mirror on X"
|
|
default n
|
|
---help---
|
|
Mirror X on LCD.
|
|
|
|
config ST7565_MIRROR_Y
|
|
bool "ST7565 apply mirror on Y"
|
|
default AQM_1248A
|
|
default n
|
|
---help---
|
|
Mirror Y on LCD.
|
|
|
|
config ST7565_INVERSE_VIDEO
|
|
bool "ST7565 Inverse video"
|
|
default n
|
|
---help---
|
|
Inverse video on LCD.
|
|
|
|
endif # LCD_ST7565
|
|
|
|
config LCD_ST7567
|
|
bool "ST7567 LCD Display Module"
|
|
default n
|
|
---help---
|
|
LCD Display Module, ST7567, Univision Technology Inc. Used
|
|
with the LPCXpresso and Embedded Artists base board.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
if LCD_ST7567
|
|
|
|
config ST7567_SPIMODE
|
|
int "ST7567 SPI Mode"
|
|
default 0
|
|
range 0 3
|
|
---help---
|
|
Controls the SPI mode
|
|
|
|
config ST7567_FREQUENCY
|
|
int "ST7567 SPI Frequency"
|
|
default 3500000
|
|
---help---
|
|
Define to use a different bus frequency
|
|
|
|
config ST7567_NINTERFACES
|
|
int "Number of ST7567 Devices"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical ST7567 devices that will be
|
|
supported. NOTE: At present, this must be undefined or defined to be 1.
|
|
|
|
config ST7567_POWER
|
|
bool "Power control"
|
|
default n
|
|
---help---
|
|
If the hardware supports a controllable LCD a power supply, this
|
|
configuration should be defined. In this case the system must
|
|
provide an interface ug_power().
|
|
|
|
config ST7567_XRES
|
|
int "ST7567 X Resolution"
|
|
default 128
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config ST7567_YRES
|
|
int "ST7567 Y Resolution"
|
|
default 64
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
endif # LCD_ST7567
|
|
|
|
config LCD_UG2864AMBAG01
|
|
bool "UG-2864AMBAG01 OLED Display Module"
|
|
default n
|
|
---help---
|
|
OLED Display Module, UG-2864AMBAG01, Univision Technology Inc.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
if LCD_UG2864AMBAG01
|
|
|
|
config UG2864AMBAG01_SPIMODE
|
|
int "UG-2864AMBAG01 SPI Mode"
|
|
default 3
|
|
range 0 3
|
|
---help---
|
|
Controls the SPI mode
|
|
|
|
config UG2864AMBAG01_FREQUENCY
|
|
int "UG-2864AMBAG01 SPI Frequency"
|
|
default 3500000
|
|
---help---
|
|
Define to use a different bus frequency
|
|
|
|
config UG2864AMBAG01_NINTERFACES
|
|
int "Number of UG-2864AMBAG01 Devices"
|
|
default 1
|
|
---help---
|
|
Specifies the number of physical UG-9664HSWAG01 devices that will be
|
|
supported. NOTE: At present, this must be undefined or defined to be 1.
|
|
|
|
endif # LCD_UG2864AMBAG01
|
|
|
|
config LCD_SSD1289
|
|
bool "LCD Based on SSD1289 Controller"
|
|
default n
|
|
---help---
|
|
Enables generic support for any LCD based on the Solomon Systech,
|
|
Ltd, SSD1289 Controller. Use of this driver will usually require so
|
|
detailed customization of the LCD initialization code as necessary
|
|
for the specific LCD driven by the SSD1289 controller.
|
|
|
|
if LCD_SSD1289
|
|
|
|
choice
|
|
prompt "SSD1289 Initialization Profile"
|
|
default SSD1289_PROFILE1
|
|
|
|
config SSD1289_PROFILE1
|
|
bool "Profile 1"
|
|
|
|
config SSD1289_PROFILE2
|
|
bool "Profile 2"
|
|
|
|
config SSD1289_PROFILE3
|
|
bool "Profile 3"
|
|
|
|
endchoice # SSD1289 Initialization Profile
|
|
endif # LCD_SSD1289
|
|
|
|
config LCD_SHARP_MEMLCD
|
|
bool "Sharp Memory LCD Suite"
|
|
default n
|
|
---help---
|
|
memlcd.c. Driver for Sharp Memory LCD Suite.
|
|
|
|
if LCD_SHARP_MEMLCD
|
|
|
|
choice
|
|
prompt "Memory LCD Model"
|
|
default MEMLCD_LS013B7DH03
|
|
|
|
config MEMLCD_LS013B7DH01
|
|
bool "LS013B7DH01"
|
|
---help---
|
|
Selects the LS013B7DH01 model
|
|
|
|
config MEMLCD_LS013B7DH03
|
|
bool "LS013B7DH03"
|
|
---help---
|
|
Selects the LS013B7DH03 model
|
|
|
|
config MEMLCD_LS027B7DH01A
|
|
bool "LS027B7DH01A"
|
|
---help---
|
|
Selects the LS027B7DH01A model
|
|
|
|
endchoice # Memory LCD Model
|
|
|
|
config MEMLCD_NINTERFACES
|
|
int "Number of physical Memory LCD devices"
|
|
default 1
|
|
range 1 1
|
|
---help---
|
|
Specifies the number of physical Memory LCD devices that will
|
|
be supported.
|
|
|
|
config MEMLCD_EXTCOMIN_MODE_HW
|
|
bool "Use hardware mode for EXTCOMIN"
|
|
default n
|
|
---help---
|
|
If use hardware mode to toggle VCOM, we need to send specific
|
|
command at a constant frequency to trigger the LCD internal
|
|
hardware logic. While use software mode, we set up a timer to
|
|
toggle EXTCOMIN connected IO, basically, it is a hardware
|
|
timer to ensure a constant frequency.
|
|
|
|
config MEMLCD_SPI_FREQUENCY
|
|
int "SPI frequency"
|
|
default 3500000
|
|
---help---
|
|
Define to use a different bus frequency, FIXME DEFAULT VALUE OK?
|
|
|
|
config MEMLCD_BYTE_PER_PIXEL
|
|
bool "Byte-Per-Pixel Memory Model"
|
|
default n
|
|
---help---
|
|
Selects the Byte-Per-Pixel buffer model, instead of Bit-Per-Pixel.
|
|
LVGL Graphics Library uses Byte-Per-Pixel memory model.
|
|
|
|
endif # LCD_SHARP_MEMLCD
|
|
|
|
choice
|
|
prompt "LCD Orientation"
|
|
default LCD_LANDSCAPE
|
|
depends on LCD
|
|
---help---
|
|
Some LCD drivers may support displays in different orientations.
|
|
If the LCD driver supports this capability, than these are configuration
|
|
options to select that display orientation.
|
|
|
|
config LCD_LANDSCAPE
|
|
bool "Landscape orientation"
|
|
---help---
|
|
Define for "landscape" orientation support. Landscape mode refers one
|
|
of two orientations where the display is wider than it is tall
|
|
(LCD_RLANDSCAPE is the other). This is the default orientation.
|
|
|
|
config LCD_PORTRAIT
|
|
bool "Portrait orientation"
|
|
---help---
|
|
Define for "portrait" orientation support. Portrait mode refers one
|
|
of two orientations where the display is taller than it is wide
|
|
(LCD_RPORTAIT is the other).
|
|
|
|
config LCD_RPORTRAIT
|
|
bool "Reverse portrait display"
|
|
---help---
|
|
Define for "reverse portrait" orientation support. Reverse portrait mode
|
|
refers one of two orientations where the display is taller than it is
|
|
wide (LCD_PORTAIT is the other).
|
|
|
|
config LCD_RLANDSCAPE
|
|
bool "Reverse landscape orientation"
|
|
---help---
|
|
Define for "reverse landscape" orientation support. Reverse landscape mode
|
|
refers one of two orientations where the display is wider than it is
|
|
tall (LCD_LANDSCAPE is the other).
|
|
|
|
config LCD_DYN_ORIENTATION
|
|
bool "Dynamic orientation"
|
|
---help---
|
|
Instead of deciding for a fixed orientation while compile time, choose to
|
|
have the possibility to switch the orientation while runtime. Orientation
|
|
is a parameter of lcdinitialize().
|
|
|
|
endchoice # LCD Orientation
|
|
|
|
config LCD_LPM013M091A
|
|
bool "JDI LPM013M091A LCD Driver"
|
|
default n
|
|
---help---
|
|
JDI LPM013M091A LCD Driver.
|
|
This driver doesn't support reading data.
|
|
Recommended to use DMA to transfer data or displayed image would be
|
|
broken.
|
|
|
|
config LCD_ILI9225
|
|
bool "ILI9225 LCD Single Chip Driver"
|
|
default n
|
|
---help---
|
|
LCD Single Chip Driver, ILI9225, ILI Technology Corp.
|
|
|
|
if LCD_ILI9225
|
|
config LCD_ILI9225_XRES
|
|
int "ILI9225 X Resolution"
|
|
default 176
|
|
---help---
|
|
Specifies the X resolution of the LCD.
|
|
|
|
config LCD_ILI9225_YRES
|
|
int "ILI9225 Y Resolution"
|
|
default 220
|
|
---help---
|
|
Specifies the Y resolution of the LCD.
|
|
|
|
config LCD_ILI9225_BPP
|
|
int "Bit Per Pixel (16)"
|
|
default 16
|
|
|
|
config LCD_ILI9225_SPIMODE
|
|
int "SPI Mode"
|
|
default 0
|
|
|
|
config LCD_ILI9225_FREQUENCY
|
|
int "SPI Frequency"
|
|
default 1000000
|
|
|
|
endif # LCD_ILI9225
|
|
|
|
config LCD_ILI9340
|
|
bool "ILI9340 LCD Single Chip Driver"
|
|
default n
|
|
---help---
|
|
LCD Single Chip Driver, ILI9340, ILI Technology Corp.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
config LCD_ILI9340_NINTERFACES
|
|
int "Number of supported display driver"
|
|
range 1 2
|
|
default 1
|
|
depends on LCD_ILI9340
|
|
---help---
|
|
Define the number of supported displays driven by a ili9340 LCD Single
|
|
Chip Driver.
|
|
|
|
config LCD_ILI9340_IFACE0
|
|
bool "(1) LCD Display"
|
|
depends on LCD_ILI9340_NINTERFACES = 1 || LCD_ILI9340_NINTERFACES = 2
|
|
---help---
|
|
Configure first LCD Display.
|
|
|
|
if LCD_ILI9340_IFACE0
|
|
choice
|
|
prompt "LCD Orientation"
|
|
default LCD_ILI9340_IFACE0_LANDSCAPE
|
|
---help---
|
|
Configure display orientation.
|
|
|
|
config LCD_ILI9340_IFACE0_LANDSCAPE
|
|
bool "Landscape orientation"
|
|
---help---
|
|
Define for "landscape" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE0_PORTRAIT
|
|
bool "Portrait orientation"
|
|
---help---
|
|
Define for "portrait" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE0_RLANDSCAPE
|
|
bool "Reverse landscape orientation"
|
|
---help---
|
|
Define for "reverse landscape" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE0_RPORTRAIT
|
|
bool "Reverse portrait display"
|
|
---help---
|
|
Define for "reverse portrait" orientation support.
|
|
|
|
endchoice # LCD Orientation
|
|
|
|
choice
|
|
prompt "Color format"
|
|
default LCD_ILI9340_IFACE0_RGB565
|
|
---help---
|
|
LCD color format.
|
|
|
|
config LCD_ILI9340_IFACE0_RGB565
|
|
bool "16 bpp RGB565 color format"
|
|
---help---
|
|
16 bpp RGB565 color format
|
|
|
|
endchoice # Color format
|
|
endif # LCD_ILI9340_IFACE0
|
|
|
|
config LCD_ILI9340_IFACE1
|
|
bool "(2) LCD Display"
|
|
depends on LCD_ILI9340_NINTERFACES = 2
|
|
---help---
|
|
Configure second LCD Display.
|
|
|
|
if LCD_ILI9340_IFACE1
|
|
choice
|
|
prompt "LCD Orientation"
|
|
default LCD_ILI9340_IFACE1_LANDSCAPE
|
|
---help---
|
|
Configure display orientation.
|
|
|
|
config LCD_ILI9340_IFACE1_LANDSCAPE
|
|
bool "Landscape orientation"
|
|
---help---
|
|
Define for "landscape" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE1_PORTRAIT
|
|
bool "Portrait orientation"
|
|
---help---
|
|
Define for "portrait" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE1_RLANDSCAPE
|
|
bool "Reverse landscape orientation"
|
|
---help---
|
|
Define for "reverse landscape" orientation support.
|
|
|
|
config LCD_ILI9340_IFACE1_RPORTRAIT
|
|
bool "Reverse portrait display"
|
|
---help---
|
|
Define for "reverse portrait" orientation support.
|
|
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Color format"
|
|
default LCD_ILI9340_IFACE1_RGB565
|
|
---help---
|
|
LCD color format.
|
|
|
|
config LCD_ILI9340_IFACE1_RGB565
|
|
bool "16 bpp RGB565 color format"
|
|
---help---
|
|
16 bpp RGB565 color format
|
|
|
|
endchoice
|
|
endif
|
|
|
|
config LCD_ILI9341
|
|
bool "ILI9341 LCD Single Chip Driver"
|
|
default n
|
|
---help---
|
|
LCD Single Chip Driver, ILI9341, ILI Technology Corp. Used
|
|
with the STM32F429i Discovery Board.
|
|
|
|
Required LCD driver settings:
|
|
LCD_MAXCONTRAST should be 255, but any value >0 and <=255 will be accepted.
|
|
LCD_MAXPOWER should be 1: 0=off, 1=on
|
|
|
|
config LCD_ILI9341_NINTERFACES
|
|
int "Number of supported display driver"
|
|
range 1 2
|
|
default 1
|
|
depends on LCD_ILI9341
|
|
---help---
|
|
Define the number of supported displays driven by a ili9341 LCD Single
|
|
Chip Driver.
|
|
|
|
config LCD_ILI9341_IFACE0
|
|
bool "(1) LCD Display"
|
|
depends on LCD_ILI9341_NINTERFACES = 1 || LCD_ILI9341_NINTERFACES = 2
|
|
---help---
|
|
Configure first LCD Display.
|
|
|
|
if LCD_ILI9341_IFACE0
|
|
choice
|
|
prompt "LCD Orientation"
|
|
default LCD_ILI9341_IFACE0_LANDSCAPE
|
|
---help---
|
|
Configure display orientation.
|
|
|
|
config LCD_ILI9341_IFACE0_LANDSCAPE
|
|
bool "Landscape orientation"
|
|
---help---
|
|
Define for "landscape" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE0_PORTRAIT
|
|
bool "Portrait orientation"
|
|
---help---
|
|
Define for "portrait" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE0_RLANDSCAPE
|
|
bool "Reverse landscape orientation"
|
|
---help---
|
|
Define for "reverse landscape" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE0_RPORTRAIT
|
|
bool "Reverse portrait display"
|
|
---help---
|
|
Define for "reverse portrait" orientation support.
|
|
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Color format"
|
|
default LCD_ILI9341_IFACE0_RGB565
|
|
---help---
|
|
LCD color format.
|
|
|
|
config LCD_ILI9341_IFACE0_RGB565
|
|
bool "16 bpp RGB565 color format"
|
|
---help---
|
|
16 bpp RGB565 color format
|
|
|
|
endchoice
|
|
endif
|
|
|
|
config LCD_ILI9341_IFACE1
|
|
bool "(2) LCD Display"
|
|
depends on LCD_ILI9341_NINTERFACES = 2
|
|
---help---
|
|
Configure second LCD Display.
|
|
|
|
if LCD_ILI9341_IFACE1
|
|
choice
|
|
prompt "LCD Orientation"
|
|
default LCD_ILI9341_IFACE1_LANDSCAPE
|
|
---help---
|
|
Configure display orientation.
|
|
|
|
config LCD_ILI9341_IFACE1_LANDSCAPE
|
|
bool "Landscape orientation"
|
|
---help---
|
|
Define for "landscape" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE1_PORTRAIT
|
|
bool "Portrait orientation"
|
|
---help---
|
|
Define for "portrait" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE1_RLANDSCAPE
|
|
bool "Reverse landscape orientation"
|
|
---help---
|
|
Define for "reverse landscape" orientation support.
|
|
|
|
config LCD_ILI9341_IFACE1_RPORTRAIT
|
|
bool "Reverse portrait display"
|
|
---help---
|
|
Define for "reverse portrait" orientation support.
|
|
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Color format"
|
|
default LCD_ILI9341_IFACE1_RGB565
|
|
---help---
|
|
LCD color format.
|
|
|
|
config LCD_ILI9341_IFACE1_RGB565
|
|
bool "16 bpp RGB565 color format"
|
|
---help---
|
|
16 bpp RGB565 color format
|
|
|
|
endchoice
|
|
endif
|
|
|
|
config LCD_LCDDRV_SPIIF
|
|
bool "Generic SPI Interface Driver (for ILI9341 or others)"
|
|
default n
|
|
depends on LCD_ILI9341
|
|
---help---
|
|
SPI Interface shim to allow LCD and ePaper to be bound to
|
|
a normal SPI port.
|
|
|
|
config LCD_LCDDRV_SPEED
|
|
int "Generic SPI Interface speed"
|
|
default 10000000
|
|
depends on LCD_LCDDRV_SPIIF
|
|
---help---
|
|
SPI Interface speed. According to the specification this is generally
|
|
quite limited, but people have had success with much faster
|
|
speeds than the spec sheets say. YMMV.
|
|
|
|
config LCD_RA8875
|
|
bool "RA8875 LCD Display Controller"
|
|
default n
|
|
depends on ALLOW_BSD_COMPONENTS
|
|
---help---
|
|
LCD controller driver for RA8875 by RAiO Technologies Inc.
|
|
|
|
if LCD_RA8875
|
|
|
|
choice
|
|
prompt "MCU Interface width"
|
|
default LCD_RA8875_8BIT
|
|
---help---
|
|
Bit-width of MCU interface (8 or 16)
|
|
|
|
config LCD_RA8875_8BIT
|
|
bool "8 bit"
|
|
|
|
config LCD_RA8875_16BIT
|
|
bool "16 bit"
|
|
|
|
endchoice # MCU Interface width
|
|
|
|
choice
|
|
prompt "Colors"
|
|
default LCD_RA8875_65K
|
|
---help---
|
|
Number of colors/color depth
|
|
|
|
config LCD_RA8875_256
|
|
bool "256 / 8 bit"
|
|
|
|
config LCD_RA8875_65K
|
|
bool "65k / 16 bit"
|
|
|
|
endchoice # Colors
|
|
|
|
config LCD_RA8875_EXTENDED
|
|
bool "Extended drawing interfaces"
|
|
default n
|
|
depends on BUILD_FLAT
|
|
---help---
|
|
Build in some non-standard, custom drawing interfaces for the RA8875
|
|
including the following: ra8875_drawrectangle(), ra8875_drawline(),
|
|
ra8875_drawtriangle(), and ra8875_drawcircle(). NOTE that these
|
|
will not be accessible by applications in protected or kernel build
|
|
configurations.
|
|
|
|
NOTE: The non-standard ra8875_clear(), ra8875_drawrectangle(),
|
|
ra8875_drawline() interfaces are always built and available for use
|
|
because within the OS because these are used internally by the
|
|
driver anyway.
|
|
|
|
endif # LCD_RA8875
|
|
|
|
config LCD_FT80X
|
|
bool "FTDI FT80x GUI Controller"
|
|
default n
|
|
select SCHED_HPWORK
|
|
---help---
|
|
Integrated LCD, Audio, Touchscreen controller driver for the FTDI
|
|
FT80x "EVE" series.
|
|
|
|
if LCD_FT80X
|
|
|
|
choice
|
|
prompt "FTDI FT80x part"
|
|
default LCD_FT800
|
|
|
|
config LCD_FT800
|
|
bool "FT800"
|
|
|
|
config LCD_FT801
|
|
bool "FT801"
|
|
|
|
endchoice # FTDI FT80x part
|
|
|
|
choice
|
|
prompt "FTDI FT80x Interface"
|
|
default LCD_FT80X_SPI
|
|
|
|
config LCD_FT80X_SPI
|
|
bool "SPI"
|
|
select SPI
|
|
|
|
config LCD_FT80X_I2C
|
|
bool "I2C"
|
|
select I2C
|
|
|
|
endchoice # FTDI FT80x Interface
|
|
|
|
config LCD_FT801_MULTITOUCH
|
|
bool "FT801 Multi-touch"
|
|
default n
|
|
depends on LCD_FT801
|
|
|
|
choice
|
|
prompt "Display size"
|
|
default LCD_FT80X_WQVGA
|
|
|
|
config LCD_FT80X_WQVGA
|
|
bool "WQVGA 480x272"
|
|
|
|
config LCD_FT80X_QVGA
|
|
bool "QVGA 320x240"
|
|
|
|
endchoice # Display size
|
|
|
|
choice
|
|
prompt "Audio Shutdown Options"
|
|
default LCD_FT80X_AUDIO_NOSHUTDOWN
|
|
|
|
config LCD_FT80X_AUDIO_NOSHUTDOWN
|
|
bool "No amplifier shutdown control"
|
|
---help---
|
|
There is no audio amplifier or the audio amplifier is not under
|
|
software control.
|
|
|
|
config LCD_FT80X_AUDIO_MCUSHUTDOWN
|
|
bool "MCU controls audio shutdown"
|
|
---help---
|
|
The audio amplifier is controlled via an MCU GPIO output pin.
|
|
|
|
config LCD_FT80X_AUDIO_GPIOSHUTDOWN
|
|
bool "FT80X controls audio shutdown"
|
|
---help---
|
|
The audio amplifier is controlled via an FT80x GPIO output pin.
|
|
|
|
endchoice # Audio Shutdown Option
|
|
|
|
config LCD_FT80X_AUDIO_GPIO
|
|
int "FT80x audio shutdown GPIO"
|
|
default 0
|
|
range 0 1
|
|
depends on LCD_FT80X_AUDIO_GPIOSHUTDOWN
|
|
---help---
|
|
Identifies the GPIO pin used to control the amplifier shutdown
|
|
output.
|
|
|
|
endif # LCD_FT80X
|
|
|
|
config LCD_SSD1680
|
|
bool "SSD1680/SSD1681 E-PAPER Single Chip Driver"
|
|
default n
|
|
select SPI_CMDDATA
|
|
---help---
|
|
e-paper Display Module based on SSD1680/SSD1681 controller.
|
|
|
|
Required SPI driver settings:
|
|
SPI_CMDDATA - Include support for cmd/data selection.
|
|
|
|
if LCD_SSD1680
|
|
|
|
choice
|
|
prompt "Display type and size"
|
|
default LCD_SSD1680_2_90
|
|
|
|
config LCD_SSD1680_2_13_V2
|
|
bool "2.13 inch 122/250 mono v2"
|
|
|
|
config LCD_SSD1680_2_13_RED
|
|
bool "2.13 inch 122/250 tri color (red)"
|
|
|
|
config LCD_SSD1680_2_90
|
|
bool "2.9 inch 128/296 mono"
|
|
|
|
config LCD_SSD1680_2_90_RED
|
|
bool "2.9 inch 128/296 tri color (red)"
|
|
|
|
config LCD_SSD1681_1_54
|
|
bool "1.54 inch 200/200 mono"
|
|
---help---
|
|
1.54 inch 200x200 e-paper display module based on SSD1681 controller.
|
|
|
|
endchoice # Display size
|
|
|
|
config SSD1680_SPIMODE
|
|
int "SSD1680 SPI Mode"
|
|
default 0
|
|
range 0 3
|
|
---help---
|
|
Selects the SPI mode used with the SSD1680 device
|
|
|
|
config SSD1680_FREQUENCY
|
|
int "SSD1680 SPI Frequency"
|
|
default 5000000
|
|
range 100000 20000000
|
|
---help---
|
|
Selects the SPI bus frequency used with the SSD1680 device.
|
|
Max for read mode is 2.5 MHz, for write mode is 20 HHz
|
|
|
|
endif # LCD_SSD1680
|
|
|
|
|
|
endmenu # LCD Driver selection
|
|
endif # LCD
|
|
|
|
comment "Character/Segment LCD Devices"
|
|
|
|
menuconfig SLCD
|
|
bool "Alphanumeric/Segment LCD Devices"
|
|
default n
|
|
---help---
|
|
Drivers for Alphanumeric and Segment LCDs (SLCDs). These
|
|
drivers support interfaces as defined in include/nuttx/lcd/slcd_ioctl.h
|
|
amd slcd_codec.h
|
|
|
|
This selection is necessary to enable support for SLCD drivers in
|
|
drivers/lcd as well as for board-specific LCD drivers in the boards/
|
|
subdirectories.
|
|
|
|
if SLCD
|
|
|
|
config SLCD_CONSOLE
|
|
bool "SLCD console output"
|
|
default n
|
|
---help---
|
|
It is possible to use an SLCD to provide console output. This option
|
|
enables that possibility.
|
|
|
|
At present, only one architecture supports this option (M16C).
|
|
However, this feature could be provided by other architectures in
|
|
the future.
|
|
|
|
config LCD_LCD1602
|
|
bool "LCD 1602"
|
|
default n
|
|
---help---
|
|
Enable support for LCD1602 devices. LCD1602 is based on the Hitachi
|
|
HD44780U LCD controller. See also include/nuttx/lcd/hd4478ou.h.
|
|
|
|
NOTE: There is no common implementation of the LCD1602 driver.
|
|
Rather, there are board-by-board implementations.
|
|
|
|
config LCD_BACKPACK
|
|
bool "PCF8574 LCD Backpack"
|
|
default n
|
|
depends on I2C
|
|
select LIBC_SLCDCODEC
|
|
---help---
|
|
Enable support for PCF8574 LCD Backpack driver. This driver supports
|
|
an interface board that is based on the PCF8574 io expander and
|
|
supports the HD44780-based (or compatible) LCD modules. There are
|
|
a myriad of different vendors of such, but they are principally the
|
|
same, save wiring and minor features like jumpers for I2C addresses.
|
|
This driver supports known and unknown variants.
|
|
|
|
See pcf8574_lcd_backpack_readme.txt
|
|
|
|
config LCD_ST7032
|
|
bool "ST7032 over I2C (i.e. JLX1602G-390)"
|
|
default n
|
|
depends on I2C
|
|
---help---
|
|
Enable support for ST7032i on I2C. This driver was tested with
|
|
JLX1602G-390 that has 10 pins: CAP1N, CAP1P, VOUT, VCC, SHLS,
|
|
SHLC, GND, SDA, SCL, XRESET. The XRESET pin is connected to a
|
|
pull-up resistor, then the module automatically executes power-on
|
|
reset when power is supplied to the module. The pin SHLS is also
|
|
connected to a pull-up resistor and the pin SHLC is connected to
|
|
the ground. So only I2C pins SDA and SCL are used by NuttX.
|
|
|
|
config LCD_HT16K33
|
|
bool "Holtek HT16K33 4 Digits 14-Segment Display"
|
|
default n
|
|
depends on I2C
|
|
---help---
|
|
Enable support for Holtek HT16K33 (and Vinka VK16K33) 4 Digits
|
|
14-Segment module: 0.54" 14-segment LED HT16K33 Backpack.
|
|
|
|
if LCD_HT16K33
|
|
config LCD_HT16K33_MULT_MODULE
|
|
bool "Enable support to multiple modules as a single display"
|
|
default n
|
|
depends on I2C
|
|
---help---
|
|
It is possible to connect many HT16K33 modules with sequential
|
|
I2C addresses to work as a single display to support length
|
|
text strings. The device at the I2C address 0x70 will display the
|
|
4 more significant characters, the device 0x71 will display the
|
|
previous 4 more significant characters and so on.
|
|
|
|
config LCD_HT16K33_NUMBER_MODULES
|
|
int "Quantity of HT16K33 modules to be used as a single display"
|
|
range 1 8
|
|
depends on LCD_HT16K33_MULT_MODULE
|
|
---help---
|
|
Quantity of sequential modules to be used to create a single
|
|
display. We can have up to 8 to I2C Addresses: 0x70 - 0x77.
|
|
|
|
endif # LCD_HT16K33
|
|
|
|
endif # SLCD
|
|
|
|
comment "Other LCD-related Devices"
|
|
|
|
config LCD_OTHER
|
|
bool
|
|
default n
|
|
|
|
config LCD_TDA19988
|
|
bool "TDA19988 HDMI Encoder"
|
|
default n
|
|
select LCD_OTHER
|
|
depends on I2C && EXPERIMENTAL
|
|
---help---
|
|
Enable support for the TI TDA19988 HDMI Encoder. The TDA19988 is a
|
|
very low power and very small size High-Definition Multimedia
|
|
Interface (HDMI) 1.4a transmitter. This device is primarily
|
|
intended for mobile applications like Digital Video Camera (DVC),
|
|
Digital Still Camera (DSC), Portable Multimedia Player (PMP), Mobile
|
|
Phone and Ultra-Mobile Personal Computer (UM PC), new PC tablet and
|
|
MID where size and power are key for battery autonomy.
|
|
|
|
endmenu # LCD Driver Support
|