# DesignWare ARC nSIM simulated platform configuration

# Copyright (c) 2016, 2019 Synopsys, Inc. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

config BOARD_NSIM
	bool "ARC nSIM simulator"
	depends on SOC_NSIM
	select HAS_COVERAGE_SUPPORT
	help
	  The DesignWare ARC nSIM board is a virtual board based on
	  the ARC nSIM simulator. It demonstrates the ARC core features
	  and a console based on the ns16550 UART model.
