[PATCH v4 0/7] drm: Add colorspace property support to the HDMI helpers
From: Jan Claußen
Date: Sun Oct 18 2026 - 10:34:26 EST
HDMI connectors set up through drmm_connector_hdmi_init() don't expose
the colorspace property, so userspace can't signal BT.2020 colorimetry
for HDR. KWin, for example, doesn't offer HDR without it.
This series lets drivers declare which colorspaces they support and has
the HDMI helpers create the property and force a modeset when it
changes. dw-hdmi-qp on RK3588 is the first user.
Tested on a Radxa Rock 5B (RK3588) with an LG OLED55B87LC in KDE
Plasma 6.7.5. Only BT.2020 RGB is tested.
Changes in v4:
- Set the VOP2 color space from the connector colorspace, so YCbCr output
is converted with the matching matrix (Sashiko)
Changes in v3:
- Move colorspace handling into the HDMI helpers (Maxime)
- Let drivers declare supported colorspaces instead of exposing all
- Split into a series
Changes in v2:
- Fix possible null pointer dereferencing requested by the Sashiko bot
v3: https://lore.kernel.org/all/20261018123037.19560-1-jan.claussen10@xxxxxx
v2: https://lore.kernel.org/all/20261011142733.7806-1-jan.claussen10@xxxxxx
v1: https://lore.kernel.org/all/20261011132024.2833-1-jan.claussen10@xxxxxx
Jan Claußen (7):
drm/connector: Fix typo in colorspace error messages
drm/display: hdmi-state-helper: Force modeset on colorspace change
drm/connector: hdmi: Create the colorspace property
drm/bridge-connector: Pass supported colorspaces to the HDMI helpers
drm/bridge: dw-hdmi-qp: Forward supported colorspaces from platform
data
drm/rockchip: dw_hdmi_qp: Set the VOP2 color space from the connector
drm/rockchip: dw_hdmi_qp: Advertise BT.709 and BT.2020 colorimetries
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 3 +++
.../gpu/drm/display/drm_bridge_connector.c | 4 ++++
.../gpu/drm/display/drm_hdmi_state_helper.c | 3 ++-
drivers/gpu/drm/drm_connector.c | 17 ++++++++++++----
.../gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 20 +++++++++++++++++++
include/drm/bridge/dw_hdmi_qp.h | 2 ++
include/drm/drm_bridge.h | 7 +++++++
include/drm/drm_connector.h | 7 +++++++
8 files changed, 58 insertions(+), 5 deletions(-)
--
2.56.0