Fixes dependencies on GL/glx.h and GL/glxext.h files (v2)
[gstreamer-omap:libdri2.git] / test / dri2test-omap.c
1 /*
2  * Copyright © 2011 Texas Instruments, Inc.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Soft-
6  * ware"), to deal in the Software without restriction, including without
7  * limitation the rights to use, copy, modify, merge, publish, distribute,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, provided that the above copyright
10  * notice(s) and this permission notice appear in all copies of the Soft-
11  * ware and that both the above copyright notice(s) and this permission
12  * notice appear in supporting documentation.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-
16  * ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY
17  * RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN
18  * THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSE-
19  * QUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
20  * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
21  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFOR-
22  * MANCE OF THIS SOFTWARE.
23  *
24  * Except as contained in this notice, the name of a copyright holder shall
25  * not be used in advertising or otherwise to promote the sale, use or
26  * other dealings in this Software without prior written authorization of
27  * the copyright holder.
28  *
29  * Authors:
30  *   Rob Clark (rob@ti.com)
31  */
32
33 #ifdef HAVE_CONFIG_H
34 #  include "config.h"
35 #endif
36
37 #include "dri2test.h"
38
39 #include <omap_drm.h>
40 #include <omap_drmif.h>
41
42 static struct omap_device *dev;
43
44 static void setup(int fd)
45 {
46         dev = omap_device_new(fd);
47 }
48
49 static void * init(DRI2Buffer *dri2buf)
50 {
51         return omap_bo_from_name(dev, dri2buf->name);
52 }
53
54 static char * prep(void *hdl)
55 {
56         omap_bo_cpu_prep(hdl, OMAP_GEM_WRITE);
57         return omap_bo_map(hdl);
58 }
59
60 static void fini(void *hdl)
61 {
62         omap_bo_cpu_fini(hdl, OMAP_GEM_WRITE);
63 }
64
65 Backend omap_backend = {
66                 .setup = setup,
67                 .init = init,
68                 .prep = prep,
69                 .fini = fini,
70 };