xserver/hw/xfree86/drivers/modesetting
Sultan Alsawaf a94dd95369 modesetting: add support for TearFree page flips
This adds support for TearFree page flips to eliminate tearing without the
use of a compositor. It allocates two shadow buffers for each CRTC, a back
buffer and a front buffer, and uses damage tracking to minimize excessive
copying between buffers and skip unnecessary flips when the screen's
contents remain unchanged. It works on transformed screens too, such as
rotated and scaled CRTCs.

When PageFlip is enabled, TearFree won't force fullscreen DRI clients to
synchronize their page flips to the vblank interval.

TearFree is disabled by default.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
2022-12-19 23:56:27 -08:00
..
dri2.c dri2: add crocus to the list of va_gl users 2021-11-11 06:49:18 +10:00
driver.c modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
driver.h modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
drmmode_display.c modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
drmmode_display.h modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
dumb_bo.c modesetting: Include dix-config.h from dumb_bo.c 2015-05-12 08:02:11 -07:00
dumb_bo.h modesetting: Drop dumb_bo::map_count field and dead unmap code. 2014-12-11 11:26:19 -08:00
meson.build xfree86: Link fb statically 2019-07-23 14:24:00 -04:00
modesetting.man modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
pageflip.c modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
present.c modesetting: add support for TearFree page flips 2022-12-19 23:56:27 -08:00
vblank.c modesetting: coalesce vblank events to avoid DRM event queue exhaustion 2022-12-19 23:56:27 -08:00