diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2018-01-11 12:56:45 -0800 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2018-01-22 11:54:23 -0800 |
commit | a3c5e49da98156a3895cddb4a9f54d8bec4e889b (patch) | |
tree | 4b12ae2739c12dc8fcd20c7b36512f1051a511e3 | |
parent | 7ddaee6d0805961dbcc035b37da0d9f9ea07f26c (diff) |
target/xtensa: allow different default CPU for MMU/noMMU
Define default core for noMMU configurations and use that core as
machine default with noMMU XTFPGA machines.
This is done to avoid offering non-working configuration (MMU core on a
noMMU machine) as a default.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
-rw-r--r-- | hw/xtensa/xtfpga.c | 16 | ||||
-rw-r--r-- | target/xtensa/cpu.h | 7 |
2 files changed, 14 insertions, 9 deletions
diff --git a/hw/xtensa/xtfpga.c b/hw/xtensa/xtfpga.c index 74ba8ba229..76ea970215 100644 --- a/hw/xtensa/xtfpga.c +++ b/hw/xtensa/xtfpga.c @@ -584,10 +584,10 @@ static void xtfpga_lx60_nommu_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); - mc->desc = "lx60 noMMU EVB (" XTENSA_DEFAULT_CPU_MODEL ")"; + mc->desc = "lx60 noMMU EVB (" XTENSA_DEFAULT_CPU_NOMMU_MODEL ")"; mc->init = xtfpga_lx60_nommu_init; mc->max_cpus = 4; - mc->default_cpu_type = XTENSA_DEFAULT_CPU_TYPE; + mc->default_cpu_type = XTENSA_DEFAULT_CPU_NOMMU_TYPE; } static const TypeInfo xtfpga_lx60_nommu_type = { @@ -616,10 +616,10 @@ static void xtfpga_lx200_nommu_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); - mc->desc = "lx200 noMMU EVB (" XTENSA_DEFAULT_CPU_MODEL ")"; + mc->desc = "lx200 noMMU EVB (" XTENSA_DEFAULT_CPU_NOMMU_MODEL ")"; mc->init = xtfpga_lx200_nommu_init; mc->max_cpus = 4; - mc->default_cpu_type = XTENSA_DEFAULT_CPU_TYPE; + mc->default_cpu_type = XTENSA_DEFAULT_CPU_NOMMU_TYPE; } static const TypeInfo xtfpga_lx200_nommu_type = { @@ -648,10 +648,10 @@ static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); - mc->desc = "ml605 noMMU EVB (" XTENSA_DEFAULT_CPU_MODEL ")"; + mc->desc = "ml605 noMMU EVB (" XTENSA_DEFAULT_CPU_NOMMU_MODEL ")"; mc->init = xtfpga_ml605_nommu_init; mc->max_cpus = 4; - mc->default_cpu_type = XTENSA_DEFAULT_CPU_TYPE; + mc->default_cpu_type = XTENSA_DEFAULT_CPU_NOMMU_TYPE; } static const TypeInfo xtfpga_ml605_nommu_type = { @@ -680,10 +680,10 @@ static void xtfpga_kc705_nommu_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); - mc->desc = "kc705 noMMU EVB (" XTENSA_DEFAULT_CPU_MODEL ")"; + mc->desc = "kc705 noMMU EVB (" XTENSA_DEFAULT_CPU_NOMMU_MODEL ")"; mc->init = xtfpga_kc705_nommu_init; mc->max_cpus = 4; - mc->default_cpu_type = XTENSA_DEFAULT_CPU_TYPE; + mc->default_cpu_type = XTENSA_DEFAULT_CPU_NOMMU_TYPE; } static const TypeInfo xtfpga_kc705_nommu_type = { diff --git a/target/xtensa/cpu.h b/target/xtensa/cpu.h index d9404aa50a..f300c02c07 100644 --- a/target/xtensa/cpu.h +++ b/target/xtensa/cpu.h @@ -503,10 +503,15 @@ void xtensa_cpu_do_unaligned_access(CPUState *cpu, vaddr addr, #ifdef TARGET_WORDS_BIGENDIAN #define XTENSA_DEFAULT_CPU_MODEL "fsf" +#define XTENSA_DEFAULT_CPU_NOMMU_MODEL "fsf" #else #define XTENSA_DEFAULT_CPU_MODEL "dc232b" +#define XTENSA_DEFAULT_CPU_NOMMU_MODEL "de212" #endif -#define XTENSA_DEFAULT_CPU_TYPE XTENSA_CPU_TYPE_NAME(XTENSA_DEFAULT_CPU_MODEL) +#define XTENSA_DEFAULT_CPU_TYPE \ + XTENSA_CPU_TYPE_NAME(XTENSA_DEFAULT_CPU_MODEL) +#define XTENSA_DEFAULT_CPU_NOMMU_TYPE \ + XTENSA_CPU_TYPE_NAME(XTENSA_DEFAULT_CPU_NOMMU_MODEL) #define cpu_init(cpu_model) cpu_generic_init(TYPE_XTENSA_CPU, cpu_model) |