aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2009-09-10 11:43:34 +0200
committermalc <av1474@comtv.ru>2009-09-10 19:48:01 +0400
commit11d23c352d941eb1412d1c78e4735a442fbbb10b (patch)
treed221e1f60a06dbf3f20bc12fcc721075f3a3e4de
parent9453c5bc2634fdbdd05450034c21a58806d366a4 (diff)
qdev/isa: finish pckbd conversion
drop old init path and switch remaining users to isa_create_simple(). Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--hw/mips_r4k.c4
-rw-r--r--hw/pckbd.c22
-rw-r--r--hw/ppc_prep.c2
3 files changed, 4 insertions, 24 deletions
diff --git a/hw/mips_r4k.c b/hw/mips_r4k.c
index aacb256dcc..ae265a0bd7 100644
--- a/hw/mips_r4k.c
+++ b/hw/mips_r4k.c
@@ -241,6 +241,8 @@ void mips_r4k_init (ram_addr_t ram_size,
/* The PIC is attached to the MIPS CPU INT0 pin */
i8259 = i8259_init(env->irq[2]);
+ isa_bus_new(NULL);
+ isa_bus_irqs(i8259);
rtc_state = rtc_init(0x70, i8259[8], 2000);
@@ -276,7 +278,7 @@ void mips_r4k_init (ram_addr_t ram_size,
hd[MAX_IDE_DEVS * i],
hd[MAX_IDE_DEVS * i + 1]);
- i8042_init(i8259[1], i8259[12], 0x60);
+ isa_create_simple("i8042");
}
static QEMUMachine mips_machine = {
diff --git a/hw/pckbd.c b/hw/pckbd.c
index 5acf4a6338..3d573c2eec 100644
--- a/hw/pckbd.c
+++ b/hw/pckbd.c
@@ -362,28 +362,6 @@ static int kbd_load(QEMUFile* f, void* opaque, int version_id)
return 0;
}
-void i8042_init(qemu_irq kbd_irq, qemu_irq mouse_irq, uint32_t io_base)
-{
- KBDState *s = &kbd_state;
-
- s->irq_kbd = kbd_irq;
- s->irq_mouse = mouse_irq;
-
- kbd_reset(s);
- register_savevm("pckbd", 0, 3, kbd_save, kbd_load, s);
- register_ioport_read(io_base, 1, 1, kbd_read_data, s);
- register_ioport_write(io_base, 1, 1, kbd_write_data, s);
- register_ioport_read(io_base + 4, 1, 1, kbd_read_status, s);
- register_ioport_write(io_base + 4, 1, 1, kbd_write_command, s);
-
- s->kbd = ps2_kbd_init(kbd_update_kbd_irq, s);
- s->mouse = ps2_mouse_init(kbd_update_aux_irq, s);
-#ifdef TARGET_I386
- vmmouse_init(s->mouse);
-#endif
- qemu_register_reset(kbd_reset, s);
-}
-
/* Memory mapped interface */
static uint32_t kbd_mm_readb (void *opaque, target_phys_addr_t addr)
{
diff --git a/hw/ppc_prep.c b/hw/ppc_prep.c
index cde235ae26..c48304b3d0 100644
--- a/hw/ppc_prep.c
+++ b/hw/ppc_prep.c
@@ -711,7 +711,7 @@ static void ppc_prep_init (ram_addr_t ram_size,
hd[2 * i],
hd[2 * i + 1]);
}
- i8042_init(i8259[1], i8259[12], 0x60);
+ isa_create_simple("i8042");
DMA_init(1);
// SB16_init();