Commit c79b1a38aa ("samples: display:
Convert driver and lvgl sample.yaml to use depends_on") started using
depends_on in the sample YAML for a lvgl application instead of
platform_allow.
This breaks build testing with twister and overflow checking enabled
on more resource constrained platforms. The test case's .config
ends up with:
CONFIG_LVGL_HOR_RES_MAX=320
CONFIG_LVGL_VER_RES_MAX=240
CONFIG_LVGL_VDB_SIZE=64
CONFIG_LVGL_BITS_PER_PIXEL=24
And lib/gui/lvgl/lvgl.c, where we allocate a buffer of size:
(CONFIG_LVGL_BITS_PER_PIXEL *
((CONFIG_LVGL_VDB_SIZE * CONFIG_LVGL_HOR_RES_MAX *
CONFIG_LVGL_VER_RES_MAX) / 100)
/ 8)
Require 147456 bytes to build the sample, ultimately overflowing RAM
if you run something along the lines of:
twister -T samples -p <constrained_platform> --overflow-as-errors
This is a reasonable test to be doing to make sure that sample RAM
requirements do not get too big for a subset of platforms that are of
interest, and it no longer works.
To fix it, add a min_ram line for this case so that we can still run
overflow tests on a large set of samples without fine-grained special
casing or creating an ever-growing list of platform excludes for this
test.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
49 lines
1.6 KiB
YAML
49 lines
1.6 KiB
YAML
sample:
|
|
description: LVGL sample application
|
|
name: lvgl
|
|
tests:
|
|
sample.gui.lvgl:
|
|
harness: display
|
|
platform_allow: reel_board mimxrt1050_evk mimxrt1060_evk mimxrt1064_evk
|
|
tags: samples display gui
|
|
sample.display.adafruit_2_8_tft_touch_v2:
|
|
depends_on: arduino_gpio arduino_i2c arduino_spi
|
|
# Default settings end up allocating an ~150KB sized buffer in lvgl.
|
|
# This adds a bit of buffer to that for other data.
|
|
min_ram: 175
|
|
platform_exclude: reel_board reel_board_v2 ubx_evkannab1_nrf52832
|
|
extra_args: SHIELD=adafruit_2_8_tft_touch_v2
|
|
tags: shield
|
|
harness: console
|
|
harness_config:
|
|
fixture: fixture_shield_adafruit_2_8_tft_touch_v2
|
|
sample.display.waveshare_epaper_gdeh0213b1:
|
|
platform_allow: nrf52840dk_nrf52840
|
|
extra_args: SHIELD=waveshare_epaper_gdeh0213b1
|
|
tags: shield
|
|
sample.display.waveshare_epaper_gdeh0213b72:
|
|
platform_allow: nrf52840dk_nrf52840
|
|
extra_args: SHIELD=waveshare_epaper_gdeh0213b72
|
|
tags: shield
|
|
sample.display.waveshare_epaper_gdeh029a1:
|
|
platform_allow: nrf52840dk_nrf52840
|
|
extra_args: SHIELD=waveshare_epaper_gdeh029a1
|
|
tags: shield
|
|
sample.display.lvgl.sdl:
|
|
build_only: true
|
|
platform_allow: native_posix_64
|
|
tags: samples display gui
|
|
sample.display.buydisplay_2_8_tft_touch_arduino:
|
|
platform_allow: nrf52840dk_nrf52840
|
|
extra_args: SHIELD=buydisplay_2_8_tft_touch_arduino
|
|
tags: shield
|
|
sample.display.dummy:
|
|
build_only: true
|
|
platform_allow: native_posix
|
|
extra_configs:
|
|
- CONFIG_DUMMY_DISPLAY=y
|
|
- CONFIG_DUMMY_DISPLAY_DEV_NAME="DISPLAY"
|
|
- CONFIG_KSCAN=n
|
|
- CONFIG_SDL_DISPLAY=n
|
|
tags: samples display gui
|