feature(lvgl_port): Initial support for SIMD rendering in LVGL (BSP-525)#357
Conversation
tore-espressif
left a comment
There was a problem hiding this comment.
@peter-marcisovsky thank you for the PR! I can see that there is a lot of work done on the assembly part that I am unable to review.
So I'm only leaving few comments about integration with LVGL. We can talk offline toghther with @espzav
|
Reworked test apps:
|
afabff1 to
85906eb
Compare
espzav
left a comment
There was a problem hiding this comment.
@peter-marcisovsky thank you for this PR. Good job! LGTM
tore-espressif
left a comment
There was a problem hiding this comment.
@peter-marcisovsky I can't compile the test_app locally. Could you please provide som instruction how to do it?
|
Reworked test apps (again): Due to a recent LVGL refactoring in the LVGL 9.2 release, where it is not possible to access a private LVGL members by default, also couple of other (breaking in my case) changes, it was decided to get rid of the lvgl component for test apps completely, not to risk another possible refactoring of the lvgl port and test apps.
|
d520d8b to
19db7d6
Compare
|
Very nice work @peter-marcisovsky ! The only remaining thing is compatibility with LVGL 9.2, we can discuss next week |
tore-espressif
left a comment
There was a problem hiding this comment.
@peter-marcisovsky Please check if these comments correctly enable SIMD acceleration only for ESP32 and ESP32s3 and for LVGL versions 9.0 and 9.1
Then we can go ahead with merge :)
19db7d6 to
e868e95
Compare
- Assembly source files for LVGL blend API integrated into lvgl_port
- Initial assembly assembly implementation of:
- ARGB8888 simple fill for esp32s3 and esp32
- RGB565 simple fill for esp32
- Functionality and benchmark test app
e868e95 to
be9da14
Compare
|
@tore-espressif |
|
Latest version LGTM! Have you done any composite benchmarks (e.g. frames per second on some LVGL demo)? If yes, it would be interesting to see how much we gain from these assembly routines. (Not a blocker for pressing the merge button.) |
ESP-BSP Pull Request checklist
Change description
This MR adds an initial support for SIMD rendering in LVGL using LVGL's internal Blend API
Related
This MR Implements:
lvgl_portcomponentkconfigLV_DRAW_SW_ASM_CUSTOMmust be enabledLV_DRAW_SW_ASM_CUSTOM_INCLUDEmust be provided with a header file with function header for the assembly implemented functions, in our caseesp_lvgl_port_lv_blend.hesp_lvgl_port_lv_blend.his under our control during the development phase, and will be included into the official LVGL repo once finalized, just like the existing SIMD header files from ARM.ARGB8888color format, supported targets areesp32s3andesp32RGB565color format, supported target isesp32