From 42f2b444a28980017c886464510654b7ae39f682 Mon Sep 17 00:00:00 2001 From: Alin Jerpelea Date: Thu, 10 Oct 2024 09:45:44 +0200 Subject: [PATCH] Revert "lvgl: upgrade to release/v9.2.1" This reverts commit 57dd7fd03f4610bff6ae37c0d9d2d055f74f45cc. --- .../0001-fix-demo-fix-compile-warning.patch | 46 +++ graphics/lvgl/CMakeLists.txt | 5 +- graphics/lvgl/Kconfig | 299 ++---------------- graphics/lvgl/Makefile | 5 +- 4 files changed, 81 insertions(+), 274 deletions(-) create mode 100644 graphics/lvgl/0001-fix-demo-fix-compile-warning.patch diff --git a/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch b/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch new file mode 100644 index 000000000..ca99d3a6e --- /dev/null +++ b/graphics/lvgl/0001-fix-demo-fix-compile-warning.patch @@ -0,0 +1,46 @@ +From d1576c890e8a8622c95dc4a782c457ab3884e7fa Mon Sep 17 00:00:00 2001 +From: Xu Xingliang +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 +--- + 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 fb1884062..a55533409 100644 --- a/graphics/lvgl/CMakeLists.txt +++ b/graphics/lvgl/CMakeLists.txt @@ -29,7 +29,7 @@ if(CONFIG_GRAPHICS_LVGL) FetchContent_Declare( lvgl_fetch DOWNLOAD_DIR ${CMAKE_CURRENT_LIST_DIR} - URL "https://github.com/lvgl/lvgl/archive/refs/tags/v9.2.1.zip" + URL "https://github.com/lvgl/lvgl/archive/refs/tags/v9.1.0.zip" SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/lvgl BINARY_DIR @@ -42,6 +42,9 @@ if(CONFIG_GRAPHICS_LVGL) "" 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 4daf467f3..a7ab48230 100644 --- a/graphics/lvgl/Kconfig +++ b/graphics/lvgl/Kconfig @@ -11,7 +11,8 @@ menuconfig GRAPHICS_LVGL if GRAPHICS_LVGL -# Kconfig file for LVGL v9.2.1 +# Below options are copied directly from lvgl/Kconfig, do not edit +# Kconfig file for LVGL v9.1.0 menu "LVGL configuration" @@ -154,8 +155,6 @@ menu "LVGL configuration" 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 @@ -168,22 +167,12 @@ menu "LVGL configuration" 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" @@ -199,13 +188,6 @@ menu "LVGL configuration" 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 @@ -215,64 +197,12 @@ menu "LVGL configuration" 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 @@ -290,7 +220,7 @@ menu "LVGL configuration" config LV_USE_NATIVE_HELIUM_ASM bool "Enable native helium assembly" - default n + default y depends on LV_USE_DRAW_SW help Disabling this allows arm2d to work on its own (for testing only) @@ -303,14 +233,6 @@ menu "LVGL configuration" 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 @@ -368,36 +290,26 @@ menu "LVGL configuration" depends on LV_USE_DRAW_VGLITE default n - 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 + depends on LV_USE_DRAW_VGLITE && LV_USE_OS > 0 default y help - Queue multiple tasks and flash them once to the GPU. The task ready state will be send asynchronous to dispatcher. + Queue multiple tasks and flash them once to the GPU. config LV_USE_VGLITE_ASSERT bool "Enable VGLite asserts" - depends on LV_USE_DRAW_VGLITE default n + depends on LV_USE_DRAW_VGLITE 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" - depends on LV_USE_DRAW_PXP default n + depends on LV_USE_DRAW_PXP config LV_USE_DRAW_DAVE2D bool "Use Renesas Dave2D on RA platforms" @@ -411,8 +323,6 @@ menu "LVGL configuration" 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" @@ -439,24 +349,9 @@ menu "LVGL configuration" 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 @@ -659,28 +554,14 @@ menu "LVGL configuration" 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 @@ -700,11 +581,6 @@ menu "LVGL configuration" 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 @@ -738,15 +614,6 @@ menu "LVGL configuration" 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" @@ -799,8 +666,6 @@ menu "LVGL configuration" 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" @@ -821,9 +686,6 @@ menu "LVGL configuration" 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 @@ -887,9 +749,6 @@ menu "LVGL configuration" 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 @@ -932,7 +791,7 @@ menu "LVGL configuration" 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" @@ -979,7 +838,7 @@ menu "LVGL configuration" bool "Enable Arabic/Persian processing" help In these languages characters should be replaced with - another form based on their position in the text. + an other form based on their position in the text. endmenu menu "Widget Usage" @@ -1015,9 +874,6 @@ menu "LVGL configuration" 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 @@ -1066,18 +922,15 @@ menu "LVGL configuration" 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 @@ -1160,16 +1013,10 @@ menu "LVGL configuration" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65 )" default 0 depends on LV_USE_FS_STDIO config LV_FS_STDIO_PATH @@ -1183,7 +1030,7 @@ menu "LVGL configuration" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" default 0 depends on LV_USE_FS_POSIX config LV_FS_POSIX_PATH @@ -1197,7 +1044,7 @@ menu "LVGL configuration" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" default 0 depends on LV_USE_FS_WIN32 config LV_FS_WIN32_PATH @@ -1211,7 +1058,7 @@ menu "LVGL configuration" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" default 0 depends on LV_USE_FS_FATFS config LV_FS_FATFS_CACHE_SIZE @@ -1222,31 +1069,17 @@ menu "LVGL configuration" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" 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. 65 for 'A')" + int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" 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" @@ -1266,7 +1099,7 @@ menu "LVGL configuration" bool "GIF decoder library" config LV_GIF_CACHE_DECODE_DATA - bool "Use extra 16KB RAM to cache decoded data to accelerate" + bool "Use extra 16KB RAM to cache decoded data to accerlate" depends on LV_USE_GIF config LV_BIN_DECODER_RAM_LOAD @@ -1300,14 +1133,9 @@ menu "LVGL configuration" 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 @@ -1386,7 +1214,7 @@ menu "LVGL configuration" config LV_USE_MEM_MONITOR bool "Show the used memory and the memory fragmentation" default n - depends on LV_USE_BUILTIN_MALLOC && LV_USE_SYSMON + depends on LV_STDLIB_BUILTIN && LV_USE_SYSMON choice prompt "Memory monitor position" @@ -1413,6 +1241,10 @@ menu "LVGL configuration" 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 @@ -1428,10 +1260,6 @@ menu "LVGL configuration" 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 @@ -1441,13 +1269,9 @@ menu "LVGL configuration" default n config LV_USE_IMGFONT - bool "Support using images as font in label or span widgets" + bool "draw image in label or span obj" default n - config LV_USE_OBSERVER - bool "Observer" - default y - config LV_USE_IME_PINYIN bool "Enable Pinyin input method" default n @@ -1464,7 +1288,7 @@ menu "LVGL configuration" 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 thesaurus + If you do not use the default thesaurus, be sure to use lv_ime_pinyin after setting the thesauruss config LV_IME_PINYIN_CAND_TEXT_NUM int "Maximum number of candidate panels" depends on LV_USE_IME_PINYIN @@ -1486,16 +1310,6 @@ menu "LVGL configuration" 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" @@ -1548,39 +1362,15 @@ menu "LVGL configuration" 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 @@ -1614,18 +1404,6 @@ menu "LVGL configuration" 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 @@ -1751,7 +1529,7 @@ menu "LVGL configuration" default n config LV_USE_LIBINPUT - bool "Use libinput input driver" + bool "Use libinput input driver" default n config LV_LIBINPUT_BSD @@ -1784,32 +1562,9 @@ menu "LVGL configuration" 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 9102f28ef..03fdbe279 100644 --- a/graphics/lvgl/Makefile +++ b/graphics/lvgl/Makefile @@ -56,7 +56,9 @@ WD := ${shell echo $(CURDIR) | sed -e 's/ /\\ /g'} CONFIG_GRAPH_LVGL_URL ?= "https://github.com/lvgl/lvgl/archive/refs/tags" -LVGL_VERSION = 9.2.1 +LVGL_PATCHS ?= $(sort $(wildcard 000*.patch)) + +LVGL_VERSION = 9.1.0 LVGL_TARBALL = v$(LVGL_VERSION).zip LVGL_UNPACKNAME = lvgl @@ -74,6 +76,7 @@ $(LVGL_UNPACKNAME): $(LVGL_TARBALL) $(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)