Activate NEMA_GFX on a STM32H7S78

Hello

What do you want to achieve?

A working initialization and function of the nema-gfx with LVGL V9.3

What have you tried so far?

Initialization with internal nemagfx_pool_mem,
Initialization with external nemagfx_pool_mem in PSRAM,
Initialization with libnemagfx-float-abi-hard.a,
Initialization with libnemagfx.a
LVGL V9.3 without Nema-gfx is is basically operational on the STM32H7S78

Code to reproduce

nema_init();

    draw_nema_gfx_unit->base_unit.dispatch_cb = nema_gfx_dispatch;
    draw_nema_gfx_unit->base_unit.evaluate_cb = nema_gfx_evaluate;
    draw_nema_gfx_unit->base_unit.delete_cb = nema_gfx_delete;
    draw_nema_gfx_unit->base_unit.name = "NEMA_GFX";

    /*Create GPU Command List*/
    draw_nema_gfx_unit->cl = nema_cl_create();

    /*Bind Command List*/
    nema_cl_bind_circular(&(draw_nema_gfx_unit->cl));

After nema_cl_bind_circular is called, the processor jumps to 0x00000000

Screenshot and/or video

Environment

  • STM32H7S78-DK
  • **LVGL version: 9.3.0 **
  • **NEMA Library: from Touchgfx for STM32H7S78-DK **

Has anyone a working version of lvgl on a STM32H7S78 with nema-gfx running, or
does anyone have any idea why the processor jumps to address 0 after calling nema_bind?

The nemagfx_pool_mem buffer RAM is working and correctly initialized.

In lv_conf.h:

  • #define LV_USE_OS LV_OS_NONE
  • #define LV_USE_DRAW_SW 1
  • #define LV_USE_DRAW_DMA2D 0
  • #define LV_USE_NEMA_GFX 1
  • #define LV_USE_NEMA_HAL LV_NEMA_HAL_STM32
  • #define LV_USE_NEMA_VG 0