1# Copyright (c) 2023 Fabian Blatz <fabianblatz@gmail.com> 2# Copyright 2023 NXP 3# SPDX-License-Identifier: Apache-2.0 4 5config ZEPHYR_LVGL_MODULE 6 bool 7 8config LVGL 9 bool "LVGL support" 10 help 11 This option enables the LVGL graphics library. 12 13if LVGL 14 15config LV_USE_MONKEY 16 bool 17 18config LV_DPI_DEF 19 int 20 21config LV_CONF_SKIP 22 bool 23 default n 24 25config LV_USE_LOG 26 bool 27 28config LV_LOG_LEVEL_NONE 29 bool 30 31config LV_LOG_LEVEL_ERROR 32 bool 33 34config LV_LOG_LEVEL_WARN 35 bool 36 37config LV_LOG_LEVEL_INFO 38 bool 39 40config LV_LOG_LEVEL_USER 41 bool 42 43config LV_LOG_LEVEL_TRACE 44 bool 45 46config LV_Z_LOG_LEVEL 47 int 48 default 0 if LV_LOG_LEVEL_NONE || !LV_USE_LOG 49 default 1 if LV_LOG_LEVEL_ERROR 50 default 2 if LV_LOG_LEVEL_WARN 51 default 3 if LV_LOG_LEVEL_INFO 52 default 3 if LV_LOG_LEVEL_USER 53 default 4 if LV_LOG_LEVEL_TRACE 54 55config LV_Z_USE_ROUNDER_CB 56 bool 57 default y if LV_Z_AREA_X_ALIGNMENT_WIDTH != 1 || LV_Z_AREA_Y_ALIGNMENT_WIDTH != 1 58 59config APP_LINK_WITH_LVGL 60 bool "Link 'app' with LVGL" 61 default y 62 help 63 Add LVGL header files to the 'app' include path. It may be 64 disabled if the include paths for LVGL are causing aliasing 65 issues for 'app'. 66 67config LV_Z_USE_FILESYSTEM 68 bool "LVGL file system support" 69 depends on FILE_SYSTEM 70 default y if FILE_SYSTEM 71 help 72 Enable LittlevGL file system 73 74choice LV_COLOR_DEPTH 75 default LV_COLOR_DEPTH_16 76 prompt "Color depth (bits per pixel)" 77 78 config LV_COLOR_DEPTH_32 79 bool "32: ARGB8888" 80 config LV_COLOR_DEPTH_24 81 bool "24: RGB888" 82 config LV_COLOR_DEPTH_16 83 bool "16: RGB565" 84 config LV_COLOR_DEPTH_8 85 bool "8: RGB232" 86 config LV_COLOR_DEPTH_1 87 bool "1: monochrome" 88endchoice 89 90config LV_COLOR_16_SWAP 91 bool "Swap the 2 bytes of RGB565 color." 92 depends on LV_COLOR_DEPTH_16 93 94config LV_Z_FLUSH_THREAD 95 bool "Flush LVGL frames in a separate thread" 96 help 97 Flush LVGL frames in a separate thread, while the primary thread 98 renders the next LVGL frame. Can be disabled if the performance 99 gain this approach offers is not required 100 101if LV_Z_FLUSH_THREAD 102 103config LV_Z_FLUSH_THREAD_STACK_SIZE 104 int "Stack size for flushing thread" 105 default 1024 106 help 107 Stack size for LVGL flush thread, which will call display_write 108 109config LV_Z_FLUSH_THREAD_PRIORITY 110 int "LVGL flush thread priority" 111 default -1 112 help 113 Priority of LVGL flush thread. 114 115endif # LV_Z_FLUSH_THREAD 116 117config LV_Z_AREA_X_ALIGNMENT_WIDTH 118 int "Frame X alignment size" 119 default 1 120 help 121 Number of pixels, X axis should be rounded to. Should be used to override 122 the current frame dimensions to meet display and/or LCD host 123 controller requirements. The value must be power of 2. 124 125config LV_Z_AREA_Y_ALIGNMENT_WIDTH 126 int "Frame Y alignment size" 127 default 1 128 help 129 Number of pixels, Y axis should be rounded to. Should be used to override 130 the current frame dimensions to meet display and/or LCD host 131 controller requirements. The value must be power of 2. 132 133config LV_Z_AUTO_INIT 134 bool "Initialize LVGL before application startup" 135 default y 136 help 137 Configure LVGL callbacks and display initialization before the application starts. 138 This can be useful to disable if you need to change a display's pixel format 139 prior to initialization. If using static allocation, ensure that LV_Z_BITS_PER_PIXEL 140 is set correctly. 141 142config LV_Z_INIT_PRIORITY 143 int "Default init priority for LVGL" 144 default 90 145 depends on LV_Z_AUTO_INIT 146 help 147 Priority used for the automatic initialization of LVGL. 148 149config LV_USE_DRAW_DMA2D 150 bool 151 152config LV_DRAW_DMA2D_HAL_INCLUDE 153 string 154 help 155 Must be defined to include path of CMSIS header of target processor 156 e.g. "stm32f769xx.h" or "stm32f429xx.h" 157 158config LV_Z_USE_OSAL 159 bool "Use OSAL enabling parallel rendering" 160 depends on DYNAMIC_THREAD 161 help 162 Use the Zephyr LVGL OSAL to enable parallel rendering 163 pipelines. 164 165config LV_USE_PXP 166 bool 167 168config LV_USE_GPU_NXP_PXP 169 bool 170 default y if LV_USE_PXP 171 172config LV_Z_PXP_INTERRUPT_PRIORITY 173 int "PXP interrupt priority" 174 depends on LV_USE_PXP 175 default 3 176 help 177 Sets the interrupt priority for PXP 178 179rsource "Kconfig.memory" 180rsource "Kconfig.input" 181rsource "Kconfig.shell" 182 183 184endif 185