| # Copyright (c) 2018-2019 Jan Van Winkel <jan.van_winkel@dxplore.eu> |
| # 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 || (MINIMAL_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_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 |