]> git.proxmox.com Git - mirror_qemu.git/blobdiff - hw/cirrus_vga.c
cirrus_vga: reset lfb_addr after a pci config write if the BAR is unmapped
[mirror_qemu.git] / hw / cirrus_vga.c
index 722cac75446df00db3ca67e2e666f1ce64ef6421..3c5043ecf9ec49b973712e00804e9882d27c0ba9 100644 (file)
@@ -3088,8 +3088,11 @@ static void pci_cirrus_write_config(PCIDevice *d,
     CirrusVGAState *s = &pvs->cirrus_vga;
 
     pci_default_write_config(d, address, val, len);
-    if (s->vga.map_addr && d->io_regions[0].addr == PCI_BAR_UNMAPPED)
+    if (s->vga.map_addr && d->io_regions[0].addr == PCI_BAR_UNMAPPED) {
         s->vga.map_addr = 0;
+        s->vga.lfb_addr = 0;
+        s->vga.lfb_end = 0;
+    }
     cirrus_update_memory_access(s);
 }