summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/dri/dri2.c
diff options
context:
space:
mode:
authorGurchetan Singh <[email protected]>2017-07-27 20:48:22 -0700
committerEmil Velikov <[email protected]>2017-08-07 18:16:48 +0100
commit12fcdc4ba04cf7ffe0370cd35ebb26002790b9eb (patch)
treed6b0929c131231660d0f0d317b5222e1e277ce01 /src/gallium/state_trackers/dri/dri2.c
parent18eb3bdb858d221ec0f3e87e29819800c7df7760 (diff)
st/dri: move some image functions to dri_helpers.c
These functions will be used both by drisw.c and dri2.c. This patch also moves some headers that can be shared. Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/dri/dri2.c')
-rw-r--r--src/gallium/state_trackers/dri/dri2.c105
1 files changed, 1 insertions, 104 deletions
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
index eb22a16249b..4e58bcb9c5b 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -45,10 +45,8 @@
#include "main/bufferobj.h"
#include "main/texobj.h"
-#include "dri_screen.h"
-#include "dri_context.h"
-#include "dri_drawable.h"
#include "dri_helpers.h"
+#include "dri_drawable.h"
#include "dri_query_renderer.h"
#include "dri2_buffer.h"
@@ -885,21 +883,6 @@ dri2_update_tex_buffer(struct dri_drawable *drawable,
}
static __DRIimage *
-dri2_lookup_egl_image(struct dri_screen *screen, void *handle)
-{
- const __DRIimageLookupExtension *loader = screen->sPriv->dri2.image;
- __DRIimage *img;
-
- if (!loader->lookupEGLImage)
- return NULL;
-
- img = loader->lookupEGLImage(screen->sPriv,
- handle, screen->sPriv->loaderPrivate);
-
- return img;
-}
-
-static __DRIimage *
dri2_create_image_from_winsys(__DRIscreen *_screen,
int width, int height, int format,
int num_handles, struct winsys_handle *whandle,
@@ -1073,19 +1056,6 @@ exit:
}
static __DRIimage *
-dri2_create_image_from_renderbuffer(__DRIcontext *context,
- int renderbuffer, void *loaderPrivate)
-{
- struct dri_context *ctx = dri_context(context);
-
- if (!ctx->st->get_resource_for_egl_image)
- return NULL;
-
- /* TODO */
- return NULL;
-}
-
-static __DRIimage *
dri2_create_image_common(__DRIscreen *_screen,
int width, int height,
int format, unsigned int use,
@@ -1370,72 +1340,6 @@ dri2_from_planar(__DRIimage *image, int plane, void *loaderPrivate)
}
static __DRIimage *
-dri2_create_from_texture(__DRIcontext *context, int target, unsigned texture,
- int depth, int level, unsigned *error,
- void *loaderPrivate)
-{
- __DRIimage *img;
- struct gl_context *ctx = ((struct st_context *)dri_context(context)->st)->ctx;
- struct gl_texture_object *obj;
- struct pipe_resource *tex;
- GLuint face = 0;
-
- obj = _mesa_lookup_texture(ctx, texture);
- if (!obj || obj->Target != target) {
- *error = __DRI_IMAGE_ERROR_BAD_PARAMETER;
- return NULL;
- }
-
- tex = st_get_texobj_resource(obj);
- if (!tex) {
- *error = __DRI_IMAGE_ERROR_BAD_PARAMETER;
- return NULL;
- }
-
- if (target == GL_TEXTURE_CUBE_MAP)
- face = depth;
-
- _mesa_test_texobj_completeness(ctx, obj);
- if (!obj->_BaseComplete || (level > 0 && !obj->_MipmapComplete)) {
- *error = __DRI_IMAGE_ERROR_BAD_PARAMETER;
- return NULL;
- }
-
- if (level < obj->BaseLevel || level > obj->_MaxLevel) {
- *error = __DRI_IMAGE_ERROR_BAD_MATCH;
- return NULL;
- }
-
- if (target == GL_TEXTURE_3D && obj->Image[face][level]->Depth < depth) {
- *error = __DRI_IMAGE_ERROR_BAD_MATCH;
- return NULL;
- }
-
- img = CALLOC_STRUCT(__DRIimageRec);
- if (!img) {
- *error = __DRI_IMAGE_ERROR_BAD_ALLOC;
- return NULL;
- }
-
- img->level = level;
- img->layer = depth;
- img->dri_format = driGLFormatToImageFormat(obj->Image[face][level]->TexFormat);
-
- img->loader_private = loaderPrivate;
-
- if (img->dri_format == __DRI_IMAGE_FORMAT_NONE) {
- *error = __DRI_IMAGE_ERROR_BAD_PARAMETER;
- free(img);
- return NULL;
- }
-
- pipe_resource_reference(&img->texture, tex);
-
- *error = __DRI_IMAGE_ERROR_SUCCESS;
- return img;
-}
-
-static __DRIimage *
dri2_from_fds(__DRIscreen *screen, int width, int height, int fourcc,
int *fds, int num_fds, int *strides, int *offsets,
void *loaderPrivate)
@@ -1647,13 +1551,6 @@ dri2_unmap_image(__DRIcontext *context, __DRIimage *image, void *data)
pipe_transfer_unmap(pipe, (struct pipe_transfer *)data);
}
-static void
-dri2_destroy_image(__DRIimage *img)
-{
- pipe_resource_reference(&img->texture, NULL);
- FREE(img);
-}
-
static int
dri2_get_capabilities(__DRIscreen *_screen)
{