[Mesa-dev] [PATCH 00/11] intel/isl: Add support for HiZ and stencil on gen6

Pohjolainen, Topi topi.pohjolainen at gmail.com
Thu Jun 1 10:19:46 UTC 2017


On Tue, May 30, 2017 at 05:55:09PM -0700, Jason Ekstrand wrote:
> This little series adds support to ISL for gen6 HiZ ans stencil via a new
> isl_dim_layout enum value.  Unfortunately, I couldn't easily add the new
> layout without doing a little refactoring.  The way ISL likes to calculate
> surface layouts today is fairly heavily based on the needs of 2D array
> textures.  The gen4 3D and gen9 1D layouts are bolted on but not really
> first-class citizens in some sense.  In order to better accommodate more
> exotic layouts, I re factored things so that the primary layout helper
> generates the total surface extent in elements instead of the slice0 extent
> that they were generating before.  I think the new code is somewhat easier
> to follow especially for 1D and 3D images.
> 
> The last patch moves some things around so that BLORP now handles gen6 HiZ
> and stencil properly in the back-end and there is no longer any need for
> brw_blorp to do surface offsetting.  I'm hoping that this will make Topi's
> life much easier as he tries to rework his "convert i965 to ISL" patches to
> accommodate the recent revelation about gen6 HiZ and stencil.

I had a few questions but looks good. Series:

Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>

I'll try to rebase my ISL work once I have figured out a few regressions I'm
seeing currently with depth surfaces.

> 
> Cc: Chad Versace <chadversary at chromium.org>
> Cc: Nanley Chery <nanley.g.chery at intel.com>
> Cc: Topi Pohjolainen <topi.pohjolainen at intel.com>
> 
> Jason Ekstrand (11):
>   intel/isl: Remove the device parameter from isl_tiling_get_info
>   intel/isl: Move isl_calc_array_pitch_el_rows higher up
>   intel/isl: Refactor isl_calc_array_pitch_el_rows
>   intel/isl: Add an isl_assert_div helper
>   intel/isl: Refactor to use a phys_total_el extent.
>   intel/isl: Don't check array pitch for gen4 3D textures
>   intel/isl: Generate phys_total_el from isl_calc_phys_extent
>   intel/isl: Add a new layout for HiZ and stencil on Sandy Bridge
>   intel/isl: Make get_intratile_offset_el take the element size in bits
>   intel/isl: Add a helper for getting the byte/tile offset of a subimage
>   intel/blorp: Handle gen6 stencil/HiZ offsets in the back-end
> 
>  src/intel/blorp/blorp_blit.c                       |  15 +-
>  src/intel/blorp/blorp_genX_exec.h                  |  32 +-
>  src/intel/isl/isl.c                                | 619 ++++++++++++++-------
>  src/intel/isl/isl.h                                |  76 ++-
>  src/intel/isl/isl_emit_depth_stencil.c             |   1 +
>  src/intel/isl/isl_priv.h                           |   7 +
>  src/intel/isl/isl_surface_state.c                  |   2 +-
>  .../isl/tests/isl_surf_get_image_offset_test.c     |   1 -
>  src/mesa/drivers/dri/i965/brw_blorp.c              |  61 --
>  src/mesa/drivers/dri/i965/brw_wm_surface_state.c   |   3 +-
>  src/mesa/drivers/dri/i965/intel_blit.c             |   3 +-
>  src/mesa/drivers/dri/i965/intel_mipmap_tree.c      |  17 +-
>  src/mesa/drivers/dri/i965/intel_mipmap_tree.h      |   2 +-
>  13 files changed, 535 insertions(+), 304 deletions(-)
> 
> -- 
> 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