feat(NemaGFX): Add nema libs for cortex m55. E.g. STM32N6
Untested.
The headers are different but I am leaving them unchanged because the old headers (in LVGL, for M33) appear to be forward-compatible with the M55 headers.
Notes
- Update the Documentation if needed.
- Add Examples if relevant.
- Add Tests if applicable.
- If you added new options to
lv_conf_template.hrun lv_conf_internal_gen.py and update Kconfig. - Run
scripts/code-format.py(astyle v3.4.12needs to installed by runningcd scripts; ./install_astyle.sh) and follow the Code Conventions. - Mark the Pull request as Draft while you are working on the first version, and mark is as Ready when it's ready for review.
- When changes were requested, re-request review to notify the maintainers.
- Help us to review this Pull Request! Anyone can approve or request changes.
Hi :wave:, thank you for your PR!
We've run benchmarks in an emulated environment. Here are the results:
ARM Emulated 32b - lv_conf_perf32b
| Scene Name | Avg CPU (%) | Avg FPS | Avg Time (ms) | Render Time (ms) | Flush Time (ms) |
|---|---|---|---|---|---|
| All scenes avg. | 28 | 37 | 7 | 7 | 0 |
Detailed Results Per Scene
| Scene Name | Avg CPU (%) | Avg FPS | Avg Time (ms) | Render Time (ms) | Flush Time (ms) |
|---|---|---|---|---|---|
| Empty screen | 11 | 33 | 0 | 0 | 0 |
| Moving wallpaper | 2 | 33 | 1 | 1 | 0 |
| Single rectangle | 0 | 50 | 0 | 0 | 0 |
| Multiple rectangles | 0 | 33 | 0 | 0 | 0 |
| Multiple RGB images | 0 | 39 | 0 | 0 | 0 |
| Multiple ARGB images | 9 | 42 | 2 | 2 | 0 |
| Rotated ARGB images | 56 | 44 | 15 | 15 | 0 |
| Multiple labels | 6 | 35 | 0 | 0 | 0 |
| Screen sized text | 97 | 47 | 20 | 20 | 0 |
| Multiple arcs | 33 | 33 | 7 | 7 | 0 |
| Containers | 4 | 37 | 0 | 0 | 0 |
| Containers with overlay | 87 | 21 | 44 | 44 | 0 |
| Containers with opa | 16 | 37 | 0 | 0 | 0 |
| Containers with opa_layer | 16 | 33 | 5 | 5 | 0 |
| Containers with scrolling | 44 | 45 | 12 | 12 | 0 |
| Widgets demo | 68 (-2) | 40 | 16 | 16 | 0 |
| All scenes avg. | 28 | 37 | 7 | 7 | 0 |
ARM Emulated 64b - lv_conf_perf64b
| Scene Name | Avg CPU (%) | Avg FPS | Avg Time (ms) | Render Time (ms) | Flush Time (ms) |
|---|---|---|---|---|---|
| All scenes avg. | 25 | 37 | 6 | 6 | 0 |
Detailed Results Per Scene
| Scene Name | Avg CPU (%) | Avg FPS | Avg Time (ms) | Render Time (ms) | Flush Time (ms) |
|---|---|---|---|---|---|
| Empty screen | 11 | 33 | 0 | 0 | 0 |
| Moving wallpaper | 1 | 33 | 0 | 0 | 0 |
| Single rectangle | 0 | 50 | 0 | 0 | 0 |
| Multiple rectangles | 0 | 33 | 0 | 0 | 0 |
| Multiple RGB images | 0 | 39 (+1) | 0 | 0 | 0 |
| Multiple ARGB images | 7 | 42 (+1) | 0 | 0 | 0 |
| Rotated ARGB images | 31 (+1) | 34 (+1) | 9 | 9 | 0 |
| Multiple labels | 4 (+1) | 33 | 0 | 0 | 0 |
| Screen sized text | 82 (-1) | 46 | 18 | 18 | 0 |
| Multiple arcs | 40 (+1) | 33 | 6 | 6 | 0 |
| Containers | 5 (+1) | 37 (-1) | 0 | 0 | 0 |
| Containers with overlay | 87 (-1) | 22 (-1) | 41 | 41 | 0 |
| Containers with opa | 15 | 37 | 0 (-1) | 0 (-1) | 0 |
| Containers with opa_layer | 8 (-2) | 36 (-2) | 2 | 2 | 0 |
| Containers with scrolling | 45 (-1) | 47 | 12 (+1) | 12 (+1) | 0 |
| Widgets demo | 67 | 41 | 15 | 15 | 0 |
| All scenes avg. | 25 | 37 | 6 | 6 | 0 |
Disclaimer: These benchmarks were run in an emulated environment using QEMU with instruction counting mode. The timing values represent relative performance metrics within this specific virtualized setup and should not be interpreted as absolute real-world performance measurements. Values are deterministic and useful for comparing different LVGL features and configurations, but may not correlate directly with performance on physical hardware. The measurements are intended for comparative analysis only.
:robot: This comment was automatically generated by a bot.