r2d: Use cpu_sh4_init() to obtain SuperHCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
master
Andreas Färber 2012-05-04 18:38:01 +02:00
parent 445e957194
commit fd2f410b37
1 changed files with 7 additions and 3 deletions

View File

@ -224,6 +224,7 @@ static void r2d_init(ram_addr_t ram_size,
const char *kernel_filename, const char *kernel_cmdline,
const char *initrd_filename, const char *cpu_model)
{
SuperHCPU *cpu;
CPUSH4State *env;
ResetData *reset_info;
struct SH7750State *s;
@ -235,14 +236,17 @@ static void r2d_init(ram_addr_t ram_size,
SysBusDevice *busdev;
MemoryRegion *address_space_mem = get_system_memory();
if (!cpu_model)
if (cpu_model == NULL) {
cpu_model = "SH7751R";
}
env = cpu_init(cpu_model);
if (!env) {
cpu = cpu_sh4_init(cpu_model);
if (cpu == NULL) {
fprintf(stderr, "Unable to find CPU definition\n");
exit(1);
}
env = &cpu->env;
reset_info = g_malloc0(sizeof(ResetData));
reset_info->env = env;
reset_info->vector = env->pc;