@@ -2581,6 +2581,7 @@ static void map_linear_vram(CirrusVGAState *s)
cpu_register_physical_memory(isa_mem_base + 0xa8000, 0x8000,
(s->vga.vram_offset + s->cirrus_bank_base[1]) | IO_MEM_RAM);
+ printf("Cirrus VGA: lfb_vram_mapped=1\n");
s->vga.lfb_vram_mapped = 1;
}
else {
@@ -1612,15 +1612,19 @@ static void mark_dirty(target_phys_addr_t start, target_phys_addr_t len)
void vga_dirty_log_start(VGACommonState *s)
{
+ printf("vga_dirty_log_start\n");
if (kvm_enabled() && s->map_addr)
if (!s1) {
+ printf("vga_dirty_log_start_mapping_map_addr, start=0x%08X, len=0x%08X\n", s->map_addr, s->map_end - s->map_addr);
kvm_log_start(s->map_addr, s->map_end - s->map_addr);
mark_dirty(s->map_addr, s->map_end - s->map_addr);
s1 = 1;
}
if (kvm_enabled() && s->lfb_vram_mapped) {
if (!s2) {
+ printf("vga_dirty_log_start_mapping_lfb_vram_mapped, start=0x%08X, len=0x%08X\n", (unsigned int)(isa_mem_base + 0xa0000), 0x8000);
kvm_log_start(isa_mem_base + 0xa0000, 0x8000);
+ printf("vga_dirty_log_start_mapping_lfb_vram_mapped, start=0x%08X, len=0x%08X\n", (unsigned int)(isa_mem_base + 0xa8000), 0x8000);
kvm_log_start(isa_mem_base + 0xa8000, 0x8000);
mark_dirty(isa_mem_base + 0xa0000, 0x10000);
}
@@ -1630,6 +1634,7 @@ void vga_dirty_log_start(VGACommonState *s)
#ifdef CONFIG_BOCHS_VBE
if (kvm_enabled() && s->vbe_mapped) {
if (!s3) {
+ printf("vga_dirty_log_start_mapping_lfb_vram_mapped, start=0x%08X, len=0x%08X\n", VBE_DISPI_LFB_PHYSICAL_ADDRESS, s->vram_size);
kvm_log_start(VBE_DISPI_LFB_PHYSICAL_ADDRESS, s->vram_size);
}
s3 = 1;
@@ -1965,6 +1970,7 @@ void vga_common_reset(VGACommonState *s)
s->map_addr = 0;
s->map_end = 0;
s->lfb_vram_mapped = 0;
+// s->lfb_vram_mapped = 1;
s->bios_offset = 0;
s->bios_size = 0;
s->sr_index = 0;