amlogic: drm: support zpos update 39/259139/1 accepted/tizen/unified/20210602.122333 submit/tizen/20210602.005153
authorSihyun, Park <shwan.park@samsung.com>
Mon, 31 May 2021 10:19:37 +0000 (19:19 +0900)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Tue, 1 Jun 2021 11:18:25 +0000 (20:18 +0900)
Add to support zpos property update.

Change-Id: I854c644673b46fbf4f620ce1249e57b7206d6fce
Signed-off-by: Sihyun, Park <shwan.park@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
drivers/amlogic/drm/meson_plane.c
drivers/amlogic/drm/meson_plane.h

index 855e190..78ea0da 100644 (file)
@@ -487,7 +487,7 @@ static struct am_osd_plane *am_plane_create(struct meson_drm *priv, int i)
 {
        struct am_osd_plane *osd_plane;
        struct drm_plane *plane;
-       u32 type = 0;
+       u32 type = 0, zpos;
        char plane_name[8];
        const u64 *format_modifiers = afbc_wb_modifier;
 
@@ -506,6 +506,8 @@ static struct am_osd_plane *am_plane_create(struct meson_drm *priv, int i)
        osd_plane->drv = priv;
        osd_plane->plane_index = i;
 
+       zpos = osd_plane->plane_index;
+
        plane = &osd_plane->base;
        sprintf(plane_name, "osd%d", i);
 
@@ -517,6 +519,9 @@ static struct am_osd_plane *am_plane_create(struct meson_drm *priv, int i)
                                 type, plane_name);
 
        drm_plane_create_premult_en_property(plane);
+       drm_plane_create_zpos_property(plane, zpos,
+                                      MESON_PLANE_BEGIN_ZORDER,
+                                      MESON_PLANE_END_ZORDER);
        drm_plane_helper_add(plane, &am_osd_helper_funcs);
        osd_drm_debugfs_add(&osd_plane->plane_debugfs_dir,
                            plane_name, osd_plane->plane_index);
index 5be8adc..63e2709 100644 (file)
@@ -29,6 +29,9 @@
 #include "osd_drm.h"
 #include "meson_fb.h"
 
+#define MESON_PLANE_BEGIN_ZORDER       1
+#define MESON_PLANE_END_ZORDER         65
+
 struct am_meson_plane_state {
        struct drm_plane_state base;
        u32 premult_en;