On Tue, Apr 29, 2014 at 04:34:32PM -0700, Eric Anholt wrote: > The drm function to get the tiling is just a getter storing the two > pointers, so we don't need to go out of our way to avoid it.
> diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > index 63b80bd..58a6b86 100644 > --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > @@ -643,15 +643,17 @@ intel_miptree_create_for_bo(struct brw_context *brw, > uint32_t offset, > uint32_t width, > uint32_t height, > - int pitch, > - uint32_t tiling) > + int pitch) > { > struct intel_mipmap_tree *mt; > + uint32_t tiling, swizzle; > > struct intel_region *region = calloc(1, sizeof(*region)); > if (!region) > return NULL; > > + drm_intel_bo_get_tiling(bo, &tiling, &swizzle); > + > /* Nothing will be able to use this miptree with the BO if the offset > isn't > * aligned. > */ > diff --git a/src/mesa/drivers/dri/i965/intel_pixel_draw.c > b/src/mesa/drivers/dri/i965/intel_pixel_draw.c > index 8ca8ae4..96bbd3d 100644 > --- a/src/mesa/drivers/dri/i965/intel_pixel_draw.c > +++ b/src/mesa/drivers/dri/i965/intel_pixel_draw.c > @@ -113,7 +113,7 @@ do_blit_drawpixels(struct gl_context * ctx, > irb->mt->format, > src_offset, > width, height, > - src_stride, I915_TILING_NONE); > + src_stride); > if (!pbo_mt) > return false; > I really like this patch. Pre-patch, to call intel_miptree_create_for_bo() with the correct tiling, do_blit_readpixels() required detailed knowledge of how intel_bufferobj_alloc_buffer() performed its allocation. I never feel comfortable with hidden knowledge dependencies like that. And this patch removes the dependency. Ditto for do_blit_readpixels() and try_pbo_upload(). Patches up to here are Reviewed-by: Chad Versace <chad.vers...@linux.intel.com> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev