imx: gallium driver for imx-drm scanout driver
[mesa.git] / src / gallium / targets / dri / target.c
1 #include "target-helpers/drm_helper.h"
2 #include "target-helpers/sw_helper.h"
3
4 #include "dri_screen.h"
5
6 #if defined(GALLIUM_SOFTPIPE)
7
8 const __DRIextension **__driDriverGetExtensions_swrast(void);
9
10 PUBLIC const __DRIextension **__driDriverGetExtensions_swrast(void)
11 {
12 globalDriverAPI = &galliumsw_driver_api;
13 return galliumsw_driver_extensions;
14 }
15
16 #if defined(HAVE_LIBDRM)
17
18 const __DRIextension **__driDriverGetExtensions_kms_swrast(void);
19
20 PUBLIC const __DRIextension **__driDriverGetExtensions_kms_swrast(void)
21 {
22 globalDriverAPI = &dri_kms_driver_api;
23 return galliumdrm_driver_extensions;
24 }
25
26 #endif
27 #endif
28
29 #if defined(GALLIUM_I915)
30
31 const __DRIextension **__driDriverGetExtensions_i915(void);
32
33 PUBLIC const __DRIextension **__driDriverGetExtensions_i915(void)
34 {
35 globalDriverAPI = &galliumdrm_driver_api;
36 return galliumdrm_driver_extensions;
37 }
38 #endif
39
40 #if defined(GALLIUM_ILO)
41
42 const __DRIextension **__driDriverGetExtensions_i965(void);
43
44 PUBLIC const __DRIextension **__driDriverGetExtensions_i965(void)
45 {
46 globalDriverAPI = &galliumdrm_driver_api;
47 return galliumdrm_driver_extensions;
48 }
49 #endif
50
51 #if defined(GALLIUM_NOUVEAU)
52
53 const __DRIextension **__driDriverGetExtensions_nouveau(void);
54
55 PUBLIC const __DRIextension **__driDriverGetExtensions_nouveau(void)
56 {
57 globalDriverAPI = &galliumdrm_driver_api;
58 return galliumdrm_driver_extensions;
59 }
60 #endif
61
62 #if defined(GALLIUM_R300)
63
64 const __DRIextension **__driDriverGetExtensions_r300(void);
65
66 PUBLIC const __DRIextension **__driDriverGetExtensions_r300(void)
67 {
68 globalDriverAPI = &galliumdrm_driver_api;
69 return galliumdrm_driver_extensions;
70 }
71 #endif
72
73 #if defined(GALLIUM_R600)
74
75 const __DRIextension **__driDriverGetExtensions_r600(void);
76
77 PUBLIC const __DRIextension **__driDriverGetExtensions_r600(void)
78 {
79 globalDriverAPI = &galliumdrm_driver_api;
80 return galliumdrm_driver_extensions;
81 }
82 #endif
83
84 #if defined(GALLIUM_RADEONSI)
85
86 const __DRIextension **__driDriverGetExtensions_radeonsi(void);
87
88 PUBLIC const __DRIextension **__driDriverGetExtensions_radeonsi(void)
89 {
90 globalDriverAPI = &galliumdrm_driver_api;
91 return galliumdrm_driver_extensions;
92 }
93 #endif
94
95 #if defined(GALLIUM_VMWGFX)
96
97 const __DRIextension **__driDriverGetExtensions_vmwgfx(void);
98
99 PUBLIC const __DRIextension **__driDriverGetExtensions_vmwgfx(void)
100 {
101 globalDriverAPI = &galliumdrm_driver_api;
102 return galliumdrm_driver_extensions;
103 }
104 #endif
105
106 #if defined(GALLIUM_FREEDRENO)
107
108 const __DRIextension **__driDriverGetExtensions_msm(void);
109
110 PUBLIC const __DRIextension **__driDriverGetExtensions_msm(void)
111 {
112 globalDriverAPI = &galliumdrm_driver_api;
113 return galliumdrm_driver_extensions;
114 }
115
116 const __DRIextension **__driDriverGetExtensions_kgsl(void);
117
118 PUBLIC const __DRIextension **__driDriverGetExtensions_kgsl(void)
119 {
120 globalDriverAPI = &galliumdrm_driver_api;
121 return galliumdrm_driver_extensions;
122 }
123 #endif
124
125 #if defined(GALLIUM_VIRGL)
126
127 const __DRIextension **__driDriverGetExtensions_virtio_gpu(void);
128
129 PUBLIC const __DRIextension **__driDriverGetExtensions_virtio_gpu(void)
130 {
131 globalDriverAPI = &galliumdrm_driver_api;
132 return galliumdrm_driver_extensions;
133 }
134 #endif
135
136 #if defined(GALLIUM_VC4)
137
138 const __DRIextension **__driDriverGetExtensions_vc4(void);
139
140 PUBLIC const __DRIextension **__driDriverGetExtensions_vc4(void)
141 {
142 globalDriverAPI = &galliumdrm_driver_api;
143 return galliumdrm_driver_extensions;
144 }
145
146 #if defined(USE_VC4_SIMULATOR)
147 const __DRIextension **__driDriverGetExtensions_i965(void);
148
149 /**
150 * When building using the simulator (on x86), we advertise ourselves as the
151 * i965 driver so that you can just make a directory with a link from
152 * i965_dri.so to the built vc4_dri.so, and point LIBGL_DRIVERS_PATH to that
153 * on your i965-using host to run the driver under simulation.
154 *
155 * This is, of course, incompatible with building with the ilo driver, but you
156 * shouldn't be building that anyway.
157 */
158 PUBLIC const __DRIextension **__driDriverGetExtensions_i965(void)
159 {
160 globalDriverAPI = &galliumdrm_driver_api;
161 return galliumdrm_driver_extensions;
162 }
163 #endif
164 #endif
165
166 #if defined(GALLIUM_ETNAVIV)
167
168 const __DRIextension **__driDriverGetExtensions_imx_drm(void);
169
170 PUBLIC const __DRIextension **__driDriverGetExtensions_imx_drm(void)
171 {
172 globalDriverAPI = &galliumdrm_driver_api;
173 return galliumdrm_driver_extensions;
174 }
175
176 const __DRIextension **__driDriverGetExtensions_etnaviv(void);
177
178 PUBLIC const __DRIextension **__driDriverGetExtensions_etnaviv(void)
179 {
180 globalDriverAPI = &galliumdrm_driver_api;
181 return galliumdrm_driver_extensions;
182 }
183 #endif