summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Vorobiov <s.vorobiov@samsung.com>2014-07-29 10:23:14 +0400
committerStanislav Vorobiov <s.vorobiov@samsung.com>2014-07-29 10:24:35 +0400
commit268e6c69d3363a9efae61400ae9fa93087bd8e18 (patch)
tree7ba5d783bcaa52c4580afe5e7431b446ac2f37cd
parentf19f89d68723c868e3b1d8bbf75e04cf4e1809ba (diff)
downloademulator-yagl-268e6c69d3363a9efae61400ae9fa93087bd8e18.tar.gz
emulator-yagl-268e6c69d3363a9efae61400ae9fa93087bd8e18.tar.bz2
emulator-yagl-268e6c69d3363a9efae61400ae9fa93087bd8e18.zip
Revert "Remove static variable for identifying wl_drm buffers"
This reverts commit f19f89d68723c868e3b1d8bbf75e04cf4e1809ba. Change-Id: Iab08ab64a0ede945298e5006cb441ea0c1d4ca4f Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
-rw-r--r--EGL/gbm/yagl_gbm_display.c9
-rw-r--r--EGL/wayland/yagl_wayland_display.c6
-rw-r--r--EGL/x11/yagl_x11_display.c6
-rw-r--r--EGL/yagl_native_display.c8
-rw-r--r--EGL/yagl_native_display.h2
-rw-r--r--EGL/yagl_onscreen_image_wl_buffer.c4
-rw-r--r--gbm/yagl_gbm.c2
-rw-r--r--include/wayland-drm.h2
-rw-r--r--include/yagl_gbm.h2
-rw-r--r--wayland-drm/wayland-drm.c13
10 files changed, 13 insertions, 41 deletions
diff --git a/EGL/gbm/yagl_gbm_display.c b/EGL/gbm/yagl_gbm_display.c
index a0ebd3c..e552598 100644
--- a/EGL/gbm/yagl_gbm_display.c
+++ b/EGL/gbm/yagl_gbm_display.c
@@ -109,14 +109,6 @@ static int yagl_gbm_display_get_visual(struct yagl_native_display *dpy,
return 1;
}
-static void yagl_gbm_display_update_wl_server(struct yagl_native_display *dpy)
-{
-#ifdef YAGL_PLATFORM_WAYLAND
- struct gbm_device *gbm_dev = YAGL_GBM_DPY(dpy->os_dpy);
- gbm_dev->wl_drm = dpy->wl_server_drm;
-#endif
-}
-
static void yagl_gbm_display_destroy(struct yagl_native_display *dpy)
{
yagl_native_display_cleanup(dpy);
@@ -150,7 +142,6 @@ struct yagl_native_display
dpy->create_pixmap = &yagl_gbm_display_create_pixmap;
dpy->create_image = &yagl_gbm_display_create_image;
dpy->get_visual = &yagl_gbm_display_get_visual;
- dpy->update_wl_server = &yagl_gbm_display_update_wl_server;
dpy->destroy = &yagl_gbm_display_destroy;
free(device_name);
diff --git a/EGL/wayland/yagl_wayland_display.c b/EGL/wayland/yagl_wayland_display.c
index fe7ec80..83dcb44 100644
--- a/EGL/wayland/yagl_wayland_display.c
+++ b/EGL/wayland/yagl_wayland_display.c
@@ -240,11 +240,6 @@ static int yagl_wayland_display_get_visual(struct yagl_native_display *dpy,
return 1;
}
-static void yagl_wayland_display_update_wl_server(struct yagl_native_display *dpy)
-{
- return ;
-}
-
static void yagl_wayland_display_destroy(struct yagl_native_display *dpy)
{
struct yagl_wayland_display *wayland_dpy = (struct yagl_wayland_display*)dpy;
@@ -348,7 +343,6 @@ struct yagl_native_display
dpy->base.create_pixmap = &yagl_wayland_display_create_pixmap;
dpy->base.create_image = &yagl_wayland_display_create_image;
dpy->base.get_visual = &yagl_wayland_display_get_visual;
- dpy->base.update_wl_server = &yagl_wayland_display_update_wl_server;
dpy->base.destroy = &yagl_wayland_display_destroy;
YAGL_LOG_FUNC_EXIT("display %p created", dpy);
diff --git a/EGL/x11/yagl_x11_display.c b/EGL/x11/yagl_x11_display.c
index 4bcdd5a..5d6a03e 100644
--- a/EGL/x11/yagl_x11_display.c
+++ b/EGL/x11/yagl_x11_display.c
@@ -181,11 +181,6 @@ static int yagl_x11_display_get_visual(struct yagl_native_display *dpy,
return 1;
}
-static void yagl_x11_display_update_wl_server(struct yagl_native_display *dpy)
-{
- return ;
-}
-
static void yagl_x11_display_destroy(struct yagl_native_display *dpy)
{
struct yagl_x11_display *x11_dpy = (struct yagl_x11_display*)dpy;
@@ -271,7 +266,6 @@ struct yagl_native_display *yagl_x11_display_create(struct yagl_native_platform
dpy->base.create_pixmap = &yagl_x11_display_create_pixmap;
dpy->base.create_image = &yagl_x11_display_create_image;
dpy->base.get_visual = &yagl_x11_display_get_visual;
- dpy->base.update_wl_server = &yagl_x11_display_update_wl_server;
dpy->base.destroy = &yagl_x11_display_destroy;
if (dri_device) {
diff --git a/EGL/yagl_native_display.c b/EGL/yagl_native_display.c
index 55468a2..f15af7b 100644
--- a/EGL/yagl_native_display.c
+++ b/EGL/yagl_native_display.c
@@ -85,12 +85,6 @@ int yagl_native_display_bind_wl_display(struct yagl_native_display *dpy,
&wl_drm_callbacks,
dpy);
- if (dpy->wl_server_drm) {
- dpy->update_wl_server(dpy);
- return 1;
- } else {
- return 0;
- }
return dpy->wl_server_drm ? 1 : 0;
}
@@ -111,7 +105,7 @@ int yagl_native_display_query_wl_buffer(struct yagl_native_display *dpy,
EGLint attribute,
EGLint *value)
{
- struct wl_drm_buffer *drm_buffer = wayland_drm_get_buffer(dpy->wl_server_drm, buffer);
+ struct wl_drm_buffer *drm_buffer = wayland_drm_get_buffer(buffer);
struct vigs_drm_surface *drm_sfc;
if (!drm_buffer) {
diff --git a/EGL/yagl_native_display.h b/EGL/yagl_native_display.h
index e64dfd1..a34ecb8 100644
--- a/EGL/yagl_native_display.h
+++ b/EGL/yagl_native_display.h
@@ -53,8 +53,6 @@ struct yagl_native_display
int */*visual_id*/,
int */*visual_type*/);
- void (*update_wl_server)(struct yagl_native_display */*dpy*/);
-
void (*destroy)(struct yagl_native_display */*dpy*/);
};
diff --git a/EGL/yagl_onscreen_image_wl_buffer.c b/EGL/yagl_onscreen_image_wl_buffer.c
index f976058..72f7f2c 100644
--- a/EGL/yagl_onscreen_image_wl_buffer.c
+++ b/EGL/yagl_onscreen_image_wl_buffer.c
@@ -1,5 +1,4 @@
#include "yagl_onscreen_image_wl_buffer.h"
-#include "yagl_native_display.h"
#include "yagl_display.h"
#include "yagl_malloc.h"
#include "yagl_host_egl_calls.h"
@@ -37,7 +36,8 @@ struct yagl_onscreen_image_wl_buffer
struct vigs_drm_surface *drm_sfc;
image = yagl_malloc0(sizeof(*image));
- drm_buffer = wayland_drm_get_buffer(dpy->native_dpy->wl_server_drm, buffer);
+
+ drm_buffer = wayland_drm_get_buffer(buffer);
if (!drm_buffer) {
/*
diff --git a/gbm/yagl_gbm.c b/gbm/yagl_gbm.c
index 308402e..eca3fad 100644
--- a/gbm/yagl_gbm.c
+++ b/gbm/yagl_gbm.c
@@ -254,7 +254,7 @@ YAGL_API struct gbm_bo *gbm_bo_import(struct gbm_device *gbm, uint32_t type,
switch (type) {
#ifdef YAGL_PLATFORM_WAYLAND
case GBM_BO_IMPORT_WL_BUFFER:
- drm_buffer = wayland_drm_get_buffer(gbm->wl_drm, (struct wl_resource*)buffer);
+ drm_buffer = wayland_drm_get_buffer((struct wl_resource*)buffer);
if (!drm_buffer) {
return NULL;
diff --git a/include/wayland-drm.h b/include/wayland-drm.h
index a659ae3..7c01d3c 100644
--- a/include/wayland-drm.h
+++ b/include/wayland-drm.h
@@ -26,7 +26,7 @@ struct wl_drm *wayland_drm_create(struct wl_display *display,
void wayland_drm_destroy(struct wl_drm *drm);
-struct wl_drm_buffer *wayland_drm_get_buffer(struct wl_drm *drm, struct wl_resource *resource);
+struct wl_drm_buffer *wayland_drm_get_buffer(struct wl_resource *resource);
struct vigs_drm_surface *wayland_drm_buffer_get_sfc(struct wl_drm_buffer *buffer);
diff --git a/include/yagl_gbm.h b/include/yagl_gbm.h
index 6825b52..52b1448 100644
--- a/include/yagl_gbm.h
+++ b/include/yagl_gbm.h
@@ -16,8 +16,6 @@ struct gbm_device
struct gbm_device *(*dummy)(int);
struct vigs_drm_device *drm_dev;
-
- struct wl_drm *wl_drm;
};
struct gbm_bo
diff --git a/wayland-drm/wayland-drm.c b/wayland-drm/wayland-drm.c
index 2fe8036..0259dfb 100644
--- a/wayland-drm/wayland-drm.c
+++ b/wayland-drm/wayland-drm.c
@@ -12,7 +12,6 @@ struct wl_drm
char *device_name;
struct wayland_drm_callbacks *callbacks;
void *user_data;
- struct wl_buffer_interface buffer_interface;
};
struct wl_drm_buffer
@@ -39,6 +38,11 @@ static void drm_buffer_destroy(struct wl_client *client,
wl_resource_destroy(resource);
}
+static struct wl_buffer_interface drm_buffer_interface =
+{
+ drm_buffer_destroy
+};
+
static void drm_create_buffer(struct wl_client *client,
struct wl_resource *resource,
uint32_t id, uint32_t name,
@@ -82,7 +86,7 @@ static void drm_create_buffer(struct wl_client *client,
buffer->resource.object.id = id;
buffer->resource.object.interface = &wl_buffer_interface;
- buffer->resource.object.implementation = (void(**)(void))&drm->buffer_interface;
+ buffer->resource.object.implementation = (void(**)(void))&drm_buffer_interface;
buffer->resource.data = buffer;
buffer->resource.destroy = buffer_destroy;
@@ -174,7 +178,6 @@ struct wl_drm *wayland_drm_create(struct wl_display *display,
drm->callbacks = callbacks;
drm->user_data = user_data;
- drm->buffer_interface.destroy = drm_buffer_destroy;
wl_global_create(display, &wl_drm_interface, 1, drm, bind_drm);
return drm;
@@ -187,7 +190,7 @@ void wayland_drm_destroy(struct wl_drm *drm)
free(drm);
}
-struct wl_drm_buffer *wayland_drm_get_buffer(struct wl_drm *drm, struct wl_resource *resource)
+struct wl_drm_buffer *wayland_drm_get_buffer(struct wl_resource *resource)
{
if (!resource) {
return NULL;
@@ -195,7 +198,7 @@ struct wl_drm_buffer *wayland_drm_get_buffer(struct wl_drm *drm, struct wl_resou
if (wl_resource_instance_of(resource,
&wl_buffer_interface,
- &drm->buffer_interface)) {
+ &drm_buffer_interface)) {
return wl_resource_get_user_data(resource);
} else {
return NULL;