libliftoff
libliftoff copied to clipboard
Composition on a non-primary plane
In some cases, it may be a good idea to perform composition on an overlay plane. Do we want to support this at all? How should the API look like?
Mind, some hardware has trouble changing the pixel format of the primary on flight without serious flicker
Mind, some hardware has trouble changing the pixel format of the primary on flight without serious flicker
The driver should reject the atomic commit in this case, and require ALLOW_MODESET. Modulo kernel bugs.
A use-case for this came up while discussing about AMD hardware. AMD has a primary plane which supports NV12, an overlay and a cursor plane. For a media player use-case, the following would be desirable:
- NV12 video stream on primary plane.
- UI on overlay plane (any composition work can happen here).
- Cursor on cursor plane.