pckbd: clear outport_present in outer pre_load()

The variable outport_present is a flag to show if the outport
subsection was loaded. Clear the outport_present flag in the
outer pre_load() function. This method is recommended in the QEMU
manual for developers in the chapter "Migration, Subsections".

Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20210525181441.27768-12-vr_qemu@t-online.de>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Volker Rümelin 2021-05-25 20:14:41 +02:00 committed by Gerd Hoffmann
parent 314f9064b6
commit 9d74e6c3e7

View File

@ -457,7 +457,6 @@ static void kbd_reset(void *opaque)
s->mode = KBD_MODE_KBD_INT | KBD_MODE_MOUSE_INT;
s->status = KBD_STAT_CMD | KBD_STAT_UNLOCKED;
s->outport = KBD_OUT_RESET | KBD_OUT_A20 | KBD_OUT_ONES;
s->outport_present = false;
s->pending = 0;
kbd_deassert_irq(s);
if (s->throttle_timer) {
@ -564,6 +563,7 @@ static int kbd_pre_load(void *opaque)
{
KBDState *s = opaque;
s->outport_present = false;
s->extended_state_loaded = false;
return 0;
}
@ -574,7 +574,6 @@ static int kbd_post_load(void *opaque, int version_id)
if (!s->outport_present) {
s->outport = kbd_outport_default(s);
}
s->outport_present = false;
s->pending = s->pending_tmp;
if (!s->extended_state_loaded) {
s->obsrc = s->status & KBD_STAT_OBF ?