1common:
2  tags: llext
3  platform_allow:
4    - qemu_cortex_a9          # ARM Cortex-A9 (ARMv7-A ISA)
5    - qemu_cortex_r5          # ARM Cortex-R5 (ARMv7-R ISA)
6    - qemu_cortex_a53         # ARM Cortex-A53 (ARMv8-A ISA)
7    - mps2/an385              # ARM Cortex-M3 (ARMv7-M ISA)
8    - mps2/an521/cpu0         # ARM Cortex-M33 (ARMv8-M ISA)
9    - qemu_xtensa/dc233c
10  integration_platforms:
11    - qemu_xtensa/dc233c
12    - mps2/an385
13    - qemu_cortex_a53
14  harness: console
15
16sample:
17  name: CONFIG_MODULES test
18  description: Call code directly and from extensions
19
20tests:
21  sample.llext.modules.module_build:
22    extra_configs:
23      - CONFIG_HELLO_WORLD_MODE=m
24      # Disabling MPU is the most compatible option. If the target supports
25      # CONFIG_USERSPACE, that should be preferred as it has many additional
26      # security benefits.
27      - arch:arm:CONFIG_ARM_MPU=n
28      - arch:arm:CONFIG_ARM_AARCH32_MMU=n
29    harness_config:
30      type: one_line
31      regex:
32        - "Hello, world, from an llext!"
33  sample.llext.modules.builtin_build:
34    harness_config:
35      type: one_line
36      regex:
37        - "Hello, world, from the main binary!"
38