libtbm-vigs provides the drm_dev to get the vigs_drm_device.
yagl can also get the vigs_surface through the tbm_bo_get_handle.
Change-Id: Iba180f60b101886ae940b2eb1f5b7c5617d5eda9
include_directories(${LIBTBM_INCLUDE_DIRS})
link_directories(${LIBTBM_LIBRARY_DIRS})
+pkg_check_modules(LIBTBM_VIGS REQUIRED libtbm-vigs)
+add_definitions(${LIBTBM_VIGS_CFLAGS})
+include_directories(${LIBTBM_VIGS_INCLUDE_DIRS})
+link_directories(${LIBTBM_VIGS_LIBRARY_DIRS})
+
if (PLATFORM_X11)
pkg_check_modules(X11 REQUIRED x11)
pkg_check_modules(XEXT REQUIRED xext)
${LIBDRM_LIBRARIES}
${LIBDRM_VIGS_LIBRARIES}
${LIBTBM_LIBRARIES}
+ ${LIBTBM_VIGS_LIBRARIES}
dl
)
#include "yagl_tizen_display.h"
#include "yagl_tizen_window.h"
#include "yagl_tizen_pbuffer.h"
-#include <tbm_bufmgr_backend.h>
#include "yagl_log.h"
#include "yagl_malloc.h"
#include "vigs.h"
+#include <tbm_bufmgr.h>
+#include <tbm_vigs.h>
#include <sys/fcntl.h>
#include <stdio.h>
#include <stdlib.h>
yagl_os_display os_dpy)
{
struct yagl_tizen_display *dpy;
- tbm_bufmgr bufmgr;
struct vigs_drm_device *drm_dev = NULL;
YAGL_LOG_FUNC_ENTER(yagl_tizen_display_create, "os_dpy = %p", os_dpy);
goto fail;
}
- bufmgr = tbm_bufmgr_init(-1);
- drm_dev = (struct vigs_drm_device *)tbm_backend_get_priv_from_bufmgr(bufmgr);
+ drm_dev = tbm_vigs_get_drm_dev();
yagl_native_display_init(&dpy->base,
platform,
#include <tbm_surface.h>
#include <tbm_surface_internal.h>
#include <tpl.h>
-#include <tbm_bufmgr_backend.h>
static void yagl_onscreen_image_tizen_update(struct yagl_image *image)
{
tbm_surface_internal_ref(tbm_surface);
bo = tbm_surface_internal_get_bo(tbm_surface, 0);
- drm_sfc = (struct vigs_drm_surface *)tbm_backend_get_bo_priv(bo);
+ drm_sfc = bo ? (struct vigs_drm_surface *)tbm_bo_get_handle(bo, TBM_DEVICE_3D).ptr : NULL;
if (vigs_drm_gem_get_name(&drm_sfc->gem)) {
yagl_set_error(EGL_BAD_NATIVE_PIXMAP);
YAGL_LOG_ERROR("get gem name failed");
#include "yagl_tizen_display.h"
#include "yagl_log.h"
#include "yagl_malloc.h"
-#include <tbm_bufmgr_backend.h>
#include "vigs.h"
#include <stdio.h>
#include <stdlib.h>
bo = tbm_surface_internal_get_bo(tbm_surface, 0);
if (buffer_sfc != NULL) {
- *buffer_sfc = (struct vigs_drm_surface *)tbm_backend_get_bo_priv(bo);
+ *buffer_sfc = bo ? (struct vigs_drm_surface *)tbm_bo_get_handle(bo, TBM_DEVICE_3D).ptr : NULL;
if (vigs_drm_gem_get_name(&(*buffer_sfc)->gem))
YAGL_LOG_ERROR("%s: get gem name failed\n", __func__);
#include "drm_fourcc.h"
#include "vigs.h"
#include <tbm_bufmgr.h>
-#include <tbm_bufmgr_backend.h>
#include <tbm_surface.h>
#include <tbm_surface_internal.h>
#include <string.h>
switch (tizen_sfc_image->format) {
case TBM_FORMAT_ARGB8888:
bo = tbm_surface_internal_get_bo(tizen_sfc_image->sfc, 0);
- src = bo ? tbm_backend_get_bo_priv(bo) : NULL;
+ src = bo ? (struct vigs_drm_surface *)tbm_bo_get_handle(bo, TBM_DEVICE_3D).ptr : NULL;
/*
* No actual format conversion in ARGB8888 case. We just need to
break;
case TBM_FORMAT_YUV420:
bo = tbm_surface_internal_get_bo(tizen_sfc_image->sfc, 0);
- src = bo ? tbm_backend_get_bo_priv(bo) : NULL;
+ src = bo ? (struct vigs_drm_surface *)tbm_bo_get_handle(bo, TBM_DEVICE_3D).ptr : NULL;
ret = vigs_drm_surface_convert(src,
DRM_FORMAT_YUV420,
}
bo = tbm_surface_internal_get_bo(sfc, 0);
- drm_sfc = bo ? tbm_backend_get_bo_priv(bo) : NULL;
+ drm_sfc = bo ? (struct vigs_drm_surface *)tbm_bo_get_handle(bo, TBM_DEVICE_3D).ptr : NULL;
if (!drm_sfc) {
YAGL_LOG_ERROR("drm_sfc is NULL");
BuildRequires: pkgconfig(libdrm)
%if "%{ENABLE_TIZEN_BACKEND}" == "1"
BuildRequires: pkgconfig(libtbm)
+BuildRequires: pkgconfig(libtbm-vigs)
BuildRequires: pkgconfig(tpl-egl)
BuildRequires: pkgconfig(wayland-egl)
%endif