On Thu, Sep 26, 2013 at 11:16:52AM -0700, Chad Versace wrote: > On 09/26/2013 10:37 AM, Chad Versace wrote: > >On 09/22/2013 10:37 AM, Ben Widawsky wrote: > >>Starting with Ivybridge, the hierarchical had relaxed requirements for > > ^^^^^^^^^^^^^^^ > >"the hierarchical" doesn't make sense. Just call it "the HiZ buffer" or > >"the hiz buffer". > > > >>its allocation. Following a "simple" formula in the bspec was all you > >>needed to satisfy the requirement. > >> > >>To prepare the code for this, extract all places where the miptree was > >>used, when we really only needed the region. This allows an upcoming > >>patch to simply allocate the region, and not the whole miptree. > > > > >>CC: Chad Versace <[email protected]> > >>Signed-off-by: Ben Widawsky <[email protected]> > >>--- > >> src/mesa/drivers/dri/i965/brw_misc_state.c | 8 +++--- > >> src/mesa/drivers/dri/i965/gen6_blorp.cpp | 2 +- > >> src/mesa/drivers/dri/i965/gen7_blorp.cpp | 2 +- > >> src/mesa/drivers/dri/i965/gen7_misc_state.c | 6 ++--- > >> src/mesa/drivers/dri/i965/intel_fbo.c | 4 +-- > >> src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 35 > >> +++++++++++++++------------ > >> src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 5 +++- > >> 7 files changed, 34 insertions(+), 28 deletions(-) > > > > >>diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h > >>b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h > >>index d718125..7473570 100644 > >>--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h > >>+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h > >>@@ -414,7 +414,10 @@ struct intel_mipmap_tree > >> * To determine if hiz is enabled, do not check this pointer. Instead, > >> use > >> * intel_miptree_slice_has_hiz(). > >> */ > >>- struct intel_mipmap_tree *hiz_mt; > >>+ struct { > >>+ struct intel_mipmap_tree *mt; > >>+ struct intel_region *region; > >>+ } hiz_depth_buffer; > > > >The name 'hiz_depth_buffer' has a redundancy, because the hiz buffer > >can accompany only a depth buffer. Let's shorten the name to > >'hiz_buffer'. > > > >Also, you need to update the comment above this hunk to reflect the > >new data structure. > > Ken reminded me of some ongoing plans we have in Mesa. We plan to kill > intel_region > and replace it with... nothing. Instead of embedding an intel_region into > intel_mipmap_tree::hiz_buffer, we should embed a raw drm_intel_bo and its > pitch. > That is, > > struct { > struct intel_mipmap_tree *mt; > drm_intel_bo *bo; > uint32_t pitch; > } hiz_buffer; > >
My first patch did indeed have this. I was too afraid to rock the boat. I'll happily rewrite it when you get done with the first patch. -- Ben Widawsky, Intel Open Source Technology Center _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
