[RFC PATCH v3 0/6] A drm_plane API to support HDR planes
Harry Wentland
harry.wentland at amd.com
Fri Jul 30 20:41:28 UTC 2021
We are looking to enable HDR support for a couple of single-plane and
multi-plane scenarios. To do this effectively we recommend new interfaces
to drm_plane. The first patch gives a bit of background on HDR and why we
propose these interfaces.
This update is only changing the documentation, not the code. We feel
that we are not close to anything resembling a consensus for the DRM/KMS
API to support (multi-plane) HDR and would like to further the discussion
on this.
The most important bits in the RFC document are probably the sections on
defining HW details and defining SW intentions. We are worried defining
intricate HW details on the DRM/KMS level leads to a lot of complexity
for compositors which can be avoided by rather defining SW intentions.
I will be off for the entire month of August with little time to follow
this thread but would like to get my updated thoughts out for discussion
anyways. Shashank Sharma will help support this discussion.
v3:
* Only doc updates (patch 1)
* Add sections on single-plane and multi-plane HDR
* Describe approach to define HW details vs approach to define SW intentions
* Link Jeremy Cline's excellent HDR summaries
* Outline intention behind overly verbose doc
* Describe FP16 use-case
* Clean up links
v2:
* Moved RFC from cover letter to kernel doc (Daniel Vetter)
* Created new color space property instead of abusing
color_encoding property (Ville)
* Elaborated on need for named transfer functions
* Expanded on reason for SDR luminance definition
* Dropped 'color' from transfer function naming
* Added output_transfer_function on crtc
Bhawanpreet Lakha (3):
drm/color: Add transfer functions for HDR/SDR on drm_plane
drm/color: Add sdr boost property
drm/color: Add color space plane property
Harry Wentland (3):
drm/doc: Color Management and HDR10 RFC
drm/color: Add output transfer function to crtc
drm/amd/display: reformat YCbCr-RGB conversion matrix
Documentation/gpu/rfc/color_intentions.drawio | 1 +
Documentation/gpu/rfc/color_intentions.svg | 3 +
Documentation/gpu/rfc/colorpipe | 1 +
Documentation/gpu/rfc/colorpipe.svg | 3 +
Documentation/gpu/rfc/hdr-wide-gamut.rst | 580 ++++++++++++++++++
Documentation/gpu/rfc/index.rst | 1 +
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 17 +-
drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 28 +-
.../gpu/drm/arm/display/komeda/komeda_crtc.c | 7 +-
.../gpu/drm/arm/display/komeda/komeda_plane.c | 6 +-
drivers/gpu/drm/arm/malidp_crtc.c | 7 +-
drivers/gpu/drm/arm/malidp_planes.c | 6 +-
drivers/gpu/drm/armada/armada_crtc.c | 5 +-
drivers/gpu/drm/armada/armada_overlay.c | 6 +-
.../gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 7 +-
drivers/gpu/drm/drm_atomic_uapi.c | 8 +
drivers/gpu/drm/drm_color_mgmt.c | 177 +++++-
drivers/gpu/drm/i915/display/intel_color.c | 11 +-
drivers/gpu/drm/i915/display/intel_color.h | 2 +-
drivers/gpu/drm/i915/display/intel_crtc.c | 4 +-
drivers/gpu/drm/i915/display/intel_sprite.c | 6 +-
.../drm/i915/display/skl_universal_plane.c | 6 +-
drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 9 +-
drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 8 +-
drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 9 +-
drivers/gpu/drm/nouveau/dispnv04/overlay.c | 6 +-
drivers/gpu/drm/nouveau/dispnv50/head.c | 13 +-
drivers/gpu/drm/omapdrm/omap_crtc.c | 10 +-
drivers/gpu/drm/omapdrm/omap_plane.c | 6 +-
drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 7 +-
drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 5 +-
drivers/gpu/drm/stm/ltdc.c | 8 +-
drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 10 +-
drivers/gpu/drm/tidss/tidss_crtc.c | 9 +-
drivers/gpu/drm/tidss/tidss_plane.c | 10 +-
drivers/gpu/drm/vc4/vc4_crtc.c | 16 +-
include/drm/drm_color_mgmt.h | 49 +-
include/drm/drm_crtc.h | 20 +
include/drm/drm_plane.h | 47 +-
39 files changed, 1074 insertions(+), 60 deletions(-)
create mode 100644 Documentation/gpu/rfc/color_intentions.drawio
create mode 100644 Documentation/gpu/rfc/color_intentions.svg
create mode 100644 Documentation/gpu/rfc/colorpipe
create mode 100644 Documentation/gpu/rfc/colorpipe.svg
create mode 100644 Documentation/gpu/rfc/hdr-wide-gamut.rst
--
2.32.0
More information about the dri-devel
mailing list