1set(SUPPORTED_EMU_PLATFORMS qemu) 2 3set(QEMU_CPU_TYPE_${ARCH} arc) 4 5if(${CONFIG_SOC_QEMU_ARC_EM}) 6 set(QEMU_CPU_TYPE_${ARCH} arcem) 7 set(QEMU_FLAGS_${ARCH} -cpu arcem) 8elseif(${CONFIG_SOC_QEMU_ARC_HS}) 9 set(QEMU_CPU_TYPE_${ARCH} archs) 10 set(QEMU_FLAGS_${ARCH} -cpu archs) 11elseif(${CONFIG_SOC_QEMU_ARC_HS5X}) 12 set(QEMU_ARCH arc) 13 set(QEMU_CPU_TYPE_${ARCH} hs5x) 14 set(QEMU_FLAGS_${ARCH} -cpu hs5x) 15elseif(${CONFIG_SOC_QEMU_ARC_HS6X}) 16 set(QEMU_ARCH arc64) 17 set(QEMU_CPU_TYPE_${ARCH} hs6x) 18 set(QEMU_FLAGS_${ARCH} -cpu hs6x) 19endif() 20 21# For old QEMU we had 'simhs' qemu board, however we are going to rename it 22# to 'virt' board. It will be renamed in ARC QEMU in the nearest Zephyr SDK 23# (where ARCv3 HS6x support will be added to QEMU) 24# Let's rely on the QEMU defaults instead of specifying exact board name, 25# until the updated Zephyr SDK will be set as default. By that we keep both SDKs 26# (old and new) working for ARCv2. 27# After that we can specify board explicitly with '-M virt' option. 28list(APPEND QEMU_FLAGS_${ARCH} 29 -m 8M 30 -nographic 31 -no-reboot 32 -monitor none 33 -global cpu.firq=false 34 -global cpu.num-irqlevels=15 35 -global cpu.num-irq=25 36 -global cpu.ext-irq=20 37 -global cpu.freq_hz=10000000 38 -global cpu.timer0=true 39 -global cpu.timer1=true 40 -global cpu.has-mpu=true 41 -global cpu.mpu-numreg=16 42 ) 43 44set(BOARD_DEBUG_RUNNER qemu) 45