lvgl: upgrade to release/v9.2.1
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
diff --git a/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch b/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch
deleted file mode 100644
index ca99d3a..0000000
--- a/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From d1576c890e8a8622c95dc4a782c457ab3884e7fa Mon Sep 17 00:00:00 2001
-From: Xu Xingliang <xuxingliang@xiaomi.com>
-Date: Mon, 22 Apr 2024 12:26:35 +0800
-Subject: [PATCH] fix(demo): fix compile warning
-
-In file included from /home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/../../lvgl.h:30,
- from /home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/../lv_demos.h:16,
- from /home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/lv_demo_stress.h:16,
- from /home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/lv_demo_stress.c:9:
-/home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/lv_demo_stress.c: In function 'obj_test_task_cb':
-/home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/lv_demo_stress.c:81:29: warning: format '%zu' expects argument of type 'size_t', but argument 6 has type 'long unsigned int' [-Wformat=]
- 81 | LV_LOG_USER("mem leak since start: %zu, frag: %3d %%", mem_free_start - mon.free_size, mon.frag_pct);
- | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- | |
- | long unsigned int
-/home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/../../src/misc/lv_log.h:132:97: note: in definition of macro 'LV_LOG_USER'
- 132 | # define LV_LOG_USER(...) _lv_log_add(LV_LOG_LEVEL_USER, LV_LOG_FILE, LV_LOG_LINE, __func__, __VA_ARGS__)
- | ^~~~~~~~~~~
-/home/neo/projects/nuttx/apps/graphics/lvgl/lvgl/demos/stress/lv_demo_stress.c:81:54: note: format string is defined here
- 81 | LV_LOG_USER("mem leak since start: %zu, frag: %3d %%", mem_free_start - mon.free_size, mon.frag_pct);
- | ~~^
- | |
- | unsigned int
- | %lu
-
-Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
----
- demos/stress/lv_demo_stress.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/demos/stress/lv_demo_stress.c b/demos/stress/lv_demo_stress.c
-index 65728519c..b76c1f655 100644
---- a/demos/stress/lv_demo_stress.c
-+++ b/demos/stress/lv_demo_stress.c
-@@ -32,7 +32,7 @@ static void obj_test_task_cb(lv_timer_t * tmr);
- **********************/
- static lv_obj_t * main_page;
- static lv_obj_t * ta;
--static uint32_t mem_free_start = 0;
-+static size_t mem_free_start = 0;
- static int16_t g_state = -1;
-
- /**********************
---
-2.34.1
-
diff --git a/graphics/lvgl/CMakeLists.txt b/graphics/lvgl/CMakeLists.txt
index a555334..fb18840 100644
--- a/graphics/lvgl/CMakeLists.txt
+++ b/graphics/lvgl/CMakeLists.txt
@@ -29,7 +29,7 @@
FetchContent_Declare(
lvgl_fetch
DOWNLOAD_DIR ${CMAKE_CURRENT_LIST_DIR}
- URL "https://github.com/lvgl/lvgl/archive/refs/tags/v9.1.0.zip"
+ URL "https://github.com/lvgl/lvgl/archive/refs/tags/v9.2.1.zip"
SOURCE_DIR
${CMAKE_CURRENT_LIST_DIR}/lvgl
BINARY_DIR
@@ -42,9 +42,6 @@
""
TEST_COMMAND
""
- PATCH_COMMAND
- patch -p1 -s -d ${CMAKE_CURRENT_LIST_DIR}/lvgl <
- ${CMAKE_CURRENT_LIST_DIR}/0001-fix-demo-fix-compile-warning.patch
DOWNLOAD_NO_PROGRESS true
TIMEOUT 30)
diff --git a/graphics/lvgl/Kconfig b/graphics/lvgl/Kconfig
index a7ab482..4daf467 100644
--- a/graphics/lvgl/Kconfig
+++ b/graphics/lvgl/Kconfig
@@ -11,8 +11,7 @@
if GRAPHICS_LVGL
-# Below options are copied directly from lvgl/Kconfig, do not edit
-# Kconfig file for LVGL v9.1.0
+# Kconfig file for LVGL v9.2.1
menu "LVGL configuration"
@@ -155,6 +154,8 @@
bool "4: RTTHREAD"
config LV_OS_WINDOWS
bool "5: WINDOWS"
+ config LV_OS_MQX
+ bool "6: MQX"
config LV_OS_CUSTOM
bool "255: CUSTOM"
endchoice
@@ -167,12 +168,22 @@
default 3 if LV_OS_CMSIS_RTOS2
default 4 if LV_OS_RTTHREAD
default 5 if LV_OS_WINDOWS
+ default 6 if LV_OS_MQX
default 255 if LV_OS_CUSTOM
config LV_OS_CUSTOM_INCLUDE
string "Custom OS include header"
default "stdint.h"
depends on LV_OS_CUSTOM
+
+ config LV_USE_FREERTOS_TASK_NOTIFY
+ bool "Use RTOS task with a direct notification for synchronization"
+ default y
+ depends on LV_OS_FREERTOS
+ help
+ Unblocking an RTOS task with a direct notification is 45% faster and uses less RAM
+ than unblocking a task using an intermediary object such as a binary semaphore.
+ RTOS task notifications can only be used when there is only one task that can be the recipient of the event.
endmenu
menu "Rendering Configuration"
@@ -188,6 +199,13 @@
help
Align the start address of draw_buf addresses to this bytes.
+ config LV_DRAW_TRANSFORM_USE_MATRIX
+ bool "Using matrix for transformations"
+ default n
+ depends on LV_USE_MATRIX
+ help
+ Requirements: The rendering engine needs to support 3x3 matrix transformations.
+
config LV_DRAW_LAYER_SIMPLE_BUF_SIZE
int "Optimal size to buffer the widget with opacity"
default 24576
@@ -197,12 +215,64 @@
it is buffered into a "simple" layer before rendering. The widget can be buffered in smaller chunks.
"Transformed layers" (if `transform_angle/zoom` are set) use larger buffers and can't be drawn in chunks.
+ config LV_DRAW_THREAD_STACK_SIZE
+ int "Stack size of draw thread in bytes"
+ default 8192
+ depends on LV_USE_OS > 0
+ help
+ If FreeType or ThorVG is enabled, it is recommended to set it to 32KB or more.
+
config LV_USE_DRAW_SW
bool "Enable software rendering"
default y
help
Required to draw anything on the screen.
+ config LV_DRAW_SW_SUPPORT_RGB565
+ bool "Enable support for RGB565 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_RGB565A8
+ bool "Enable support for RGB565A8 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_RGB888
+ bool "Enable support for RGB888 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_XRGB8888
+ bool "Enable support for XRGB8888 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_ARGB8888
+ bool "Enable support for ARGB8888 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_L8
+ bool "Enable support for L8 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_AL88
+ bool "Enable support for AL88 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_A8
+ bool "Enable support for A8 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
+ config LV_DRAW_SW_SUPPORT_I1
+ bool "Enable support for I1 color format"
+ default y
+ depends on LV_USE_DRAW_SW
+
config LV_DRAW_SW_DRAW_UNIT_CNT
int "Number of draw units"
default 1
@@ -220,7 +290,7 @@
config LV_USE_NATIVE_HELIUM_ASM
bool "Enable native helium assembly"
- default y
+ default n
depends on LV_USE_DRAW_SW
help
Disabling this allows arm2d to work on its own (for testing only)
@@ -233,6 +303,14 @@
0: use a simple renderer capable of drawing only simple rectangles with gradient, images, texts, and straight lines only,
1: use a complex renderer capable of drawing rounded corners, shadow, skew lines, and arcs too.
+ config LV_USE_DRAW_SW_COMPLEX_GRADIENTS
+ bool "Enable drawing complex gradients in software"
+ default n
+ depends on LV_USE_DRAW_SW
+ help
+ 0: do not enable complex gradients
+ 1: enable complex gradients (linear at an angle, radial or conical)
+
config LV_DRAW_SW_SHADOW_CACHE_SIZE
int "Allow buffering some shadow calculation"
depends on LV_DRAW_SW_COMPLEX
@@ -290,26 +368,36 @@
depends on LV_USE_DRAW_VGLITE
default n
- config LV_USE_VGLITE_DRAW_ASYNC
- bool "Enable VGLite draw async"
+ config LV_USE_VGLITE_DRAW_THREAD
+ bool "Use additional draw thread for VG-Lite processing"
depends on LV_USE_DRAW_VGLITE && LV_USE_OS > 0
default y
+
+ config LV_USE_VGLITE_DRAW_ASYNC
+ bool "Enable VGLite draw async"
+ depends on LV_USE_VGLITE_DRAW_THREAD
+ default y
help
- Queue multiple tasks and flash them once to the GPU.
+ Queue multiple tasks and flash them once to the GPU. The task ready state will be send asynchronous to dispatcher.
config LV_USE_VGLITE_ASSERT
bool "Enable VGLite asserts"
- default n
depends on LV_USE_DRAW_VGLITE
+ default n
config LV_USE_DRAW_PXP
bool "Use NXP's PXP on iMX RTxxx platforms"
default n
+ config LV_USE_PXP_DRAW_THREAD
+ bool "Use additional draw thread for PXP processing"
+ depends on LV_USE_DRAW_PXP && LV_USE_OS > 0
+ default y
+
config LV_USE_PXP_ASSERT
bool "Enable PXP asserts"
- default n
depends on LV_USE_DRAW_PXP
+ default n
config LV_USE_DRAW_DAVE2D
bool "Use Renesas Dave2D on RA platforms"
@@ -323,6 +411,8 @@
config LV_USE_DRAW_VG_LITE
bool "Use VG-Lite GPU"
+ default n
+ select LV_USE_MATRIX
config LV_VG_LITE_USE_GPU_INIT
bool "Enable VG-Lite custom external 'gpu_init()' function"
@@ -349,9 +439,24 @@
which usually improves performance,
but does not guarantee the same rendering quality as the software.
+ config LV_VG_LITE_GRAD_CACHE_CNT
+ int "VG-Lite gradient maximum cache number."
+ default 32
+ depends on LV_USE_DRAW_VG_LITE
+ help
+ The memory usage of a single gradient:
+ linear: 4K bytes.
+ radial: radius * 4K bytes.
+
+ config LV_VG_LITE_STROKE_CACHE_CNT
+ int "VG-Lite stroke maximum cache number."
+ default 32
+ depends on LV_USE_DRAW_VG_LITE
+
config LV_USE_VECTOR_GRAPHIC
bool "Use Vector Graphic APIs"
default n
+ select LV_USE_MATRIX
help
Enable drawing support vector graphic APIs.
endmenu
@@ -554,14 +659,28 @@
bool "Add id field to obj"
default n
+ config LV_OBJ_ID_AUTO_ASSIGN
+ bool "Automatically assign an ID when obj is created"
+ default y
+ depends on LV_USE_OBJ_ID
+
config LV_USE_OBJ_ID_BUILTIN
bool "Use builtin method to deal with obj ID"
default n
+ depends on LV_USE_OBJ_ID
config LV_USE_OBJ_PROPERTY
bool "Use obj property set/get API"
default n
+ config LV_USE_OBJ_PROPERTY_NAME
+ bool "Use name to access property"
+ default n
+ depends on LV_USE_OBJ_PROPERTY
+ help
+ Add a name table to every widget class, so the property can be accessed by name.
+ Note, the const table will increase flash usage.
+
config LV_USE_VG_LITE_THORVG
bool "VG-Lite Simulator"
default n
@@ -581,6 +700,11 @@
default n
depends on LV_USE_VG_LITE_THORVG
+ config LV_VG_LITE_THORVG_LINEAR_GRADIENT_EXT_SUPPORT
+ bool "Enable linear gradient extension support"
+ default n
+ depends on LV_USE_VG_LITE_THORVG
+
config LV_VG_LITE_THORVG_16PIXELS_ALIGN
bool "Enable 16 pixels alignment"
default y
@@ -614,6 +738,15 @@
config LV_USE_FLOAT
bool "Use float as lv_value_precise_t"
default n
+
+ config LV_USE_MATRIX
+ bool "Enable matrix support"
+ default n
+ select LV_USE_FLOAT
+
+ config LV_USE_PRIVATE_API
+ bool "Include `lvgl_private.h` in `lvgl.h` to access internal data and functions by default"
+ default n
endmenu
menu "Font Usage"
@@ -666,6 +799,8 @@
bool "Enable Montserrat 28 compressed"
config LV_FONT_DEJAVU_16_PERSIAN_HEBREW
bool "Enable Dejavu 16 Persian, Hebrew, Arabic letters"
+ config LV_FONT_SIMSUN_14_CJK
+ bool "Enable Simsun 14 CJK"
config LV_FONT_SIMSUN_16_CJK
bool "Enable Simsun 16 CJK"
@@ -686,6 +821,9 @@
config LV_FONT_DEFAULT_MONTSERRAT_8
bool "Montserrat 8"
select LV_FONT_MONTSERRAT_8
+ config LV_FONT_DEFAULT_MONTSERRAT_10
+ bool "Montserrat 10"
+ select LV_FONT_MONTSERRAT_10
config LV_FONT_DEFAULT_MONTSERRAT_12
bool "Montserrat 12"
select LV_FONT_MONTSERRAT_12
@@ -749,6 +887,9 @@
config LV_FONT_DEFAULT_DEJAVU_16_PERSIAN_HEBREW
bool "Dejavu 16 Persian, Hebrew, Arabic letters"
select LV_FONT_DEJAVU_16_PERSIAN_HEBREW
+ config LV_FONT_DEFAULT_SIMSUN_14_CJK
+ bool "Simsun 14 CJK"
+ select LV_FONT_SIMSUN_14_CJK
config LV_FONT_DEFAULT_SIMSUN_16_CJK
bool "Simsun 16 CJK"
select LV_FONT_SIMSUN_16_CJK
@@ -791,7 +932,7 @@
config LV_TXT_BREAK_CHARS
string "Can break (wrap) texts on these chars"
- default " ,.;:-_)]}"
+ default " ,.;:-_)}"
config LV_TXT_LINE_BREAK_LONG_LEN
int "Line break long length"
@@ -838,7 +979,7 @@
bool "Enable Arabic/Persian processing"
help
In these languages characters should be replaced with
- an other form based on their position in the text.
+ another form based on their position in the text.
endmenu
menu "Widget Usage"
@@ -874,6 +1015,9 @@
bool "Use calendar header dropdown"
depends on LV_USE_CALENDAR
default y
+ config LV_USE_CALENDAR_CHINESE
+ bool "Use chinese calendar"
+ depends on LV_USE_CALENDAR
config LV_USE_CANVAS
bool "Canvas. Requires: lv_image"
imply LV_USE_IMAGE
@@ -922,15 +1066,18 @@
config LV_USE_LIST
bool "List"
default y if !LV_CONF_MINIMAL
+ config LV_USE_LOTTIE
+ bool "Lottie"
+ default n
+ depends on LV_USE_VECTOR_GRAPHIC && (LV_USE_THORVG_INTERNAL || LV_USE_THORVG_EXTERNAL)
+ help
+ Enable Lottie animations. Requires LV_USE_VECTOR_GRAPHIC and LV_USE_THORVG_INTERNAL or LV_USE_THORVG_EXTERNAL.
config LV_USE_MENU
bool "Menu"
default y if !LV_CONF_MINIMAL
config LV_USE_MSGBOX
bool "Msgbox"
default y if !LV_CONF_MINIMAL
- config LV_USE_OBSERVER
- bool "Observer"
- default n
config LV_USE_ROLLER
bool "Roller. Requires: lv_label"
imply LV_USE_LABEL
@@ -1013,10 +1160,16 @@
endmenu
menu "3rd Party Libraries"
+ config LV_FS_DEFAULT_DRIVE_LETTER
+ int "Default drive letter (e.g. 65 for 'A')"
+ default 0
+ help
+ Setting a default drive letter allows skipping the driver prefix in filepaths
+
config LV_USE_FS_STDIO
bool "File system on top of stdio API"
config LV_FS_STDIO_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65 )"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_STDIO
config LV_FS_STDIO_PATH
@@ -1030,7 +1183,7 @@
config LV_USE_FS_POSIX
bool "File system on top of posix API"
config LV_FS_POSIX_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_POSIX
config LV_FS_POSIX_PATH
@@ -1044,7 +1197,7 @@
config LV_USE_FS_WIN32
bool "File system on top of Win32 API"
config LV_FS_WIN32_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_WIN32
config LV_FS_WIN32_PATH
@@ -1058,7 +1211,7 @@
config LV_USE_FS_FATFS
bool "File system on top of FatFS"
config LV_FS_FATFS_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_FATFS
config LV_FS_FATFS_CACHE_SIZE
@@ -1069,17 +1222,31 @@
config LV_USE_FS_MEMFS
bool "File system on top of memory-mapped API"
config LV_FS_MEMFS_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_MEMFS
config LV_USE_FS_LITTLEFS
bool "File system on top of littlefs API"
config LV_FS_LITTLEFS_LETTER
- int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)"
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
default 0
depends on LV_USE_FS_LITTLEFS
+ config LV_USE_FS_ARDUINO_ESP_LITTLEFS
+ bool "File system on top of Arduino ESP littlefs API"
+ config LV_FS_ARDUINO_ESP_LITTLEFS_LETTER
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
+ default 0
+ depends on LV_USE_FS_ARDUINO_ESP_LITTLEFS
+
+ config LV_USE_FS_ARDUINO_SD
+ bool "File system on top of Arduino SD API"
+ config LV_FS_ARDUINO_SD_LETTER
+ int "Set an upper cased letter on which the drive will accessible (e.g. 65 for 'A')"
+ default 0
+ depends on LV_USE_FS_ARDUINO_SD
+
config LV_USE_LODEPNG
bool "PNG decoder library"
@@ -1099,7 +1266,7 @@
bool "GIF decoder library"
config LV_GIF_CACHE_DECODE_DATA
- bool "Use extra 16KB RAM to cache decoded data to accerlate"
+ bool "Use extra 16KB RAM to cache decoded data to accelerate"
depends on LV_USE_GIF
config LV_BIN_DECODER_RAM_LOAD
@@ -1133,9 +1300,14 @@
bool "Enable loading Tiny TTF data from files"
default n
depends on LV_USE_TINY_TTF
+ config LV_TINY_TTF_CACHE_GLYPH_CNT
+ bool "Tiny ttf cache entries count"
+ default 256
+ depends on LV_USE_TINY_TTF
config LV_USE_RLOTTIE
bool "Lottie library"
+
config LV_USE_THORVG
bool "ThorVG library"
choice
@@ -1214,7 +1386,7 @@
config LV_USE_MEM_MONITOR
bool "Show the used memory and the memory fragmentation"
default n
- depends on LV_STDLIB_BUILTIN && LV_USE_SYSMON
+ depends on LV_USE_BUILTIN_MALLOC && LV_USE_SYSMON
choice
prompt "Memory monitor position"
@@ -1241,10 +1413,6 @@
bool "Center"
endchoice
- config LV_USE_MONKEY
- bool "Enable Monkey test"
- default n
-
config LV_USE_PROFILER
bool "Runtime performance profiler"
config LV_USE_PROFILER_BUILTIN
@@ -1260,6 +1428,10 @@
depends on LV_USE_PROFILER
default "lvgl/src/misc/lv_profiler_builtin.h"
+ config LV_USE_MONKEY
+ bool "Enable Monkey test"
+ default n
+
config LV_USE_GRIDNAV
bool "Enable grid navigation"
default n
@@ -1269,9 +1441,13 @@
default n
config LV_USE_IMGFONT
- bool "draw image in label or span obj"
+ bool "Support using images as font in label or span widgets"
default n
+ config LV_USE_OBSERVER
+ bool "Observer"
+ default y
+
config LV_USE_IME_PINYIN
bool "Enable Pinyin input method"
default n
@@ -1288,7 +1464,7 @@
depends on LV_USE_IME_PINYIN
default y
help
- If you do not use the default thesaurus, be sure to use lv_ime_pinyin after setting the thesauruss
+ If you do not use the default thesaurus, be sure to use lv_ime_pinyin after setting the thesaurus
config LV_IME_PINYIN_CAND_TEXT_NUM
int "Maximum number of candidate panels"
depends on LV_USE_IME_PINYIN
@@ -1310,6 +1486,16 @@
default y
help
This can save some memory, but not much. After the quick access bar is created, it can be hidden by clicking the button at the top left corner of the browsing area, which is very useful for small screen devices.
+
+ config LVGL_VERSION_MAJOR
+ int
+ default 9 # LVGL_VERSION_MAJOR
+ config LVGL_VERSION_MINOR
+ int
+ default 2 # LVGL_VERSION_MINOR
+ config LVGL_VERSION_PATCH
+ int
+ default 1 # LVGL_VERSION_PATCH
endmenu
menu "Devices"
@@ -1362,15 +1548,39 @@
default 1 if LV_SDL_SINGLE_BUFFER
default 2 if LV_SDL_DOUBLE_BUFFER
+ config LV_SDL_ACCELERATED
+ bool "Use hardware acceleration"
+ depends on LV_USE_SDL
+ default y
+
config LV_SDL_FULLSCREEN
bool "SDL fullscreen"
depends on LV_USE_SDL
default n
+
config LV_SDL_DIRECT_EXIT
bool "Exit the application when all SDL windows are closed"
depends on LV_USE_SDL
default y
+ choice
+ prompt "SDL mousewheel mode"
+ depends on LV_USE_SDL
+ default LV_SDL_MOUSEWHEEL_MODE_ENCODER
+
+ config LV_SDL_MOUSEWHEEL_MODE_ENCODER
+ bool "The mousewheel emulates an encoder input device"
+
+ config LV_SDL_MOUSEWHEEL_MODE_CROWN
+ bool "The mousewheel emulates a smart watch crown"
+ endchoice
+
+ config LV_SDL_MOUSEWHEEL_MODE
+ int
+ depends on LV_USE_SDL
+ default 0 if LV_SDL_MOUSEWHEEL_MODE_ENCODER
+ default 1 if LV_SDL_MOUSEWHEEL_MODE_CROWN
+
config LV_USE_X11
bool "Use X11 window manager to open window on Linux PC and handle mouse and keyboard"
default n
@@ -1404,6 +1614,18 @@
With 2 buffers in flush_cb only and address change is required.
endchoice
+ config LV_USE_WAYLAND
+ bool "Use the wayland client to open a window and handle inputs on Linux or BSD"
+ default n
+ config LV_WAYLAND_WINDOW_DECORATIONS
+ bool "Draw client side window decorations, only necessary on Mutter (GNOME)"
+ depends on LV_USE_WAYLAND
+ default n
+ config LV_WAYLAND_WL_SHELL
+ bool "Support the legacy wl_shell instead of the default XDG Shell protocol"
+ depends on LV_USE_WAYLAND
+ default n
+
config LV_USE_LINUX_FBDEV
bool "Use Linux framebuffer device"
default n
@@ -1529,7 +1751,7 @@
default n
config LV_USE_LIBINPUT
- bool "Use libinput input driver"
+ bool "Use libinput input driver"
default n
config LV_LIBINPUT_BSD
@@ -1562,9 +1784,32 @@
bool "Generic MIPI driver"
default y if LV_USE_ST7735 || LV_USE_ST7789 || LV_USE_ST7796 || LV_USE_ILI9341
+ config LV_USE_RENESAS_GLCDC
+ bool "Use Renesas GLCDC driver"
+ default n
+
config LV_USE_WINDOWS
bool "Use LVGL Windows backend"
+ depends on LV_OS_WINDOWS
default n
+
+ config LV_USE_OPENGLES
+ bool "Use GLFW and OpenGL to open window on PC and handle mouse and keyboard"
+ default n
+
+ config LV_USE_OPENGLES_DEBUG
+ bool "Enable debug mode for OpenGL"
+ depends on LV_USE_OPENGLES
+ default n
+
+ config LV_USE_QNX
+ bool "Use a QNX Screen window as a display"
+ default n
+
+ config LV_QNX_BUF_COUNT
+ int
+ depends on LV_USE_QNX
+ default 1
endmenu
menu "Examples"
diff --git a/graphics/lvgl/Makefile b/graphics/lvgl/Makefile
index 03fdbe2..9102f28 100644
--- a/graphics/lvgl/Makefile
+++ b/graphics/lvgl/Makefile
@@ -56,9 +56,7 @@
CONFIG_GRAPH_LVGL_URL ?= "https://github.com/lvgl/lvgl/archive/refs/tags"
-LVGL_PATCHS ?= $(sort $(wildcard 000*.patch))
-
-LVGL_VERSION = 9.1.0
+LVGL_VERSION = 9.2.1
LVGL_TARBALL = v$(LVGL_VERSION).zip
LVGL_UNPACKNAME = lvgl
@@ -76,7 +74,6 @@
$(ECHO_BEGIN)"Unpacking: $(LVGL_TARBALL) -> $(LVGL_UNPACKNAME)"
$(Q) $(UNPACK) $(LVGL_TARBALL)
$(Q) mv lvgl-$(LVGL_VERSION) $(LVGL_UNPACKNAME)
- $(Q) cat $(LVGL_PATCHS) | patch -s -N -d $(LVGL_UNPACKNAME) -p1
$(Q) touch $(LVGL_UNPACKNAME)
$(ECHO_END)