target/microblaze: Split out MicroBlazeCPUConfig

This struct was previously unnamed, and defined in MicroBlazeCPU.
Pull it out to its own typedef so that we can reuse it.

Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Richard Henderson 2020-09-04 10:49:22 -07:00
parent 2a7567a2f3
commit 84bf3249a3
1 changed files with 29 additions and 26 deletions

View File

@ -291,6 +291,34 @@ struct CPUMBState {
} pvr;
};
/*
* Microblaze Configuration Settings
*/
typedef struct {
bool stackprot;
uint32_t base_vectors;
uint8_t addr_size;
uint8_t use_fpu;
uint8_t use_hw_mul;
bool use_barrel;
bool use_div;
bool use_msr_instr;
bool use_pcmp_instr;
bool use_mmu;
bool dcache_writeback;
bool endi;
bool dopb_bus_exception;
bool iopb_bus_exception;
bool illegal_opcode_exception;
bool opcode_0_illegal;
bool div_zero_exception;
bool unaligned_exceptions;
uint8_t pvr_user1;
uint32_t pvr_user2;
char *version;
uint8_t pvr;
} MicroBlazeCPUConfig;
/**
* MicroBlazeCPU:
* @env: #CPUMBState
@ -305,32 +333,7 @@ struct MicroBlazeCPU {
CPUNegativeOffsetState neg;
CPUMBState env;
/* Microblaze Configuration Settings */
struct {
bool stackprot;
uint32_t base_vectors;
uint8_t addr_size;
uint8_t use_fpu;
uint8_t use_hw_mul;
bool use_barrel;
bool use_div;
bool use_msr_instr;
bool use_pcmp_instr;
bool use_mmu;
bool dcache_writeback;
bool endi;
bool dopb_bus_exception;
bool iopb_bus_exception;
bool illegal_opcode_exception;
bool opcode_0_illegal;
bool div_zero_exception;
bool unaligned_exceptions;
uint8_t pvr_user1;
uint32_t pvr_user2;
char *version;
uint8_t pvr;
} cfg;
MicroBlazeCPUConfig cfg;
};