summary refs log tree commit diff stats
path: root/hw/piix_pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/piix_pci.c')
-rw-r--r--hw/piix_pci.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/hw/piix_pci.c b/hw/piix_pci.c
index 0dae6f94b0..384d31c0ea 100644
--- a/hw/piix_pci.c
+++ b/hw/piix_pci.c
@@ -137,10 +137,10 @@ static void i440fx_write_config(PCIDevice *dev,
 
     /* XXX: implement SMRAM.D_LOCK */
     pci_default_write_config(dev, address, val, len);
-    if ((address >= I440FX_PAM &&
-         address <= I440FX_PAM + I440FX_PAM_SIZE - 1) ||
-        address == I440FX_SMRAM)
+    if (ranges_overlap(address, len, I440FX_PAM, I440FX_PAM_SIZE) ||
+        range_covers_byte(address, len, I440FX_SMRAM)) {
         i440fx_update_memory_mappings(d);
+    }
 }
 
 static int i440fx_load_old(QEMUFile* f, void *opaque, int version_id)