[PATCH 2/7] etnaviv: fix XV resize for UYVY source format

Russell King rmk at armlinux.org.uk
Tue Nov 22 14:06:32 UTC 2016


On Tue, Nov 22, 2016 at 12:44:15PM +0100, Lucas Stach wrote:
> It seems the video blitter doesn't like to blit from one YUV
> format to another and writes out a fully cleared buffer in
> that case.

Okay, testing here on iMX6D seems to confirm, but I want a better
commit log and comments in the code about why we've ended up with
this, and _exactly_ what it's been tested on (GPU revisions, SoC
details please.)

I'm unable to test on iMX6Q, because I don't have gstreamer 1.0
there (only 0.10) which doesn't support the necessary pipeline to
test.

> 
> Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> ---
>  etnaviv/etnaviv_xv.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/etnaviv/etnaviv_xv.c b/etnaviv/etnaviv_xv.c
> index 081c12abf1e2..23a76f3b989b 100644
> --- a/etnaviv/etnaviv_xv.c
> +++ b/etnaviv/etnaviv_xv.c
> @@ -426,7 +426,10 @@ static int etnaviv_configure_format(struct etnaviv_xv_priv *priv,
>  		priv->stage1_format.tile = 1;
>  		priv->stage1_pitch = etnaviv_tile_pitch(width, bpp);
>  	} else if (VIV_FEATURE(etnaviv->conn, chipMinorFeatures0, 2DPE20)) {
> -		priv->stage1_format = fmt_yuy2;
> +		if (priv->source_format.format == DE_FORMAT_UYVY)
> +			priv->stage1_format = fmt_uyvy;
> +		else
> +			priv->stage1_format = fmt_yuy2;
>  		priv->stage1_pitch = etnaviv_pitch(width, 16);
>  	} else {
>  		priv->stage1_format = vPix->format;
> -- 
> 2.10.2
> 

-- 
Russell King


More information about the etnaviv mailing list