target/riscv: make riscv_cpu_is_vendor() public
We'll use this function in target/riscv/cpu.c to implement setters that won't allow vendor CPU options to be changed. Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Tested-by: Vladimir Isaev <vladimir.isaev@syntacore.com> Message-ID: <20240105230546.265053-3-dbarboza@ventanamicro.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
237a2f8bcf
commit
b62b86a106
@ -190,6 +190,11 @@ void isa_ext_update_enabled(RISCVCPU *cpu, uint32_t ext_offset, bool en)
|
|||||||
*ext_enabled = en;
|
*ext_enabled = en;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool riscv_cpu_is_vendor(Object *cpu_obj)
|
||||||
|
{
|
||||||
|
return object_dynamic_cast(cpu_obj, TYPE_RISCV_VENDOR_CPU) != NULL;
|
||||||
|
}
|
||||||
|
|
||||||
const char * const riscv_int_regnames[] = {
|
const char * const riscv_int_regnames[] = {
|
||||||
"x0/zero", "x1/ra", "x2/sp", "x3/gp", "x4/tp", "x5/t0", "x6/t1",
|
"x0/zero", "x1/ra", "x2/sp", "x3/gp", "x4/tp", "x5/t0", "x6/t1",
|
||||||
"x7/t2", "x8/s0", "x9/s1", "x10/a0", "x11/a1", "x12/a2", "x13/a3",
|
"x7/t2", "x8/s0", "x9/s1", "x10/a0", "x11/a1", "x12/a2", "x13/a3",
|
||||||
|
@ -770,6 +770,7 @@ enum riscv_pmu_event_idx {
|
|||||||
void isa_ext_update_enabled(RISCVCPU *cpu, uint32_t ext_offset, bool en);
|
void isa_ext_update_enabled(RISCVCPU *cpu, uint32_t ext_offset, bool en);
|
||||||
bool isa_ext_is_enabled(RISCVCPU *cpu, uint32_t ext_offset);
|
bool isa_ext_is_enabled(RISCVCPU *cpu, uint32_t ext_offset);
|
||||||
void riscv_cpu_set_misa(CPURISCVState *env, RISCVMXL mxl, uint32_t ext);
|
void riscv_cpu_set_misa(CPURISCVState *env, RISCVMXL mxl, uint32_t ext);
|
||||||
|
bool riscv_cpu_is_vendor(Object *cpu_obj);
|
||||||
|
|
||||||
typedef struct RISCVCPUMultiExtConfig {
|
typedef struct RISCVCPUMultiExtConfig {
|
||||||
const char *name;
|
const char *name;
|
||||||
|
@ -950,11 +950,6 @@ static bool riscv_cpu_is_generic(Object *cpu_obj)
|
|||||||
return object_dynamic_cast(cpu_obj, TYPE_RISCV_DYNAMIC_CPU) != NULL;
|
return object_dynamic_cast(cpu_obj, TYPE_RISCV_DYNAMIC_CPU) != NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool riscv_cpu_is_vendor(Object *cpu_obj)
|
|
||||||
{
|
|
||||||
return object_dynamic_cast(cpu_obj, TYPE_RISCV_VENDOR_CPU) != NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We'll get here via the following path:
|
* We'll get here via the following path:
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user