drm/atomic: Initialise planes with opaque alpha values
authorKieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Wed, 19 Sep 2018 15:56:58 +0000 (16:56 +0100)
committerAlexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com>
Thu, 20 Sep 2018 12:55:01 +0000 (13:55 +0100)
Planes without an alpha property, using __drm_atomic_helper_plane_reset
will have their plane state alpha initialised as zero, which represents
a transparent alpha.

If this value is then used for the plane, it may not be visible by
default, and thus doesn't represent a good initialisation state.

Update the default state->alpha value to DRM_BLEND_ALPHA_OPAQUE
unconditionally when the plane is reset.

Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Alexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Alexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180919155700.10342-2-kieran.bingham+renesas@ideasonboard.com
drivers/gpu/drm/drm_atomic_helper.c

index 3cf1aa1..e49b223 100644 (file)
@@ -3569,9 +3569,7 @@ void __drm_atomic_helper_plane_reset(struct drm_plane *plane,
        state->plane = plane;
        state->rotation = DRM_MODE_ROTATE_0;
 
-       /* Reset the alpha value to fully opaque if it matters */
-       if (plane->alpha_property)
-               state->alpha = plane->alpha_property->values[1];
+       state->alpha = DRM_BLEND_ALPHA_OPAQUE;
        state->pixel_blend_mode = DRM_MODE_BLEND_PREMULTI;
 
        plane->state = state;