qemu-e2k/hw
Mark Cave-Ayland 1f11051619 artist: only render dirty scanlines on the display surface
The framebuffer_update_display() function returns the dirty scanlines that were
touched since the last display update, however artist_update_display() always calls
dpy_gfx_update() with start and end scanlines of 0 and s->height causing the
entire display surface to be rendered on every update.

Update artist_update_display() so that dpy_gfx_update() only renders the dirty
scanlines on the display surface, bypassing the display surface rendering
completely if framebuffer_update_display() indicates no changes occurred.

This noticeably improves boot performance when the framebuffer is enabled on my
rather modest laptop here, including making the GTK UI usable.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Message-Id: <20220504153708.10352-4-mark.cave-ayland@ilande.co.uk>
Reviewed-by: Helge Deller <deller@gmx.de>
Reviewed-by: Sven Schnelle <svens@stackframe.org>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2022-05-08 18:52:37 +01:00
..
9pfs
acpi
adc
alpha
arm target/arm: Replace sentinels with ARRAY_SIZE in cpregs.h 2022-05-05 09:35:50 +01:00
audio pc: remove -soundhw pcspk 2022-05-07 07:46:59 +02:00
avr
block
char
core
cpu
cris
display artist: only render dirty scanlines on the display surface 2022-05-08 18:52:37 +01:00
dma
gpio hw/gpio/aspeed_gpio: Fix QOM pin property 2022-05-02 17:03:04 +02:00
hppa hppa: simplify machine function names in machine.c 2022-05-08 18:52:37 +01:00
hyperv util: rename qemu_*block() socket functions 2022-05-03 15:53:20 +04:00
i2c
i386
ide
input hw: replace qemu_set_nonblock() 2022-05-03 15:52:33 +04:00
intc ppc/xive: Update the state of the External interrupt signal 2022-05-05 15:36:17 -03:00
ipack
ipmi
isa
m68k
mem
microblaze
mips
misc lasi: move from hw/hppa to hw/misc 2022-05-08 18:52:37 +01:00
net meson: use have_vhost_* variables to pick sources 2022-05-07 07:46:58 +02:00
nios2
nubus
nvme
nvram
openrisc
pci
pci-bridge
pci-host dino: move from hw/hppa to hw/pci-host 2022-05-08 18:52:36 +01:00
pcmcia
ppc target/ppc: Remove msr_pr macro 2022-05-05 15:36:17 -03:00
rdma
remote
riscv
rtc
rx
s390x target/s390x: add S390_FEAT_VECTOR_ENH2 to qemu CPU model 2022-05-04 08:47:19 +02:00
scsi build: move vhost-scsi configuration to Kconfig 2022-05-07 07:46:58 +02:00
sd
sensor
sh4
smbios
sparc
sparc64
ssi
timer
tpm
tricore
usb
vfio vfio/common: Rename VFIOGuestIOMMU::iommu into ::iommu_mr 2022-05-06 09:06:51 -06:00
virtio meson: use have_vhost_* variables to pick sources 2022-05-07 07:46:58 +02:00
watchdog
xen
xenpv
xtensa hw/xtensa: fix reset value of MIROUT register of MX PIC 2022-05-06 15:27:40 -07:00
Kconfig
meson.build