65231cf3ebad09149bba2f0b8d3a783f9d87f9aa
5 #include "target-helpers/inline_debug_helper.h"
6 #include "target-helpers/drm_helper_public.h"
9 #include "i915/drm/i915_drm_public.h"
10 #include "i915/i915_public.h"
13 pipe_i915_create_screen(int fd
, unsigned flags
)
15 struct i915_winsys
*iws
;
16 struct pipe_screen
*screen
;
18 iws
= i915_drm_winsys_create(fd
);
22 screen
= i915_screen_create(iws
);
23 return screen
? debug_screen_wrap(screen
) : NULL
;
29 pipe_i915_create_screen(int fd
, unsigned flags
)
31 fprintf(stderr
, "i915g: driver missing\n");
37 #ifdef GALLIUM_NOUVEAU
38 #include "nouveau/drm/nouveau_drm_public.h"
41 pipe_nouveau_create_screen(int fd
, unsigned flags
)
43 struct pipe_screen
*screen
;
45 screen
= nouveau_drm_screen_create(fd
);
46 return screen
? debug_screen_wrap(screen
) : NULL
;
52 pipe_nouveau_create_screen(int fd
, unsigned flags
)
54 fprintf(stderr
, "nouveau: driver missing\n");
61 #include "pl111/drm/pl111_drm_public.h"
64 pipe_pl111_create_screen(int fd
, unsigned flags
)
66 struct pipe_screen
*screen
;
68 screen
= pl111_drm_screen_create(fd
);
69 return screen
? debug_screen_wrap(screen
) : NULL
;
75 pipe_pl111_create_screen(int fd
, unsigned flags
)
77 fprintf(stderr
, "pl111: driver missing\n");
84 #include "radeon/radeon_winsys.h"
85 #include "radeon/drm/radeon_drm_public.h"
86 #include "r300/r300_public.h"
89 pipe_r300_create_screen(int fd
, unsigned flags
)
91 struct radeon_winsys
*rw
;
93 rw
= radeon_drm_winsys_create(fd
, r300_screen_create
);
94 return rw
? debug_screen_wrap(rw
->screen
) : NULL
;
100 pipe_r300_create_screen(int fd
, unsigned flags
)
102 fprintf(stderr
, "r300: driver missing\n");
109 #include "radeon/radeon_winsys.h"
110 #include "radeon/drm/radeon_drm_public.h"
111 #include "r600/r600_public.h"
114 pipe_r600_create_screen(int fd
, unsigned flags
)
116 struct radeon_winsys
*rw
;
118 rw
= radeon_drm_winsys_create(fd
, r600_screen_create
);
119 return rw
? debug_screen_wrap(rw
->screen
) : NULL
;
125 pipe_r600_create_screen(int fd
, unsigned flags
)
127 fprintf(stderr
, "r600: driver missing\n");
133 #ifdef GALLIUM_RADEONSI
134 #include "radeon/radeon_winsys.h"
135 #include "radeon/drm/radeon_drm_public.h"
136 #include "amdgpu/drm/amdgpu_public.h"
137 #include "radeonsi/si_public.h"
140 pipe_radeonsi_create_screen(int fd
, unsigned flags
)
142 struct radeon_winsys
*rw
;
144 /* First, try amdgpu. */
145 rw
= amdgpu_winsys_create(fd
, radeonsi_screen_create
);
148 rw
= radeon_drm_winsys_create(fd
, radeonsi_screen_create
);
150 return rw
? debug_screen_wrap(rw
->screen
) : NULL
;
156 pipe_radeonsi_create_screen(int fd
, unsigned flags
)
158 fprintf(stderr
, "radeonsi: driver missing\n");
164 #ifdef GALLIUM_VMWGFX
165 #include "svga/drm/svga_drm_public.h"
166 #include "svga/svga_public.h"
169 pipe_vmwgfx_create_screen(int fd
, unsigned flags
)
171 struct svga_winsys_screen
*sws
;
172 struct pipe_screen
*screen
;
174 sws
= svga_drm_winsys_screen_create(fd
);
178 screen
= svga_screen_create(sws
);
179 return screen
? debug_screen_wrap(screen
) : NULL
;
185 pipe_vmwgfx_create_screen(int fd
, unsigned flags
)
187 fprintf(stderr
, "svga: driver missing\n");
193 #ifdef GALLIUM_FREEDRENO
194 #include "freedreno/drm/freedreno_drm_public.h"
197 pipe_freedreno_create_screen(int fd
, unsigned flags
)
199 struct pipe_screen
*screen
;
201 screen
= fd_drm_screen_create(fd
);
202 return screen
? debug_screen_wrap(screen
) : NULL
;
208 pipe_freedreno_create_screen(int fd
, unsigned flags
)
210 fprintf(stderr
, "freedreno: driver missing\n");
217 #include "virgl/drm/virgl_drm_public.h"
218 #include "virgl/virgl_public.h"
221 pipe_virgl_create_screen(int fd
, unsigned flags
)
223 struct pipe_screen
*screen
;
225 screen
= virgl_drm_screen_create(fd
);
226 return screen
? debug_screen_wrap(screen
) : NULL
;
232 pipe_virgl_create_screen(int fd
, unsigned flags
)
234 fprintf(stderr
, "virgl: driver missing\n");
241 #include "vc4/drm/vc4_drm_public.h"
244 pipe_vc4_create_screen(int fd
, unsigned flags
)
246 struct pipe_screen
*screen
;
248 screen
= vc4_drm_screen_create(fd
);
249 return screen
? debug_screen_wrap(screen
) : NULL
;
255 pipe_vc4_create_screen(int fd
, unsigned flags
)
257 fprintf(stderr
, "vc4: driver missing\n");
263 #ifdef GALLIUM_ETNAVIV
264 #include "etnaviv/drm/etnaviv_drm_public.h"
267 pipe_etna_create_screen(int fd
, unsigned flags
)
269 struct pipe_screen
*screen
;
271 screen
= etna_drm_screen_create(fd
);
272 return screen
? debug_screen_wrap(screen
) : NULL
;
278 pipe_etna_create_screen(int fd
, unsigned flags
)
280 fprintf(stderr
, "etnaviv: driver missing\n");
287 #include "imx/drm/imx_drm_public.h"
290 pipe_imx_drm_create_screen(int fd
, unsigned flags
)
292 struct pipe_screen
*screen
;
294 screen
= imx_drm_screen_create(fd
);
295 return screen
? debug_screen_wrap(screen
) : NULL
;
301 pipe_imx_drm_create_screen(int fd
, unsigned flags
)
303 fprintf(stderr
, "imx-drm: driver missing\n");
310 #endif /* DRM_HELPER_H */