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. Does VOP2 use matching coefficients for BT.709/BT.2020 YCC output? 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 v2: https://lore.kernel.org/all/[email protected] v1: https://lore.kernel.org/all/[email protected] Jan Claußen (6): 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: Advertise BT.709 and BT.2020 colorimetries drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 3 +++ drivers/gpu/drm/display/drm_bridge_connector.c | 4 ++++ drivers/gpu/drm/display/drm_hdmi_state_helper.c | 3 ++- drivers/gpu/drm/drm_connector.c | 17 +++++++++++++---- drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 4 ++++ include/drm/bridge/dw_hdmi_qp.h | 2 ++ include/drm/drm_bridge.h | 7 +++++++ include/drm/drm_connector.h | 7 +++++++ 8 files changed, 42 insertions(+), 5 deletions(-) -- 2.56.0
