This patchset adds support for emulating virtual hardware with VKMS.
The virtual hardware mode can be enabled by using the following command
while loading the module:
sudo modprobe vkms enable_virtual_hw=1
The first patch is prep work for adding virtual_hw mode and refactors
the plane composition in vkms by adding a helper function
vkms_composer_common() which can be used for both vblank mode
and virtual mode.
The second patch adds virtual hardware support as a module option.
It adds new atomic helper functions for the virtual mode
and uses the existing atomic helpers for vblank mode
This gives us two sets of drm_crtc_funcs and drm_crtc_helper_funcs
structs for both modes, making the code flow cleaner and
easier to debug.
This patchset has been tested with the igt tests- kms_writeback, kms_atomic,
kms_lease, kms_flip, kms_pipe_get_crc and preserves results except for
subtests related to crc reads and vertical blanking, in which case,
tests are skipped.
Sumera Priyadarsini (2):
drm/vkms: Refactor vkms_composer_worker() to prep for virtual_hw mode
drm/vkms: Add support for virtual hardware mode
drivers/gpu/drm/vkms/vkms_composer.c | 92 +++++++++++++++++----------
drivers/gpu/drm/vkms/vkms_crtc.c | 43 ++++++++++++-
drivers/gpu/drm/vkms/vkms_drv.c | 16 +++--
drivers/gpu/drm/vkms/vkms_drv.h | 4 ++
drivers/gpu/drm/vkms/vkms_writeback.c | 3 +-
5 files changed, 117 insertions(+), 41 deletions(-)
--
2.31.1