tcx: use tcx_set_dirty() for accelerated ops
Rather than calling memory_region_set_dirty() directly, make sure that we call
tcx_set_dirty() instead. This ensures that the 24-bit plane and cplane are
also invalidated correctly.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
diff --git a/hw/display/tcx.c b/hw/display/tcx.c
index 6da6dfb..3f00735 100644
--- a/hw/display/tcx.c
+++ b/hw/display/tcx.c
@@ -525,7 +525,7 @@
val <<= 1;
}
}
- memory_region_set_dirty(&s->vram_mem, addr, 32);
+ tcx_set_dirty(s, addr, 32);
}
}
@@ -558,7 +558,7 @@
val <<= 1;
}
}
- memory_region_set_dirty(&s->vram_mem, addr, 32);
+ tcx_set_dirty(s, addr, 32);
}
}
@@ -616,7 +616,7 @@
memcpy(&s->vram24[addr], &s->vram24[adsr], len * 4);
}
}
- memory_region_set_dirty(&s->vram_mem, addr, len);
+ tcx_set_dirty(s, addr, len);
}
}
@@ -650,7 +650,7 @@
memcpy(&s->cplane[addr], &s->cplane[adsr], len * 4);
}
}
- memory_region_set_dirty(&s->vram_mem, addr, len);
+ tcx_set_dirty(s, addr, len);
}
}
@@ -687,7 +687,7 @@
start = ymin * 1024;
end = ymax * 1024;
- memory_region_set_dirty(&s->vram_mem, start, end-start);
+ tcx_set_dirty(s, start, end - start);
}
static uint64_t tcx_thc_readl(void *opaque, hwaddr addr,