[Mesa-dev] [PATCH v3 2/2] anv: advertise 8 subpixel precision bits

Juan A. Suarez Romero jasuarez at igalia.com
Fri Feb 22 16:57:16 UTC 2019


On Fri, 2019-02-22 at 10:04 -0600, Jason Ekstrand wrote:
> On Fri, Feb 22, 2019 at 9:58 AM Jason Ekstrand <jason at jlekstrand.net> wrote:
> > On Fri, Feb 22, 2019 at 9:57 AM Lionel Landwerlin <lionel.g.landwerlin at intel.com> wrote:
> > > On 22/02/2019 15:51, Juan A. Suarez Romero wrote:
> > > 
> > > > On one side, when emitting 3DSTATE_SF, VertexSubPixelPrecisionSelect is
> > > 
> > > > used to select between 8 bit subpixel precision (value 0) or 4 bit
> > > 
> > > > subpixel precision (value 1). As this value is not set, means it is
> > > 
> > > > taking the value 0, so 8 bit are used.
> > > 
> > > >
> > > 
> > > > On the other side, in the Vulkan CTS tests, if the reference rasterizer,
> > > 
> > > > which uses 8 bit precision, as it is used to check what should be the
> > > 
> > > > expected value for the tests, is changed to use 4 bit as ANV was
> > > 
> > > > advertising so far, some of the tests will fail.
> > > 
> > > >
> > > 
> > > > So it seems ANV is actually using 8 bits.
> > > 
> > > >
> > > 
> > > > v2: explicitly set 3DSTATE_SF::VertexSubPixelPrecisionSelect (Jason)
> > > 
> > > > v3: use _8Bit definition as value (Jason)
> > > 
> > > >
> > > 
> > > > CC: Jason Ekstrand <jason at jlekstrand.net>
> > > 
> > > > CC: Kenneth Graunke <kenneth at whitecape.org>
> > > 
> > > > Signed-off-by: Juan A. Suarez Romero <jasuarez at igalia.com>
> > > 
> > > 
> > > 
> > > 
> > > 
> > > Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> > 
> > Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
> > 
> 
> I just sent a patch which also sets the corresponding bit in 3DSTATE_CLIP on gen8+.  Feel free to squash it into this one before merging.  The information is redundant but we should be explicitly setting it both places.  I think the one in 3DSTATE_CLIP is for the viewport clip test that got added on gen8.
> 
Squashed into this one, and CCed the series to @stable.
Thank you both!
	J.A.
> --Jason
>  
> >  
> > > Cc: stable?
> > 
> > Not a bad idea.
> > --Jason
> >  
> > > 
> > > > ---
> > > 
> > > >   src/intel/vulkan/anv_device.c    | 2 +-
> > > 
> > > >   src/intel/vulkan/genX_pipeline.c | 1 +
> > > 
> > > >   2 files changed, 2 insertions(+), 1 deletion(-)
> > > 
> > > >
> > > 
> > > > diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
> > > 
> > > > index 3120865466a..95224407318 100644
> > > 
> > > > --- a/src/intel/vulkan/anv_device.c
> > > 
> > > > +++ b/src/intel/vulkan/anv_device.c
> > > 
> > > > @@ -1095,7 +1095,7 @@ void anv_GetPhysicalDeviceProperties(
> > > 
> > > >            16 * devinfo->max_cs_threads,
> > > 
> > > >            16 * devinfo->max_cs_threads,
> > > 
> > > >         },
> > > 
> > > > -      .subPixelPrecisionBits                    = 4 /* FIXME */,
> > > 
> > > > +      .subPixelPrecisionBits                    = 8,
> > > 
> > > >         .subTexelPrecisionBits                    = 4 /* FIXME */,
> > > 
> > > >         .mipmapPrecisionBits                      = 4 /* FIXME */,
> > > 
> > > >         .maxDrawIndexedIndexValue                 = UINT32_MAX,
> > > 
> > > > diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c
> > > 
> > > > index 6255e5d83c5..3d36bb773e1 100644
> > > 
> > > > --- a/src/intel/vulkan/genX_pipeline.c
> > > 
> > > > +++ b/src/intel/vulkan/genX_pipeline.c
> > > 
> > > > @@ -464,6 +464,7 @@ emit_rs_state(struct anv_pipeline *pipeline,
> > > 
> > > >      sf.TriangleStripListProvokingVertexSelect = 0;
> > > 
> > > >      sf.LineStripListProvokingVertexSelect = 0;
> > > 
> > > >      sf.TriangleFanProvokingVertexSelect = 1;
> > > 
> > > > +   sf.VertexSubPixelPrecisionSelect = _8Bit;
> > > 
> > > >   
> > > 
> > > >      const struct brw_vue_prog_data *last_vue_prog_data =
> > > 
> > > >         anv_pipeline_get_last_vue_prog_data(pipeline);
> > > 
> > > 
> > > 
> > > 
> > > 
> > > _______________________________________________
> > > 
> > > mesa-dev mailing list
> > > 
> > > mesa-dev at lists.freedesktop.org
> > > 
> > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20190222/47678078/attachment.html>


More information about the mesa-dev mailing list