# Copyright (c) 2024 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_QEMU_VIRT_RISCV64
	select 64BIT
	select CPU_HAS_FPU_DOUBLE_PRECISION
	select RISCV_ISA_RV64I
	select RISCV_ISA_EXT_ZICSR
	select RISCV_ISA_EXT_ZIFENCEI
