pckbd: more vmstate_register() from i8042_mm_init() to i8042_mmio_realize()

Note in this case it is not possible to register a (new) VMStateDescription in
the DeviceClass without breaking migration compatibility for the MIPS magnum
machine.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Acked-by: Helge Deller <deller@gmx.de>
Message-Id: <20220624134109.881989-30-mark.cave-ayland@ilande.co.uk>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Mark Cave-Ayland 2022-06-24 14:40:44 +01:00
parent 01d924dce8
commit 75877e9356
1 changed files with 3 additions and 2 deletions

View File

@ -682,6 +682,9 @@ static void i8042_mmio_realize(DeviceState *dev, Error **errp)
"i8042", s->size);
sysbus_init_mmio(SYS_BUS_DEVICE(dev), &s->region);
/* Note we can't use dc->vmsd without breaking migration compatibility */
vmstate_register(NULL, 0, &vmstate_kbd, ks);
}
static void i8042_mmio_init(Object *obj)
@ -723,8 +726,6 @@ MMIOKBDState *i8042_mm_init(qemu_irq kbd_irq, qemu_irq mouse_irq,
s->irq_kbd = kbd_irq;
s->irq_mouse = mouse_irq;
vmstate_register(NULL, 0, &vmstate_kbd, s);
s->kbd = ps2_kbd_init(kbd_update_kbd_irq, s);
s->mouse = ps2_mouse_init(kbd_update_aux_irq, s);