Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions components/esp_lvgl_port/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# Changelog

[Unreleased]

- Added SIMD support also for LVGL 9.2 and above

## 2.6.2

- Changed minimum IDF version to IDF5.1

## 2.6.1

### Features
- Added option to place LVGL task stack to external RAM
- Fixed callback for RGB display for IDF6

### Fixes
- Register button callbacks only if encoder_enter is set https://github.com/espressif/esp-bsp/pull/571/files

## 2.6.0

### Features
- Scaling feature in touch
- Added support for PPA rotation in LVGL9 (available for ESP32-P4)

## 2.6.2

- Changed minimum IDF version to IDF5.1
Expand Down
7 changes: 3 additions & 4 deletions components/esp_lvgl_port/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ endif()

if("${lvgl_ver}" STREQUAL "")
message("Could not determine LVGL version, assuming v9.x")
set(lvgl_ver "9.0.0")
set(lvgl_ver "9.1.0") # With 9.1 we assume support for SIMD acceleration
endif()

# Select folder by LVGL version
Expand Down Expand Up @@ -85,10 +85,9 @@ if("usb_host_hid" IN_LIST build_components)
list(APPEND ADD_LIBS idf::usb_host_hid)
endif()

# Include SIMD assembly source code for rendering, only for (9.1.0 <= LVG_version < 9.2.0) and only for esp32 and esp32s3
if((lvgl_ver VERSION_GREATER_EQUAL "9.1.0") AND (lvgl_ver VERSION_LESS "9.2.0"))
# Include SIMD assembly source code for rendering, only for LVGL_version >= 9.1.0 and only for esp32 and esp32s3
if((lvgl_ver VERSION_GREATER_EQUAL "9.1.0"))
if(CONFIG_IDF_TARGET_ESP32 OR CONFIG_IDF_TARGET_ESP32S3)
message(VERBOSE "Compiling SIMD")
if(CONFIG_IDF_TARGET_ESP32S3)
file(GLOB_RECURSE ASM_SRCS ${PORT_PATH}/simd/*_esp32s3.S) # Select only esp32s3 related files
else()
Expand Down
13 changes: 13 additions & 0 deletions components/esp_lvgl_port/include/esp_lvgl_port_lv_blend.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,19 @@ extern "C" {
#warning "esp_lvgl_port_lv_blend.h included, but CONFIG_LV_DRAW_SW_ASM_CUSTOM not set. Assembly rendering not used"
#else

#include "lvgl.h"

/**
* LVGL 9.2 changed the blending API compared to 9.1
* The types were moved to lv_draw_sw_blend_private.h
* and the leading underscore from type names was removed
*/
#if __has_include("draw/sw/blend/lv_draw_sw_blend_private.h")
#include "draw/sw/blend/lv_draw_sw_blend_private.h"
#define _lv_draw_sw_blend_fill_dsc_t lv_draw_sw_blend_fill_dsc_t
#define _lv_draw_sw_blend_image_dsc_t lv_draw_sw_blend_image_dsc_t
#endif

/*********************
* DEFINES
*********************/
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.esp-box
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.esp-box-3
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.esp-box-lite
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.esp32_s3_eye
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.m5dial
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
4 changes: 4 additions & 0 deletions examples/display_lvgl_benchmark/sdkconfig.bsp.m5stack_core_s3
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ CONFIG_LV_LOG_PRINTF=y
## LVGL9 ##
CONFIG_LV_CONF_SKIP=y
CONFIG_LV_DEF_REFR_PERIOD=10
CONFIG_LV_DRAW_SW_ASM_CUSTOM=y
CONFIG_LV_DRAW_SW_ASM_CUSTOM_INCLUDE="esp_lvgl_port_lv_blend.h"
CONFIG_LV_DRAW_BUF_STRIDE_ALIGN=16
CONFIG_LV_DRAW_BUF_ALIGN=16

#CLIB default
CONFIG_LV_USE_CLIB_MALLOC=y
Expand Down
7 changes: 0 additions & 7 deletions examples/display_lvgl_demos/main/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
set(LV_DEMO_DIR "")
set(LV_DEMOS_SOURCES "")
if(CONFIG_LV_USE_DEMO_BENCHMARK)
list(APPEND LV_DEMO_DIR ../managed_components/lvgl__lvgl/demos)
file(GLOB_RECURSE LV_DEMOS_SOURCES ${LV_DEMO_DIR}/*.c)
endif()

idf_component_register(
SRCS "main.c" ${LV_DEMOS_SOURCES}
INCLUDE_DIRS "." ${LV_DEMO_DIR})
Expand Down
2 changes: 1 addition & 1 deletion examples/display_lvgl_demos/partitions.csv
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
# Note: if you change the phy_init or app partition offset, make sure to change the offset in Kconfig.projbuild
nvs, data, nvs, 0x9000, 0x6000,
phy_init, data, phy, 0xf000, 0x1000,
factory, app, factory, 0x10000, 0x160000,
factory, app, factory, 0x10000, 0x200000,
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp-box
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp-box-3
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp-box-lite
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_BSP_DISPLAY_LVGL_AVOID_TEAR=y
CONFIG_BSP_DISPLAY_LVGL_DIRECT_MODE=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp32_s2_kaluga_kit
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s2"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -14,7 +15,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp32_s3_eye
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.esp32_s3_korvo_2
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_SPIRAM=y
Expand All @@ -19,6 +20,7 @@ CONFIG_BSP_DISPLAY_LVGL_AVOID_TEAR=y
CONFIG_BSP_DISPLAY_LVGL_DIRECT_MODE=y
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.m5dial
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,17 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240=y
CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.bsp.m5stack_core_s3
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -15,7 +16,9 @@ CONFIG_FREERTOS_HZ=1000
CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
3 changes: 3 additions & 0 deletions examples/display_lvgl_demos/sdkconfig.defaults.esp32s3
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_SPIRAM=y
Expand All @@ -21,7 +22,9 @@ CONFIG_LV_MEM_SIZE_KILOBYTES=48
CONFIG_LV_USE_PERF_MONITOR=y
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
CONFIG_LV_FONT_MONTSERRAT_12=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_FONT_MONTSERRAT_16=y
CONFIG_LV_FONT_MONTSERRAT_24=y
CONFIG_LV_USE_DEMO_WIDGETS=y
CONFIG_LV_USE_DEMO_BENCHMARK=y
CONFIG_LV_USE_DEMO_STRESS=y
Expand Down
Loading