# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>

config GENERIC_RISCV
	bool
	select BINMAN if SPL
	select ARCH_EARLY_INIT_R
	imply CPU
	imply CPU_RISCV
	imply RISCV_TIMER if (RISCV_SMODE || SPL_RISCV_SMODE)
	imply RISCV_ACLINT if RISCV_MMODE
	imply SPL_RISCV_ACLINT if SPL_RISCV_MMODE
	imply CMD_CPU
	imply SPL_CPU
	imply SPL_OPENSBI
	imply SPL_LOAD_FIT
