[PATCH 0/2] drm/vkms: Add Virtual hardware module option

Gabriela Bittencourt gabrielabittencourt00 at gmail.com
Wed Apr 8 06:05:01 UTC 2020


Hi,

I'm trying to implement the virtual hardware (virtual_hw) module option on
VKMS module.

The virtual hardware module option is implemented as an option to skip the
timing and vblank subtests. The main idea of virtual_hw is shorten the time
used on each period of operation. For this, the timer for counting the
period is eliminated and the KMS configurations are implemented along with
the standard atomic operations.

During the 'atomic_enable' and 'atomic_disable' the vblank is initialized
only if the virtual_hw is disabled (and therefore, the vblank is enabled).
A kick of crc/vblank is decoupled from vblank_simulate. Case the vblank
is disabled (that is, the vblank_simulate will never execute) a
vkms_composer_work routine is added to the end of the atomic_flush.

The IGT tests used to check the patch were the kms-flip, which kept the
same results, with and without my alterations, with the exceptions of the
tests that required vblank. The warning message and the related tests are
presented below:

Test requirement not met in function run_test_on_crtc_set, file ../tests/kms_flip.c:1285:
Test requirement: vblank
There is no VBlank
Last errno: 95, Operation not supported
 - wf_vblank-ts-check
 - blocking-wf_vblank
 - absolute-wf_vblank
 - blocking-absolute-wf_vblank
 - busy-flip
 - plain-flip-ts-check
 - plain-flip-fb-recreate
 - flip-vs-expired-vblank
 - flip-vs-absolute-wf_vblank
 - basic-flip-vs-wf_vblank
 - flip-vs-blocking-wf-vblank
 - dpms-vs-vblank-race
 - modeset-vs-vblank-race
 - wf_vblank-ts-check-interruptible
 - absolute-wf_vblank-interruptible
 - blocking-absolute-wf_vblank-interruptible
 - plain-flip-ts-check-interruptible
 - plain-flip-fb-recreate-interruptible
 - flip-vs-expired-vblank-interruptible
 - flip-vs-absolute-wf_vblank-interruptible
 - flip-vs-wf_vblank-interruptible
 - dpms-vs-vblank-race-interruptible
 - modeset-vs-vblank-race-interruptible

Any suggestions are very welcome :)

Gabriela Bittencourt (2):
  drm/vkms: Rework vkms_vblank_simulate
  drm/vkms: Add 'virtual_hw' module option

 drivers/gpu/drm/vkms/vkms_crtc.c | 42 +++++++++++++++++++++++++++-----
 drivers/gpu/drm/vkms/vkms_drv.c  | 13 ++++++++--
 drivers/gpu/drm/vkms/vkms_drv.h  |  2 ++
 3 files changed, 49 insertions(+), 8 deletions(-)

-- 
2.25.1



More information about the dri-devel mailing list