summaryrefslogtreecommitdiff
path: root/cogl/driver/drm/cogl-driver-drm.c
diff options
context:
space:
mode:
Diffstat (limited to 'cogl/driver/drm/cogl-driver-drm.c')
-rw-r--r--cogl/driver/drm/cogl-driver-drm.c82
1 files changed, 82 insertions, 0 deletions
diff --git a/cogl/driver/drm/cogl-driver-drm.c b/cogl/driver/drm/cogl-driver-drm.c
new file mode 100644
index 00000000..d076c76f
--- /dev/null
+++ b/cogl/driver/drm/cogl-driver-drm.c
@@ -0,0 +1,82 @@
+/*
+ * Cogl
+ *
+ * An object oriented GL/GLES Abstraction/Utility Layer
+ *
+ * Copyright (C) 2012 Intel Corporation.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ *
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <string.h>
+
+#include "cogl-private.h"
+#include "cogl-context-private.h"
+#include "cogl-feature-private.h"
+#include "cogl-renderer-private.h"
+#include "cogl-error-private.h"
+#include "cogl-framebuffer-drm-private.h"
+#include "cogl-texture-2d-drm-private.h"
+#include "cogl-attribute-drm-private.h"
+#include "cogl-clip-stack-drm-private.h"
+
+static CoglBool
+_cogl_driver_update_features (CoglContext *ctx,
+ CoglError **error)
+{
+ /* _cogl_gpu_info_init (ctx, &ctx->gpu); */
+
+ ctx->private_feature_flags = 0;
+
+ return TRUE;
+}
+
+const CoglDriverVtable
+_cogl_driver_drm =
+ {
+ NULL, /* pixel_format_from_gl_internal */
+ NULL, /* pixel_format_to_gl */
+ _cogl_driver_update_features,
+ _cogl_offscreen_drm_allocate,
+ _cogl_offscreen_drm_free,
+ _cogl_framebuffer_drm_flush_state,
+ _cogl_framebuffer_drm_clear,
+ _cogl_framebuffer_drm_query_bits,
+ _cogl_framebuffer_drm_finish,
+ _cogl_framebuffer_drm_discard_buffers,
+ _cogl_framebuffer_drm_draw_attributes,
+ _cogl_framebuffer_drm_draw_indexed_attributes,
+ _cogl_framebuffer_drm_read_pixels_into_bitmap,
+ _cogl_texture_2d_drm_free,
+ _cogl_texture_2d_drm_can_create,
+ _cogl_texture_2d_drm_init,
+ _cogl_texture_2d_drm_allocate,
+ _cogl_texture_2d_drm_new_from_bitmap,
+#if defined (COGL_HAS_EGL_SUPPORT) && defined (EGL_KHR_image_base)
+ _cogl_egl_texture_2d_drm_new_from_image,
+#endif
+ _cogl_texture_2d_drm_copy_from_framebuffer,
+ _cogl_texture_2d_drm_get_gl_handle,
+ _cogl_texture_2d_drm_generate_mipmap,
+ _cogl_texture_2d_drm_copy_from_bitmap,
+ NULL, /* texture_2d_get_data */
+ _cogl_drm_flush_attributes_state,
+ _cogl_clip_stack_drm_flush,
+ };