Version 2 of EGL_KHR_gl_image support. The changes addressed the comments from Eric Anholt in intel_setup_image_from_mipmap_tree(). The previous implementation had a potential for orphaning EGL images when we overwrite the original miptree for non-tile-aligned surfaces in order to obtain corrected offsets back to our exported image. In this version, for non-tile-aligned surfaces, we copy the image to a temporary single-level miptree and refer to the offsets there instead of re-creating the whole miptree from scratch.
Tested on: Gen4, SandyBridge, IvyBridge Abdiel Janulgue (6): dri2: Create image from texture intel: create a miptree for a region based on an offset, size, and level. intel: add new miptree helper functions i965: Account for offsets when emitting SURFACE_STATE. intel: implement create image from texture intel: Create a miptree using offsets in intel_set_texture_image_region include/GL/internal/dri_interface.h | 12 ++ src/egl/drivers/dri2/egl_dri2.c | 83 ++++++++++ src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +- src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 12 +- src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 56 ++++++- src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 25 +++ src/mesa/drivers/dri/intel/intel_regions.h | 8 + src/mesa/drivers/dri/intel/intel_screen.c | 181 ++++++++++++++++++--- src/mesa/drivers/dri/intel/intel_tex_image.c | 27 ++- 9 files changed, 381 insertions(+), 35 deletions(-) _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev