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-ayl...@ilande.co.uk> Acked-by: Helge Deller <del...@gmx.de> Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> Message-Id: <20220624134109.881989-43-mark.cave-ayl...@ilande.co.uk> --- hw/hppa/machine.c | 11 +++++++++-- hw/input/lasips2.c | 7 +------ include/hw/input/lasips2.h | 3 +-- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index 72677aeb2a..44ecd446c3 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 8d3a2d88e8..84e7a1feee 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; } diff --git a/include/hw/input/lasips2.h b/include/hw/input/lasips2.h index 5a35c22f73..b9723073e1 100644 --- a/include/hw/input/lasips2.h +++ b/include/hw/input/lasips2.h @@ -33,7 +33,6 @@ struct LASIPS2State { #define TYPE_LASIPS2 "lasips2" OBJECT_DECLARE_SIMPLE_TYPE(LASIPS2State, LASIPS2) -LASIPS2State *lasips2_initfn(MemoryRegion *address_space, hwaddr base, - qemu_irq irq); +LASIPS2State *lasips2_initfn(hwaddr base, qemu_irq irq); #endif /* HW_INPUT_LASIPS2_H */ -- 2.30.2