[igt-dev] [PATCH i-g-t 2/2] lib/igt_kms: reset plane alpha and blend in igt_plane_reset()

Dhinakaran Pandiyan dhinakaran.pandiyan at intel.com
Mon Mar 18 21:42:11 UTC 2019


On Mon, 2019-03-18 at 16:32 +0200, Ville Syrjälä wrote:
> On Mon, Mar 18, 2019 at 01:15:10PM +0200, Juha-Pekka Heikkila wrote:
> > plane alpha and blend would affect other tests if left
> > in unexpected states
> > 
> > Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
> > ---
> >  lib/igt_kms.c | 7 +++++++
> >  1 file changed, 7 insertions(+)
> > 
> > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> > index e1eacc1..cdb5aba 100644
> > --- a/lib/igt_kms.c
> > +++ b/lib/igt_kms.c
> > @@ -1781,6 +1781,13 @@ static void igt_plane_reset(igt_plane_t
> > *plane)
> >  	if (igt_plane_has_prop(plane, IGT_PLANE_ROTATION))
> >  		igt_plane_set_prop_value(plane, IGT_PLANE_ROTATION,
> > IGT_ROTATION_0);
> >  
> > +	if (igt_plane_has_prop(plane, IGT_PLANE_PIXEL_BLEND_MODE))
> > +		igt_plane_set_prop_enum(plane,
> > IGT_PLANE_PIXEL_BLEND_MODE, "None");
> 
> "Pre-multiplied" is the default value for this prop.

You're right, drm_plane_create_blend_mode_property() documents "Pre-
multiplied" as the default value and reset_alpha() in the alpha
blending test does the same.

On a related note, I see that skl_plane_ctl_alpha() has
        default:
                MISSING_CASE(plane_state->base.pixel_blend_mode);
                return PLANE_CTL_ALPHA_DISABLE;

Shouldn't the fallback here be PLANE_CTL_ALPHA_SW_PREMULTIPLY?

> 
> > +
> > +	if (igt_plane_has_prop(plane, IGT_PLANE_ALPHA))
> > +		igt_plane_set_prop_value(plane, IGT_PLANE_ALPHA,
> > 0xffff);
> > +
> > +
> >  	igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
> >  	plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
> >  	plane->gem_handle = 0;
> > -- 
> > 2.7.4
> > 
> > _______________________________________________
> > igt-dev mailing list
> > igt-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/igt-dev
> 
> 



More information about the igt-dev mailing list