1 
2 #include "state_tracker/drm_driver.h"
3 #include "target-helpers/inline_wrapper_sw_helper.h"
4 #include "target-helpers/inline_debug_helper.h"
5 #include "i915/drm/i915_drm_public.h"
6 #include "i915/i915_public.h"
7 
8 static struct pipe_screen *
create_screen(int fd)9 create_screen(int fd)
10 {
11    struct i915_winsys *iws;
12    struct pipe_screen *screen;
13 
14    iws = i915_drm_winsys_create(fd);
15    if (!iws)
16       return NULL;
17 
18    screen = i915_screen_create(iws);
19    if (!screen)
20       return NULL;
21 
22    screen = sw_screen_wrap(screen);
23 
24    screen = debug_screen_wrap(screen);
25 
26    return screen;
27 }
28 
29 DRM_DRIVER_DESCRIPTOR("i915", "i915", create_screen, NULL)
30