derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=6108aa942cb933478fb1c72ab05d012fb9375276

commit 6108aa942cb933478fb1c72ab05d012fb9375276
Author: Derek Foreman <der...@osg.samsung.com>
Date:   Fri Jul 22 14:32:37 2016 -0500

    wayland_shm: Speed up dmabuf on intel
    
    using map_bo/unmap_bo instead of gem_map_bo_gtt/gem_unmap_bo_gtt
    results in a cacheable mapping and a large performance boost.
    
    (dmabuf will still remain turned off by default for the release)
---
 src/modules/evas/engines/wayland_shm/evas_dmabuf.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/modules/evas/engines/wayland_shm/evas_dmabuf.c 
b/src/modules/evas/engines/wayland_shm/evas_dmabuf.c
index 1f22626..ed8e1b1 100644
--- a/src/modules/evas/engines/wayland_shm/evas_dmabuf.c
+++ b/src/modules/evas/engines/wayland_shm/evas_dmabuf.c
@@ -87,8 +87,8 @@ static Dmabuf_Buffer *_evas_dmabuf_buffer_init(Dmabuf_Surface 
*s, int w, int h);
 static void _evas_dmabuf_buffer_destroy(Dmabuf_Buffer *b);
 
 drm_intel_bufmgr *(*sym_drm_intel_bufmgr_gem_init)(int fd, int batch_size) = 
NULL;
-int (*sym_drm_intel_gem_bo_unmap_gtt)(drm_intel_bo *bo) = NULL;
-int (*sym_drm_intel_gem_bo_map_gtt)(drm_intel_bo *bo) = NULL;
+int (*sym_drm_intel_bo_unmap)(drm_intel_bo *bo) = NULL;
+int (*sym_drm_intel_bo_map)(drm_intel_bo *bo) = NULL;
 drm_intel_bo *(*sym_drm_intel_bo_alloc_tiled)(drm_intel_bufmgr *mgr, const 
char *name, int x, int y, int cpp, uint32_t *tile, unsigned long *pitch, 
unsigned long flags) = NULL;
 void (*sym_drm_intel_bo_unreference)(drm_intel_bo *bo) = NULL;
 int (*sym_drmPrimeHandleToFD)(int fd, uint32_t handle, uint32_t flags, int 
*prime_fd) = NULL;
@@ -136,7 +136,7 @@ _intel_map(Dmabuf_Buffer *buf)
    drm_intel_bo *bo;
 
    bo = (drm_intel_bo *)buf->bh;
-   if (sym_drm_intel_gem_bo_map_gtt(bo) != 0) return NULL;
+   if (sym_drm_intel_bo_map(bo) != 0) return NULL;
    return bo->virtual;
 }
 
@@ -146,7 +146,7 @@ _intel_unmap(Dmabuf_Buffer *buf)
    drm_intel_bo *bo;
 
    bo = (drm_intel_bo *)buf->bh;
-   sym_drm_intel_gem_bo_unmap_gtt(bo);
+   sym_drm_intel_bo_unmap(bo);
 }
 
 static void
@@ -174,8 +174,8 @@ _intel_buffer_manager_setup(int fd)
    if (!drm_intel_lib) return EINA_FALSE;
 
    SYM(drm_intel_lib, drm_intel_bufmgr_gem_init);
-   SYM(drm_intel_lib, drm_intel_gem_bo_unmap_gtt);
-   SYM(drm_intel_lib, drm_intel_gem_bo_map_gtt);
+   SYM(drm_intel_lib, drm_intel_bo_unmap);
+   SYM(drm_intel_lib, drm_intel_bo_map);
    SYM(drm_intel_lib, drm_intel_bo_alloc_tiled);
    SYM(drm_intel_lib, drm_intel_bo_unreference);
    SYM(drm_intel_lib, drm_intel_bufmgr_destroy);

-- 


Reply via email to