boards: arm: qemu_cortex_m0: filter out a couple of failing tests

We filter out the following kernel tests
- tickless_concept
- timer_api
from the set of tests running on QEMU Cortex-M0 platform,
as the tests consistently fail on QEMU. In addition, we
add a workaround for kernel/interrupt test, so it can
successfully execute on QEMU Cortex-M0.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
This commit is contained in:
Ioannis Glaropoulos 2019-10-01 18:30:17 +02:00 committed by Anas Nashif
commit 85afd0f797
3 changed files with 16 additions and 2 deletions

View file

@ -74,7 +74,19 @@ void isr0(void *param)
{
ARG_UNUSED(param);
printk("%s running !!\n", __func__);
#if defined(CONFIG_BOARD_QEMU_CORTEX_M0)
/* QEMU Cortex-M0 timer emulation appears to not capturing the
* current time accurately, resulting in erroneous busy wait
* implementation.
*
* Work-around:
* Increase busy-loop duration to ensure the timer interrupt will fire
* during the busy loop waiting.
*/
k_busy_wait(MS_TO_US(1000));
#else
k_busy_wait(MS_TO_US(10));
#endif
printk("%s execution completed !!\n", __func__);
zassert_equal(new_val, old_val, "Nested interrupt is not working\n");
}

View file

@ -3,5 +3,7 @@ tests:
arch_exclude: riscv32 nios2
# FIXME: This test fails sporadically on all QEMU platforms, but fails
# consistently when coverage is enabled. Disable until 14173 is fixed.
platform_exclude: qemu_x86_coverage
# This test fails on qemu_cortex_m0 consistently. Disable until the
# root cause is identified.
platform_exclude: qemu_x86_coverage qemu_cortex_m0
tags: kernel

View file

@ -1,7 +1,7 @@
tests:
kernel.timer:
tags: kernel userspace
platform_exclude: qemu_x86_coverage
platform_exclude: qemu_x86_coverage qemu_cortex_m0
kernel.timer.tickless:
build_only: true
extra_args: CONF_FILE="prj_tickless.conf"