[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 22/74] target-microblaze: Let cpu_mb_init() return M
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PATCH 22/74] target-microblaze: Let cpu_mb_init() return MicroBlazeCPU |
Date: |
Tue, 5 Jun 2012 03:21:54 +0200 |
Since qemu_init_vcpu() is no-op for CONFIG_USER_ONLY drop the env
variable that is now unused there.
Turn cpu_init macro into a static inline function returning CPUMBState
for backwards compatibility.
Signed-off-by: Andreas Färber <address@hidden>
Acked-by: Edgar E. Iglesias <address@hidden>
---
target-microblaze/cpu.h | 12 ++++++++++--
target-microblaze/translate.c | 13 ++++++-------
2 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/target-microblaze/cpu.h b/target-microblaze/cpu.h
index b0ba9fe..4968c24 100644
--- a/target-microblaze/cpu.h
+++ b/target-microblaze/cpu.h
@@ -272,7 +272,7 @@ struct CPUMBState {
#include "cpu-qom.h"
-CPUMBState *cpu_mb_init(const char *cpu_model);
+MicroBlazeCPU *cpu_mb_init(const char *cpu_model);
int cpu_mb_exec(CPUMBState *s);
void cpu_mb_close(CPUMBState *s);
void do_interrupt(CPUMBState *env);
@@ -295,7 +295,15 @@ enum {
#define TARGET_PHYS_ADDR_SPACE_BITS 32
#define TARGET_VIRT_ADDR_SPACE_BITS 32
-#define cpu_init cpu_mb_init
+static inline CPUMBState *cpu_init(const char *cpu_model)
+{
+ MicroBlazeCPU *cpu = cpu_mb_init(cpu_model);
+ if (cpu == NULL) {
+ return NULL;
+ }
+ return &cpu->env;
+}
+
#define cpu_exec cpu_mb_exec
#define cpu_gen_code cpu_mb_gen_code
#define cpu_signal_handler cpu_mb_signal_handler
diff --git a/target-microblaze/translate.c b/target-microblaze/translate.c
index f0ebd59..3c2936f 100644
--- a/target-microblaze/translate.c
+++ b/target-microblaze/translate.c
@@ -1951,21 +1951,20 @@ void cpu_dump_state (CPUMBState *env, FILE *f,
fprintf_function cpu_fprintf,
cpu_fprintf(f, "\n\n");
}
-CPUMBState *cpu_mb_init (const char *cpu_model)
+MicroBlazeCPU *cpu_mb_init(const char *cpu_model)
{
MicroBlazeCPU *cpu;
- CPUMBState *env;
static int tcg_initialized = 0;
int i;
cpu = MICROBLAZE_CPU(object_new(TYPE_MICROBLAZE_CPU));
- env = &cpu->env;
cpu_reset(CPU(cpu));
- qemu_init_vcpu(env);
+ qemu_init_vcpu(&cpu->env);
- if (tcg_initialized)
- return env;
+ if (tcg_initialized) {
+ return cpu;
+ }
tcg_initialized = 1;
@@ -1999,7 +1998,7 @@ CPUMBState *cpu_mb_init (const char *cpu_model)
#define GEN_HELPER 2
#include "helper.h"
- return env;
+ return cpu;
}
void cpu_state_reset(CPUMBState *env)
--
1.7.7
- [Qemu-devel] [PATCH 15/74] xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU, (continued)
- [Qemu-devel] [PATCH 15/74] xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 14/74] xtensa_sim: Pass XtensaCPU to sim_reset(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 19/74] axis_dev88: Use cpu_cris_init() to obtain CRISCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 13/74] xtensa_sim: Use cpu_xtensa_init() to obtain XtensaCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 16/74] xtensa_lx60: Pass XtensaCPU to lx60_reset(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 23/74] petalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 17/74] target-cris: Reindent cpu_cris_init(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 21/74] cris-boot: Pass CRISCPU to main_cpu_reset()., Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 20/74] cris-boot: Pass CRISCPU to cris_load_image(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 18/74] target-cris: Let cpu_cris_init() return CRISCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 22/74] target-microblaze: Let cpu_mb_init() return MicroBlazeCPU,
Andreas Färber <=
- [Qemu-devel] [PATCH 25/74] microblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 24/74] petalogix_s3adsp1800_mmu: Use cpu_mb_init() to obtain MicroBlazeCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 26/74] target-i386: Pass X86CPU to do_cpu_{init, sipi}(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 30/74] target-sh4: Let cpu_sh4_init() return SuperHCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 28/74] pc: Use cpu_x86_init() to obtain X86CPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 27/74] target-i386: Let cpu_x86_init() return X86CPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 31/74] r2d: Use cpu_sh4_init() to obtain SuperHCPU, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 41/74] mips_malta: Pass MIPSCPU to main_cpu_reset(), Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 32/74] r2d: Store SuperHCPU in ResetData, Andreas Färber, 2012/06/04
- [Qemu-devel] [PATCH 29/74] pc: Pass X86CPU to pc_cpu_reset(), Andreas Färber, 2012/06/04