boards: centralize QEMU icount management

Instead of endlessly repeating the same command line args,
centralize this and tune the shift value on a per-board
basis.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
Andrew Boie 2020-05-19 12:24:25 -07:00 committed by Anas Nashif
commit a9670ab5cf
31 changed files with 33 additions and 41 deletions

View file

@ -11,13 +11,12 @@ if(CONFIG_X86_64)
set(QEMU_CPU_TYPE_${ARCH} qemu64,+x2apic)
if("${CONFIG_MP_NUM_CPUS}" STREQUAL "1")
# icount works with 1 CPU so we can enable it here.
# FIXME: once this works across configs, remove this line and set
# CONFIG_QEMU_ICOUNT_SHIFT in defconfig instead.
list(APPEND QEMU_EXTRA_FLAGS -icount shift=5,align=off,sleep=off -rtc clock=vm)
endif()
else()
set(QEMU_CPU_TYPE_${ARCH} qemu32,+nx,+pae)
if(CONFIG_QEMU_ICOUNT)
list(APPEND QEMU_EXTRA_FLAGS -icount shift=5,align=off,sleep=off -rtc clock=vm)
endif()
endif()
set(QEMU_FLAGS_${ARCH}

View file

@ -16,3 +16,4 @@ CONFIG_SMP=y
CONFIG_MP_NUM_CPUS=2
CONFIG_X86_MMU=y
CONFIG_X86_VERY_EARLY_CONSOLE=y
CONFIG_QEMU_ICOUNT=n

View file

@ -18,3 +18,4 @@ CONFIG_SCHED_SCALABLE=y
CONFIG_WAITQ_SCALABLE=y
CONFIG_COVERAGE=y
CONFIG_X86_VERY_EARLY_CONSOLE=y
CONFIG_QEMU_ICOUNT_SHIFT=5

View file

@ -17,3 +17,4 @@ CONFIG_DEBUG_INFO=y
CONFIG_SCHED_SCALABLE=y
CONFIG_WAITQ_SCALABLE=y
CONFIG_X86_VERY_EARLY_CONSOLE=y
CONFIG_QEMU_ICOUNT_SHIFT=5

View file

@ -12,3 +12,4 @@ CONFIG_UART_CONSOLE=y
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=25000000
CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_DEBUG_INFO=y
CONFIG_QEMU_ICOUNT_SHIFT=5