# Copyright (c) 2021 Linaro
# SPDX-License-Identifier: Apache-2.0

# The AN547 FVP must be used to enable Ethos-U55 NPU support, but QEMU also
# supports the AN547 without the NPU.
#
# To use QEMU instead of the FVP as an emulation platform, set 'EMU_PLATFORM'
# to 'qemu' instead of 'armfvp', for example:
#
# $ west build -b mps3_an547 samples/hello°world -DEMU_PLATFORM=qemu -t run

set(SUPPORTED_EMU_PLATFORMS qemu armfvp)

# QEMU settings
set(QEMU_CPU_TYPE_${ARCH} cortex-m55)
set(QEMU_FLAGS_${ARCH}
  -cpu ${QEMU_CPU_TYPE_${ARCH}}
  -machine mps3-an547
  -nographic
  -vga none
  )
board_set_debugger_ifnset(qemu)

# FVP settings
set(ARMFVP_BIN_NAME FVP_Corstone_SSE-300_Ethos-U55)

# FVP Parameters
# -C indicate a config option in the form of:
#   instance.parameter=value
# Run the FVP with --list-params to list all options
set(ARMFVP_FLAGS
  -C mps3_board.uart0.out_file=-
  -C mps3_board.uart0.unbuffered_output=1
  -C mps3_board.uart1.out_file=-
  -C mps3_board.uart1.unbuffered_output=1
  -C mps3_board.uart2.out_file=-
  -C mps3_board.uart2.unbuffered_output=1
  -C mps3_board.visualisation.disable-visualisation=1
  )
