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 <[email protected]> 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 <[email protected]> > Cc: Nanley Chery <[email protected]> > Cc: Topi Pohjolainen <[email protected]> > > 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 > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
