vmwgfx didn't have support for vblank or crc generation which made it impossible to use a large number of IGT tests to properly test DRM functionality in the driver. This series add virtual vblank and crc generation support, which allows running most of IGT and immediately helped fix a number of kms issues in the driver. Zack Rusin (5): drm/vmwgfx: Implement virtual kms drm/vmwgfx: Implement virtual crc generation drm/vmwgfx: Fix prime import/export drm/vmwgfx: Fix crtc's atomic check conditional drm/vmwgfx: Sort primary plane formats by order of preference drivers/gpu/drm/vmwgfx/Makefile | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 35 +- drivers/gpu/drm/vmwgfx/vmwgfx_bo.c | 7 +- drivers/gpu/drm/vmwgfx/vmwgfx_bo.h | 2 + drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 5 + drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 7 + drivers/gpu/drm/vmwgfx/vmwgfx_gem.c | 32 ++ drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 51 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 26 +- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 39 +- drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 15 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 32 +- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 28 +- drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 42 +- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 44 +- drivers/gpu/drm/vmwgfx/vmwgfx_vkms.c | 630 +++++++++++++++++++++ drivers/gpu/drm/vmwgfx/vmwgfx_vkms.h | 75 +++ 17 files changed, 963 insertions(+), 109 deletions(-) create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_vkms.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_vkms.h -- 2.40.1