From 4c983dd62b8e984185fd72459c556152e8815aa0 Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 17 Sep 2020 22:51:36 +0200 Subject: [PATCH] Fixed Power Management register handling on the PC87309 Super I/O chip. --- src/sio/sio_pc87309.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/sio/sio_pc87309.c b/src/sio/sio_pc87309.c index d1af15651..586b31d15 100644 --- a/src/sio/sio_pc87309.c +++ b/src/sio/sio_pc87309.c @@ -56,10 +56,9 @@ pc87309_pm_write(uint16_t port, uint8_t val, void *priv) { pc87309_t *dev = (pc87309_t *) priv; - if (port & 1) + if (port & 1) { dev->pm[dev->pm_idx] = val; - else { - dev->pm_idx = val & 0x07; + switch (dev->pm_idx) { case 0x00: fdc_handler(dev); @@ -68,7 +67,8 @@ pc87309_pm_write(uint16_t port, uint8_t val, void *priv) serial_handler(dev, 0); break; } - } + } else + dev->pm_idx = val & 0x07; }