OSDN Git Service

drm/stm: ltdc: attach immutable zpos property to planes
authorRaphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Tue, 7 Sep 2021 15:13:23 +0000 (17:13 +0200)
committerPhilippe Cornu <philippe.cornu@foss.st.com>
Thu, 9 Sep 2021 12:54:59 +0000 (14:54 +0200)
Defines plane ordering by hard-coding an immutable Z position from the
first plane, used as primary layer, to the next ones as overlay in order
of instantiation.

This zpos is only an information as it is not possible to modify it,
blending operations are still applied from the top to the bottom layer.

This patch helps to remove a warning message from the Android
Hardware Composer.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Acked-by: Yannick Fertre <yannick.fertre@foss.st.com>
Reviewed-by: Yannick Fertre <yannick.fertre@foss.st.com>
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210907151323.5850-1-raphael.gallais-pou@foss.st.com
drivers/gpu/drm/stm/ltdc.c

index 195de30..bd603ef 100644 (file)
@@ -1024,6 +1024,8 @@ static int ltdc_crtc_init(struct drm_device *ddev, struct drm_crtc *crtc)
                return -EINVAL;
        }
 
+       drm_plane_create_zpos_immutable_property(primary, 0);
+
        ret = drm_crtc_init_with_planes(ddev, crtc, primary, NULL,
                                        &ltdc_crtc_funcs, NULL);
        if (ret) {
@@ -1046,6 +1048,7 @@ static int ltdc_crtc_init(struct drm_device *ddev, struct drm_crtc *crtc)
                        DRM_ERROR("Can not create overlay plane %d\n", i);
                        goto cleanup;
                }
+               drm_plane_create_zpos_immutable_property(overlay, i);
        }
 
        return 0;