From d9259178fe51a0a550fe50561eb0c346ad4518a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Date: Wed, 20 Nov 2019 15:16:29 +0400 Subject: [PATCH] mips: use sysbus_mmio_get_region() instead of internal fields MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Register the memory region with sysbus_init_mmio() and look it up with sysbus_mmio_get_region() to avoid accessing internal device fields. Suggested-by: Peter Maydell Signed-off-by: Marc-André Lureau Reviewed-by: Peter Maydell Reviewed-by: Aleksandar Markovic Reviewed-by: Philippe Mathieu-Daudé --- hw/char/serial.c | 1 + hw/mips/mips_mipssim.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/char/serial.c b/hw/char/serial.c index 7746dfcee8..6c327183c7 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -998,6 +998,7 @@ static void serial_io_realize(DeviceState *dev, Error **errp) } memory_region_init_io(&s->io, NULL, &serial_io_ops, s, "serial", 8); + sysbus_init_mmio(SYS_BUS_DEVICE(sio), &s->io); sysbus_init_irq(SYS_BUS_DEVICE(sio), &s->irq); } diff --git a/hw/mips/mips_mipssim.c b/hw/mips/mips_mipssim.c index 2c2c7f25b2..84c03dd035 100644 --- a/hw/mips/mips_mipssim.c +++ b/hw/mips/mips_mipssim.c @@ -227,7 +227,8 @@ mips_mipssim_init(MachineState *machine) qdev_set_legacy_instance_id(dev, 0x3f8, 2); qdev_init_nofail(dev); sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, env->irq[4]); - sysbus_add_io(SYS_BUS_DEVICE(dev), 0x3f8, &SERIAL_IO(dev)->serial.io); + sysbus_add_io(SYS_BUS_DEVICE(dev), 0x3f8, + sysbus_mmio_get_region(SYS_BUS_DEVICE(dev), 0)); } if (nd_table[0].used)