SysBusDevice::mmio[] is kind of internal. Use the proper sysbus_mmio_get_region() accessor.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]> --- hw/timer/hpet.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c index 1acba4fa9db..4ed79d72620 100644 --- a/hw/timer/hpet.c +++ b/hw/timer/hpet.c @@ -655,6 +655,7 @@ static void hpet_reset(DeviceState *d) { HPETState *s = HPET(d); SysBusDevice *sbd = SYS_BUS_DEVICE(d); + MemoryRegion *mr = sysbus_mmio_get_region(sbd, 0); int i; for (i = 0; i < s->num_timers; i++) { @@ -677,7 +678,7 @@ static void hpet_reset(DeviceState *d) s->hpet_offset = 0ULL; s->config = 0ULL; hpet_fw_cfg.hpet[s->hpet_id].event_timer_block_id = (uint32_t)s->capability; - hpet_fw_cfg.hpet[s->hpet_id].address = sbd->mmio[0].addr; + hpet_fw_cfg.hpet[s->hpet_id].address = mr->addr; /* to document that the RTC lowers its output on reset as well */ s->rtc_irq_level = 0; -- 2.51.0
