mac_via: move VIA1 reset logic from mac_via_reset() to mos6522_q800_via1_reset()

After this change mac_via_reset() is now empty and can be removed.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20210830102447.10806-8-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Mark Cave-Ayland 2021-08-30 11:24:42 +01:00 committed by Laurent Vivier
parent 84e944b2af
commit 14562b375b

View file

@ -945,18 +945,6 @@ static const MemoryRegionOps mos6522_q800_via2_ops = {
}, },
}; };
static void mac_via_reset(DeviceState *dev)
{
MacVIAState *m = MAC_VIA(dev);
MOS6522Q800VIA1State *v1s = &m->mos6522_via1;
ADBBusState *adb_bus = &v1s->adb_bus;
adb_set_autopoll_enabled(adb_bus, true);
v1s->cmd = REG_EMPTY;
v1s->alt = REG_EMPTY;
}
static void mac_via_realize(DeviceState *dev, Error **errp) static void mac_via_realize(DeviceState *dev, Error **errp)
{ {
MacVIAState *m = MAC_VIA(dev); MacVIAState *m = MAC_VIA(dev);
@ -1072,7 +1060,6 @@ static void mac_via_class_init(ObjectClass *oc, void *data)
DeviceClass *dc = DEVICE_CLASS(oc); DeviceClass *dc = DEVICE_CLASS(oc);
dc->realize = mac_via_realize; dc->realize = mac_via_realize;
dc->reset = mac_via_reset;
} }
static TypeInfo mac_via_info = { static TypeInfo mac_via_info = {
@ -1086,8 +1073,10 @@ static TypeInfo mac_via_info = {
/* VIA 1 */ /* VIA 1 */
static void mos6522_q800_via1_reset(DeviceState *dev) static void mos6522_q800_via1_reset(DeviceState *dev)
{ {
MOS6522State *ms = MOS6522(dev); MOS6522Q800VIA1State *v1s = MOS6522_Q800_VIA1(dev);
MOS6522State *ms = MOS6522(v1s);
MOS6522DeviceClass *mdc = MOS6522_GET_CLASS(ms); MOS6522DeviceClass *mdc = MOS6522_GET_CLASS(ms);
ADBBusState *adb_bus = &v1s->adb_bus;
mdc->parent_reset(dev); mdc->parent_reset(dev);
@ -1095,6 +1084,11 @@ static void mos6522_q800_via1_reset(DeviceState *dev)
ms->timers[1].frequency = VIA_TIMER_FREQ; ms->timers[1].frequency = VIA_TIMER_FREQ;
ms->b = VIA1B_vADB_StateMask | VIA1B_vADBInt | VIA1B_vRTCEnb; ms->b = VIA1B_vADB_StateMask | VIA1B_vADBInt | VIA1B_vRTCEnb;
/* ADB/RTC */
adb_set_autopoll_enabled(adb_bus, true);
v1s->cmd = REG_EMPTY;
v1s->alt = REG_EMPTY;
} }
static void mos6522_q800_via1_init(Object *obj) static void mos6522_q800_via1_init(Object *obj)