diff options
author | Christian König <[email protected]> | 2011-06-05 00:11:41 +0200 |
---|---|---|
committer | Christian König <[email protected]> | 2011-06-05 00:11:41 +0200 |
commit | 1eb957bb4108123bea95b818e0544e3b5f255e08 (patch) | |
tree | d7febd8e6cc841ab16dca53f031322ec47d5ccd9 /src/egl | |
parent | a6c76c8a90dc8995feed3c61b02dbd8408149036 (diff) | |
parent | 6491e9593d5cbc5644eb02593a2f562447efdcbb (diff) |
Merge remote-tracking branch 'origin/master' into pipe-video
Diffstat (limited to 'src/egl')
-rw-r--r-- | src/egl/drivers/dri2/platform_drm.c | 15 | ||||
-rw-r--r-- | src/egl/drivers/dri2/platform_wayland.c | 6 | ||||
-rw-r--r-- | src/egl/wayland/wayland-drm/wayland-drm.c | 2 | ||||
-rw-r--r-- | src/egl/wayland/wayland-egl/wayland-egl-priv.h | 15 | ||||
-rw-r--r-- | src/egl/wayland/wayland-egl/wayland-egl.c | 13 |
5 files changed, 20 insertions, 31 deletions
diff --git a/src/egl/drivers/dri2/platform_drm.c b/src/egl/drivers/dri2/platform_drm.c index d2be66ccc2b..215c1bdae3d 100644 --- a/src/egl/drivers/dri2/platform_drm.c +++ b/src/egl/drivers/dri2/platform_drm.c @@ -531,6 +531,21 @@ const int r600_chip_ids[] = { 0x9805, /* PCI_CHIP_PALM_9805 */ 0x9806, /* PCI_CHIP_PALM_9806 */ 0x9807, /* PCI_CHIP_PALM_9807 */ + 0x6700, /* PCI_CHIP_CAYMAN_6700 */ + 0x6701, /* PCI_CHIP_CAYMAN_6701 */ + 0x6702, /* PCI_CHIP_CAYMAN_6702 */ + 0x6703, /* PCI_CHIP_CAYMAN_6703 */ + 0x6704, /* PCI_CHIP_CAYMAN_6704 */ + 0x6705, /* PCI_CHIP_CAYMAN_6705 */ + 0x6706, /* PCI_CHIP_CAYMAN_6706 */ + 0x6707, /* PCI_CHIP_CAYMAN_6707 */ + 0x6708, /* PCI_CHIP_CAYMAN_6708 */ + 0x6709, /* PCI_CHIP_CAYMAN_6709 */ + 0x6718, /* PCI_CHIP_CAYMAN_6718 */ + 0x6719, /* PCI_CHIP_CAYMAN_6719 */ + 0x671C, /* PCI_CHIP_CAYMAN_671C */ + 0x671D, /* PCI_CHIP_CAYMAN_671D */ + 0x671F, /* PCI_CHIP_CAYMAN_671F */ 0x6720, /* PCI_CHIP_BARTS_6720 */ 0x6721, /* PCI_CHIP_BARTS_6721 */ 0x6722, /* PCI_CHIP_BARTS_6722 */ diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 1b75ffea0c5..1d6ce2ec49c 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -586,7 +586,7 @@ dri2_wayland_authenticate(_EGLDisplay *disp, uint32_t id) struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); int ret = 0; - dri2_dpy->authenticated = false; + dri2_dpy->authenticated = 0; wl_drm_authenticate(dri2_dpy->wl_drm, id); force_roundtrip(dri2_dpy->wl_dpy); @@ -595,7 +595,7 @@ dri2_wayland_authenticate(_EGLDisplay *disp, uint32_t id) ret = -1; /* reset authenticated */ - dri2_dpy->authenticated = true; + dri2_dpy->authenticated = 1; return ret; } @@ -647,7 +647,7 @@ drm_handle_authenticated(void *data, struct wl_drm *drm) { struct dri2_egl_display *dri2_dpy = data; - dri2_dpy->authenticated = true; + dri2_dpy->authenticated = 1; } static const struct wl_drm_listener drm_listener = { diff --git a/src/egl/wayland/wayland-drm/wayland-drm.c b/src/egl/wayland/wayland-drm/wayland-drm.c index d68f9c7bac3..6cc442b9d53 100644 --- a/src/egl/wayland/wayland-drm/wayland-drm.c +++ b/src/egl/wayland/wayland-drm/wayland-drm.c @@ -100,7 +100,7 @@ drm_create_buffer(struct wl_client *client, struct wl_drm *drm, buffer->buffer.height = height; buffer->buffer.visual = visual; - if (visual->object.interface != &wl_visual_interface) { + if (!visual || visual->object.interface != &wl_visual_interface) { wl_client_post_error(client, &drm->object, WL_DRM_ERROR_INVALID_VISUAL, "invalid visual"); diff --git a/src/egl/wayland/wayland-egl/wayland-egl-priv.h b/src/egl/wayland/wayland-egl/wayland-egl-priv.h index 7bb436a78ab..179f5cf199b 100644 --- a/src/egl/wayland/wayland-egl/wayland-egl-priv.h +++ b/src/egl/wayland/wayland-egl/wayland-egl-priv.h @@ -12,20 +12,8 @@ extern "C" { #define WL_EGL_EXPORT #endif -#include <stdbool.h> #include <wayland-client.h> -struct wl_egl_display { - struct wl_display *display; - - struct wl_drm *drm; - int fd; - char *device_name; - bool authenticated; - - void (*glFlush)(void); -}; - struct wl_egl_window { struct wl_surface *surface; struct wl_visual *visual; @@ -40,8 +28,7 @@ struct wl_egl_window { }; struct wl_egl_pixmap { - struct wl_egl_display *display; - struct wl_visual *visual; + struct wl_visual *visual; struct wl_buffer *buffer; int width; diff --git a/src/egl/wayland/wayland-egl/wayland-egl.c b/src/egl/wayland/wayland-egl/wayland-egl.c index 3e1a9c45bdc..c8f73ea8a3a 100644 --- a/src/egl/wayland/wayland-egl/wayland-egl.c +++ b/src/egl/wayland/wayland-egl/wayland-egl.c @@ -1,21 +1,8 @@ -#include <stdio.h> #include <stdlib.h> -#include <string.h> -#include <stdbool.h> -#include <errno.h> - -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <unistd.h> - -#include <dlfcn.h> #include <wayland-client.h> #include "wayland-egl.h" #include "wayland-egl-priv.h" -#include "wayland-drm-client-protocol.h" -#include <xf86drm.h> WL_EGL_EXPORT void wl_egl_window_resize(struct wl_egl_window *egl_window, |