[Mesa-dev] [PATCH 0/7] i965, anv: Use ISL for querying surface format capabilities

Nanley Chery nanleychery at gmail.com
Tue May 24 17:47:36 UTC 2016


On Mon, May 23, 2016 at 02:07:41PM -0700, Jason Ekstrand wrote:
> On Mon, May 23, 2016 at 10:41 AM, Nanley Chery <nanleychery at gmail.com>
> wrote:
> 
> > On Fri, May 20, 2016 at 06:12:34PM -0700, Jason Ekstrand wrote:
> > > This little series effectively moves the surface format table from
> > > brw_surface_formats.c into ISL.  Previously, it got built into
> > > libi965_compiler.la because we needed to share it between drivers and
> > > didn't have a better place to put it.  Now it can live in ISL where it
> > > belongs.
> > >
> > > When we pull it into ISL, we also clean up the API for querying a bit.
> > > Instead of simply having a table with gen numbers in it, everything uses
> > > isl_format_supports_* queries.  This allows us to special-case things in
> > > cases where the table just doesn't quite work.  For instance, there are a
> > > number of formats that become avilable for vertex fetch on Haswell and
> > Bay
> > > Trail but don't exist on Ivy Bridge.  This isn't something the current
> > > table-based approach can handle properly.
> > >
> >
> > Pulling the table into ISL seems like a great idea and helpers shouldn't
> > hurt. It seems like the problem helpers would solve is the case when a
> > format loses its support in a future generation - has this happened with a
> > Gen introduction? For the example you stated, I think we could fix it by
> > giving Baytrail a gen number between 70 and 75. This would require scaling
> > up all brw_device_info::gen fields by 10 of course.
> >
> 
> Yes, we could call Bay Trail 7.1 or something like that but we can't really
> guarantee that it will be monotonic.

7.1 sounds good. What can't we guarantee will be monotonic?

- Nanley

> --Jason
> 
> 
> > - Nanley
> >
> > > Jason Ekstrand (6):
> > >   i965/surface_formats: Update the VB column for new formats added on
> > >     BYT
> > >   isl: Add support for quering the string name of a format
> > >   isl: Add the ISL_FORMAT_R32G32_FLOAT_LD format
> > >   isl: Add per-gen format introspection
> > >   anv/formats: Use isl_format_supports* for format introspection
> > >   i965: Use ISL for surface format introspection
> > >
> > > Nanley Chery (1):
> > >   i965: Unset alpha blend for R10G10B10_SNORM_A2_UNORM
> > >
> > >  src/intel/isl/isl.h                             |  21 ++
> > >  src/intel/isl/isl_format.c                      | 386
> > ++++++++++++++++++++++++
> > >  src/intel/isl/isl_format_layout.csv             |   1 +
> > >  src/intel/isl/isl_format_layout_gen.bash        |   3 +-
> > >  src/intel/vulkan/anv_formats.c                  |  41 ++-
> > >  src/mesa/drivers/dri/i965/Makefile.sources      |   3 +-
> > >  src/mesa/drivers/dri/i965/brw_context.h         |   2 -
> > >  src/mesa/drivers/dri/i965/brw_state.h           |   1 -
> > >  src/mesa/drivers/dri/i965/brw_state_dump.c      |   8 +-
> > >  src/mesa/drivers/dri/i965/brw_surface_formats.c | 344
> > +--------------------
> > >  src/mesa/drivers/dri/i965/brw_surface_formats.h |  43 ---
> > >  src/mesa/drivers/dri/i965/intel_mipmap_tree.c   |   5 +-
> > >  12 files changed, 448 insertions(+), 410 deletions(-)
> > >  delete mode 100644 src/mesa/drivers/dri/i965/brw_surface_formats.h
> > >
> > > --
> > > 2.5.0.400.gff86faf
> > >
> > > _______________________________________________
> > > mesa-dev mailing list
> > > mesa-dev at lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >


More information about the mesa-dev mailing list