summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/egl_g3d/kms/native_kms.c
diff options
context:
space:
mode:
authorChia-I Wu <olvaffe@gmail.com>2010-01-15 17:39:49 +0800
committerChia-I Wu <olvaffe@gmail.com>2010-01-15 17:42:57 +0800
commit51b00574a2ef81629548b079ef70c016bdd4251d (patch)
treee5170ff8b5617948fd66eb2a22b20eaba8584050 /src/gallium/state_trackers/egl_g3d/kms/native_kms.c
parent6664a6dd7fb701da26e04559bd8110703a61fd8f (diff)
st/egl_g3d: Always override flush_frontbuffer.
Instead of letting the native displays install their own version of flush_frontbuffer, always override the callback with a version that calls the flush_frontbuffer of the native surface.
Diffstat (limited to 'src/gallium/state_trackers/egl_g3d/kms/native_kms.c')
-rw-r--r--src/gallium/state_trackers/egl_g3d/kms/native_kms.c22
1 files changed, 3 insertions, 19 deletions
diff --git a/src/gallium/state_trackers/egl_g3d/kms/native_kms.c b/src/gallium/state_trackers/egl_g3d/kms/native_kms.c
index a44b9b9ae5..65829fc7b3 100644
--- a/src/gallium/state_trackers/egl_g3d/kms/native_kms.c
+++ b/src/gallium/state_trackers/egl_g3d/kms/native_kms.c
@@ -769,8 +769,7 @@ static struct native_display_modeset kms_display_modeset = {
};
static struct native_display *
-kms_create_display(EGLNativeDisplayType dpy, struct drm_api *api,
- native_flush_frontbuffer flush_frontbuffer)
+kms_create_display(EGLNativeDisplayType dpy, struct drm_api *api)
{
struct kms_display *kdpy;
@@ -812,10 +811,6 @@ kms_create_display(EGLNativeDisplayType dpy, struct drm_api *api,
return NULL;
}
- kdpy->base.screen->flush_frontbuffer =
- (void (*)(struct pipe_screen *, struct pipe_surface *, void *))
- flush_frontbuffer;
-
kdpy->base.destroy = kms_display_destroy;
kdpy->base.get_configs = kms_display_get_configs;
kdpy->base.create_context = kms_display_create_context;
@@ -826,13 +821,6 @@ kms_create_display(EGLNativeDisplayType dpy, struct drm_api *api,
return &kdpy->base;
}
-static void
-dummy_flush_frontbuffer(void *dummy, struct pipe_surface *surf,
- void *context_private)
-{
- _eglLog(_EGL_WARNING, "flush_frontbuffer is not supplied");
-}
-
/* the api is destroyed with the native display */
static struct drm_api *drm_api;
@@ -853,19 +841,15 @@ native_get_name(void)
}
struct native_display *
-native_create_display(EGLNativeDisplayType dpy,
- native_flush_frontbuffer flush_frontbuffer)
+native_create_display(EGLNativeDisplayType dpy)
{
struct native_display *ndpy = NULL;
if (!drm_api)
drm_api = drm_api_create();
- if (!flush_frontbuffer)
- flush_frontbuffer = dummy_flush_frontbuffer;
-
if (drm_api)
- ndpy = kms_create_display(dpy, drm_api, flush_frontbuffer);
+ ndpy = kms_create_display(dpy, drm_api);
return ndpy;
}