From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=41751 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ofczn-0006kd-Dk for qemu-devel@nongnu.org; Sun, 01 Aug 2010 14:10:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Ofczm-0005t2-89 for qemu-devel@nongnu.org; Sun, 01 Aug 2010 14:10:47 -0400 Received: from smtp5-g21.free.fr ([212.27.42.5]:43004) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ofczl-0005sQ-LJ for qemu-devel@nongnu.org; Sun, 01 Aug 2010 14:10:46 -0400 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Sun, 1 Aug 2010 19:37:05 +0200 Message-Id: <1280684242-19611-3-git-send-email-hpoussin@reactos.org> In-Reply-To: <4C5579DA.8050508@reactos.org> References: <4C5579DA.8050508@reactos.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PATCH 03/20] [MIPS] Jazz emulation: create a qdev cpu List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Signed-off-by: Herv=C3=A9 Poussineau --- hw/mips_jazz.c | 21 +++++---------------- 1 files changed, 5 insertions(+), 16 deletions(-) diff --git a/hw/mips_jazz.c b/hw/mips_jazz.c index 71b05a2..78ef8f0 100644 --- a/hw/mips_jazz.c +++ b/hw/mips_jazz.c @@ -43,12 +43,6 @@ enum jazz_model_e JAZZ_PICA61, }; =20 -static void main_cpu_reset(void *opaque) -{ - CPUState *env =3D opaque; - cpu_reset(env); -} - static uint32_t rtc_readb(void *opaque, target_phys_addr_t addr) { return cpu_inw(0x71); @@ -128,7 +122,7 @@ void mips_jazz_init (ram_addr_t ram_size, { char *filename; int bios_size, n; - CPUState *env; + BusState *cpu; qemu_irq *rc4030, *i8259; rc4030_dma *dmas; void* rc4030_opaque; @@ -150,12 +144,11 @@ void mips_jazz_init (ram_addr_t ram_size, cpu_model =3D "24Kf"; #endif } - env =3D cpu_init(cpu_model); - if (!env) { + cpu =3D cpu_mips_init_cpu(cpu_model); + if (!cpu) { fprintf(stderr, "Unable to find CPU definition\n"); exit(1); } - qemu_register_reset(main_cpu_reset, env); =20 /* allocate RAM */ ram_offset =3D qemu_ram_alloc(NULL, "mips_jazz.ram", ram_size); @@ -184,17 +177,13 @@ void mips_jazz_init (ram_addr_t ram_size, exit(1); } =20 - /* Init CPU internal devices */ - cpu_mips_irq_init_cpu(env); - cpu_mips_clock_init(env); - /* Chipset */ - rc4030_opaque =3D rc4030_init(env->irq[6], env->irq[3], &rc4030, &dm= as); + rc4030_opaque =3D rc4030_init(qdev_get_gpio_in(cpu->parent, 6), qdev= _get_gpio_in(cpu->parent, 3), &rc4030, &dmas); s_dma_dummy =3D cpu_register_io_memory(dma_dummy_read, dma_dummy_wri= te, NULL); cpu_register_physical_memory(0x8000d000, 0x00001000, s_dma_dummy); =20 /* ISA devices */ - i8259 =3D i8259_init(env->irq[4]); + i8259 =3D i8259_init(qdev_get_gpio_in(cpu->parent, 4)); isa_bus_new(NULL); isa_bus_irqs(i8259); cpu_exit_irq =3D qemu_allocate_irqs(cpu_request_exit, NULL, 1); --=20 1.7.1.GIT