[RFC PATCH 0/3] drm/vkms: add overlay plane support

Melissa Wen melissa.srw at gmail.com
Sat Feb 20 14:37:49 UTC 2021


Adding support to overlay type in addition to primary and cursor plane.
The planes composition relies on the z order of the active planes and
only occurs if there is a primary plane (as in the current behavior).

The first patch decouples cursor from crtc_init. It initializes the CRTC
only with primary plane, and setup the cursor plane externally. This is
a preparation to allow to initialize the overlay plane between primary
and cursor.

The second patch generalize variables and functions names to refer to
any kind of plane, not only cursor. The goal is to reuse them for
blending overlay and cursor planes to primary.

The third patch creates a module option to enable overlay, and includes
overlay to supported types of plane. When the overlay option is enabled,
one overlay plane is initialized (plus primary and cursor) and it is
included in the planes composition.

This work preserves the current results of IGT tests: kms_cursor_crc;
kms_flip and kms_writeback. In addition, subtests related to overlay in
kms_atomic and kms_plane_cursor start to pass (pointed out in the commit
message).

Melissa Wen (3):
  drm/vkms: decouple cursor plane setup from crtc_init
  drm/vkms: rename cursor to plane on ops of planes composition
  drm/vkms: add overlay support

 drivers/gpu/drm/vkms/vkms_composer.c | 49 ++++++++++++++++------------
 drivers/gpu/drm/vkms/vkms_crtc.c     |  4 +--
 drivers/gpu/drm/vkms/vkms_drv.c      |  5 +++
 drivers/gpu/drm/vkms/vkms_drv.h      |  3 +-
 drivers/gpu/drm/vkms/vkms_output.c   | 31 ++++++++++++++----
 drivers/gpu/drm/vkms/vkms_plane.c    | 20 +++++++++---
 6 files changed, 76 insertions(+), 36 deletions(-)

-- 
2.30.0



More information about the dri-devel mailing list