aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorMark Cave-Ayland <mark.cave-ayland@ilande.co.uk>2022-06-24 14:40:57 +0100
committerMark Cave-Ayland <mark.cave-ayland@ilande.co.uk>2022-06-26 18:40:12 +0100
commit6479296fe561cc3aacc3ee99adf02ca7d2120713 (patch)
tree5398b269356b88b36bfd661c6691a2696f2e4cd8 /hw
parent63195aa5a55a885a5c56b7103eb6e698abf2b95a (diff)
downloadqemu-6479296fe561cc3aacc3ee99adf02ca7d2120713.zip
qemu-6479296fe561cc3aacc3ee99adf02ca7d2120713.tar.gz
qemu-6479296fe561cc3aacc3ee99adf02ca7d2120713.tar.bz2
lasips2: move mapping of LASIPS2 registers to HPPA machine
Now that the register memory regions are exposed as SysBus memory regions, move the mapping of the LASIPS2 registers from lasips2_initfn() to the HPPA machine (which is its only user). Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Acked-by: Helge Deller <deller@gmx.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <20220624134109.881989-43-mark.cave-ayland@ilande.co.uk>
Diffstat (limited to 'hw')
-rw-r--r--hw/hppa/machine.c11
-rw-r--r--hw/input/lasips2.c7
2 files changed, 10 insertions, 8 deletions
diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c
index 72677ae..44ecd44 100644
--- a/hw/hppa/machine.c
+++ b/hw/hppa/machine.c
@@ -280,8 +280,15 @@ static void machine_hppa_init(MachineState *machine)
}
/* PS/2 Keyboard/Mouse */
- lasips2_initfn(addr_space, LASI_PS2KBD_HPA,
- qdev_get_gpio_in(lasi_dev, LASI_IRQ_PS2KBD_HPA));
+ dev = DEVICE(lasips2_initfn(LASI_PS2KBD_HPA,
+ qdev_get_gpio_in(lasi_dev,
+ LASI_IRQ_PS2KBD_HPA)));
+ memory_region_add_subregion(addr_space, LASI_PS2KBD_HPA,
+ sysbus_mmio_get_region(SYS_BUS_DEVICE(dev),
+ 0));
+ memory_region_add_subregion(addr_space, LASI_PS2KBD_HPA + 0x100,
+ sysbus_mmio_get_region(SYS_BUS_DEVICE(dev),
+ 1));
/* register power switch emulation */
qemu_register_powerdown_notifier(&hppa_system_powerdown_notifier);
diff --git a/hw/input/lasips2.c b/hw/input/lasips2.c
index 8d3a2d8..84e7a1f 100644
--- a/hw/input/lasips2.c
+++ b/hw/input/lasips2.c
@@ -245,8 +245,7 @@ static void lasips2_port_set_irq(void *opaque, int level)
lasips2_update_irq(port->parent);
}
-LASIPS2State *lasips2_initfn(MemoryRegion *address_space,
- hwaddr base, qemu_irq irq)
+LASIPS2State *lasips2_initfn(hwaddr base, qemu_irq irq)
{
LASIPS2State *s;
DeviceState *dev;
@@ -265,10 +264,6 @@ LASIPS2State *lasips2_initfn(MemoryRegion *address_space,
s->kbd.dev = ps2_kbd_init(lasips2_port_set_irq, &s->kbd);
s->mouse.dev = ps2_mouse_init(lasips2_port_set_irq, &s->mouse);
- memory_region_add_subregion(address_space, base, &s->kbd.reg);
-
- memory_region_add_subregion(address_space, base + 0x100, &s->mouse.reg);
-
return s;
}