# Copyright (c) 2018-2019 Jan Van Winkel # Copyright (c) 2020 Teslabs Engineering S.L. # SPDX-License-Identifier: Apache-2.0 menu "Memory manager settings" config LV_Z_BITS_PER_PIXEL int "Bits per pixel" default 32 range 1 32 depends on LV_Z_BUFFER_ALLOC_STATIC help Number of bits per pixel. choice LV_Z_MEMORY_POOL prompt "Memory pool" default LV_Z_MEM_POOL_SYS_HEAP help Memory pool to use for lvgl allocated objects config LV_Z_MEM_POOL_HEAP_LIB_C bool "C library Heap" depends on !MINIMAL_LIBC || (COMMON_LIBC_MALLOC_ARENA_SIZE != 0) help Use C library malloc and free to allocate objects on the C library heap config LV_Z_MEM_POOL_SYS_HEAP bool "User space lvgl pool" select SYS_HEAP_INFO help Use a dedicated memory pool from a private sys heap. endchoice config LV_Z_MEM_POOL_SIZE int "Memory pool size" default 2048 depends on LV_Z_MEM_POOL_SYS_HEAP help Size of the memory pool in bytes config LV_Z_MEMORY_POOL_CUSTOM_SECTION bool "Link memory pool to custom section" depends on LV_Z_MEM_POOL_SYS_HEAP help Place LVGL memory pool in custom section, with tag ".lvgl_heap". This can be used by custom linker scripts to relocate the LVGL memory pool to a custom location, such as tightly coupled or external memory. config LV_Z_VDB_SIZE int "Rendering buffer size" default 100 if LV_Z_FULL_REFRESH default 10 range 1 100 help Size of the buffer used for rendering screen content as a percentage of total display size. config LV_Z_DOUBLE_VDB bool "Use two rendering buffers" help Use two buffers to render and flush data in parallel config LV_Z_FULL_REFRESH bool "Force full refresh mode" help Force full refresh of display on update. When combined with LV_Z_VDB_SIZE, this setting can improve performance for display controllers that require a framebuffer to be present in system memory, since the controller can render the LVGL framebuffer directly config LV_Z_VDB_ALIGN int "Rending buffer alignment" default 4 depends on LV_Z_BUFFER_ALLOC_STATIC help Rendering buffer alignment. Depending on chosen color depth, buffer may be accessed as a uint8_t *, uint16_t *, or uint32_t *, so buffer must be aligned to prevent unaligned memory access config LV_Z_VBD_CUSTOM_SECTION bool "Link rendering buffers to custom section" depends on LV_Z_BUFFER_ALLOC_STATIC help Place LVGL rendering buffers in custom section, with tag ".lvgl_buf". This can be used by custom linker scripts to relocate the LVGL rendering buffers to a custom location, such as tightly coupled or external memory. choice LV_Z_RENDERING_BUFFER_ALLOCATION prompt "Rendering Buffer Allocation" default LV_Z_BUFFER_ALLOC_STATIC help Type of allocation that should be used for allocating rendering buffers config LV_Z_BUFFER_ALLOC_STATIC bool "Static" help Rendering buffers are statically allocated based on the following configuration parameters: * Horizontal screen resolution * Vertical screen resolution * Rendering buffer size * Bytes per pixel config LV_Z_BUFFER_ALLOC_DYNAMIC bool "Dynamic" help Rendering buffers are dynamically allocated based on the actual display parameters endchoice endmenu