[Mesa-dev] [PATCH] i965/gen8: Allow 16k viewport when blitting stencil

Ian Romanick idr at freedesktop.org
Mon Aug 25 16:38:53 PDT 2014


On 08/14/2014 09:09 AM, Topi Pohjolainen wrote:
> From: Topi Pohjolainen <topi.pohjolainen at gmail.com>
> 
> Fixes gles3 conformance tests:
> 
> framebuffer_blit_functionality_negative_height_blit
> framebuffer_blit_functionality_negative_width_blit
> framebuffer_blit_functionality_negative_dimensions_blit
> framebuffer_blit_functionality_magnifying_blit
> framebuffer_blit_functionality_multisampled_to_singlesampled_blit
> 
> Signed-off-by: Topi Pohjolainen <topi.pohjolainen at gmail.com>
> ---
>  src/mesa/drivers/dri/i965/gen8_viewport_state.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/src/mesa/drivers/dri/i965/gen8_viewport_state.c b/src/mesa/drivers/dri/i965/gen8_viewport_state.c
> index 9c89532..eda9aad 100644
> --- a/src/mesa/drivers/dri/i965/gen8_viewport_state.c
> +++ b/src/mesa/drivers/dri/i965/gen8_viewport_state.c
> @@ -94,6 +94,13 @@ gen8_upload_sf_clip_viewport(struct brw_context *brw)
>        float gbx = maximum_guardband_extent / ctx->ViewportArray[i].Width;
>        float gby = maximum_guardband_extent / ctx->ViewportArray[i].Height;
>  
> +      /**
> +       * Stencil blits require W-tiled to be treated as Y-tiled needing in
> +       * turn width to be programmed twice the original.
> +       */
> +      if (brw->meta_in_progress)
> +         gbx *= 2;
> +

I've had this on my various trees for almost two weeks now, and it
doesn't seem to have caused any problems.  I'm wondering if we want to
make this check a bit more specific to the stencil blit case.

Either way, I'd like to see this or something similar land soon.

>        /* _NEW_VIEWPORT: Guardband Clipping */
>        vp[8]  = -gbx; /* x-min */
>        vp[9]  =  gbx; /* x-max */
> 



More information about the mesa-dev mailing list