target/riscv: cpu: Add a config option for native debug
Add a config option to enable support for native M-mode debug. This is disabled by default and can be enabled with 'debug=true'. Signed-off-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-Id: <20220421003324.1134983-3-bmeng.cn@gmail.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
b5f6379d13
commit
1acdb3b013
@ -548,6 +548,10 @@ static void riscv_cpu_realize(DeviceState *dev, Error **errp)
|
||||
riscv_set_feature(env, RISCV_FEATURE_AIA);
|
||||
}
|
||||
|
||||
if (cpu->cfg.debug) {
|
||||
riscv_set_feature(env, RISCV_FEATURE_DEBUG);
|
||||
}
|
||||
|
||||
set_resetvec(env, cpu->cfg.resetvec);
|
||||
|
||||
/* Validate that MISA_MXL is set properly. */
|
||||
@ -795,6 +799,7 @@ static Property riscv_cpu_properties[] = {
|
||||
DEFINE_PROP_BOOL("Zve64f", RISCVCPU, cfg.ext_zve64f, false),
|
||||
DEFINE_PROP_BOOL("mmu", RISCVCPU, cfg.mmu, true),
|
||||
DEFINE_PROP_BOOL("pmp", RISCVCPU, cfg.pmp, true),
|
||||
DEFINE_PROP_BOOL("debug", RISCVCPU, cfg.debug, false),
|
||||
|
||||
DEFINE_PROP_STRING("priv_spec", RISCVCPU, cfg.priv_spec),
|
||||
DEFINE_PROP_STRING("vext_spec", RISCVCPU, cfg.vext_spec),
|
||||
|
@ -79,7 +79,8 @@ enum {
|
||||
RISCV_FEATURE_PMP,
|
||||
RISCV_FEATURE_EPMP,
|
||||
RISCV_FEATURE_MISA,
|
||||
RISCV_FEATURE_AIA
|
||||
RISCV_FEATURE_AIA,
|
||||
RISCV_FEATURE_DEBUG
|
||||
};
|
||||
|
||||
/* Privileged specification version */
|
||||
@ -405,6 +406,7 @@ struct RISCVCPUConfig {
|
||||
bool pmp;
|
||||
bool epmp;
|
||||
bool aia;
|
||||
bool debug;
|
||||
uint64_t resetvec;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user