With the introduction of the HDMI Connector framework the driver might
end up creating the max_bpc property with min = max = 8. IGT insists
that such properties carry the 'immutable' flag. Automatically set the
flag if the driver asks for the max_bpc property with min == max.

Fixes: aadb3e16b8f3 ("drm/connector: hdmi: Add output BPC to the connector 
state")
Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
---
 drivers/gpu/drm/drm_connector.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index ab6ab7ff7ea8..33847fd63628 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -2610,7 +2610,12 @@ int drm_connector_attach_max_bpc_property(struct 
drm_connector *connector,
 
        prop = connector->max_bpc_property;
        if (!prop) {
-               prop = drm_property_create_range(dev, 0, "max bpc", min, max);
+               u32 flags = 0;
+
+               if (min == max)
+                       flags |= DRM_MODE_PROP_IMMUTABLE;
+
+               prop = drm_property_create_range(dev, flags, "max bpc", min, 
max);
                if (!prop)
                        return -ENOMEM;
 

-- 
2.39.2

Reply via email to