On 05/01/2023 01:40, Jessica Zhang wrote:
Add support for solid_fill property to drm_plane. In addition, add
support for setting and getting the values for solid_fill.

solid_fill holds data for supporting solid fill planes. The property
accepts an RGB323232 value and the driver data is formatted as such:

struct drm_solid_fill {
        u32 r;
        u32 g;
        u32 b;
};

To enable solid fill planes, userspace must assigned solid_fill to a
property blob containing the following information:

struct drm_solid_fill_info {
        u8 version;
        u32 r, g, b;

BTW: should we add support for alpha too? DPU hardware supports using RGBA as a fill colour format, doesn't it?

But then we face the obvious question, how do we communicate to userspace if the hardware support RGB or RGBA?

};

Changes in V2:
- Changed solid_fill property to a property blob (Simon, Dmitry)
- Added drm_solid_fill struct (Simon)
- Added drm_solid_fill_info struct (Simon)

Changes in V3:
- Corrected typo in drm_solid_fill struct documentation

Signed-off-by: Jessica Zhang <quic_jessz...@quicinc.com>
---
  drivers/gpu/drm/drm_atomic_state_helper.c |  9 ++++
  drivers/gpu/drm/drm_atomic_uapi.c         | 59 +++++++++++++++++++++++
  drivers/gpu/drm/drm_blend.c               | 17 +++++++
  include/drm/drm_blend.h                   |  1 +
  include/drm/drm_plane.h                   | 43 +++++++++++++++++
  5 files changed, 129 insertions(+)

--
With best wishes
Dmitry

Reply via email to