[PATCH RFC 21/25] drm/rockchip: dw_hdmi_qp: Add QMS support
Nicolas Frattaroli
nicolas.frattaroli at collabora.com
Mon Sep 21 08:51:47 PDT 2026
Register the "qms_enabled" property on RK3588. This property can then be
used by userspace to request that a given VRR target frame rate on a
CRTC should be achieved through QMS. The common HDMI state helpers
implement the actual functionality for this.
Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli at collabora.com>
---
drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
index 2b9432aa8c54..01ed7c18a7e0 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
@@ -521,6 +521,7 @@ struct rockchip_hdmi_qp_cfg {
const struct rockchip_hdmi_qp_ctrl_ops *ctrl_ops;
const struct dw_hdmi_qp_phy_ops *phy_ops;
bool supports_vrr;
+ bool supports_qms;
};
static const struct rockchip_hdmi_qp_cfg rk3576_hdmi_cfg = {
@@ -541,6 +542,7 @@ static const struct rockchip_hdmi_qp_cfg rk3588_hdmi_cfg = {
.ctrl_ops = &rk3588_hdmi_ctrl_ops,
.phy_ops = &rk3588_hdmi_phy_ops,
.supports_vrr = true,
+ .supports_qms = true,
};
static const struct of_device_id dw_hdmi_qp_rockchip_dt_ids[] = {
@@ -709,6 +711,13 @@ static int dw_hdmi_qp_rockchip_bind(struct device *dev, struct device *master,
"Failed to attach 'vrr_capable' property\n");
}
+ if (cfg->supports_qms) {
+ ret = drm_connector_attach_qms_enabled_property(connector);
+ if (ret)
+ return dev_err_probe(hdmi->dev, ret,
+ "Failed to attach 'qms_enabled' property\n");
+ }
+
return 0;
}
--
2.55.0
More information about the linux-arm-kernel
mailing list