1317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 2317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "target-helpers/inline_debug_helper.h" 3317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "state_tracker/drm_driver.h" 4317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "i915/drm/i915_drm_public.h" 5317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "i915/i915_public.h" 6317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 7317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerezstatic struct pipe_screen * 8317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerezcreate_screen(int fd) 9317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez{ 10317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez struct i915_winsys *iws; 11317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez struct pipe_screen *screen; 12317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 13317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez iws = i915_drm_winsys_create(fd); 14317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez if (!iws) 15317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez return NULL; 16317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 17317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez screen = i915_screen_create(iws); 18317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez if (!screen) 19317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez return NULL; 20317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 21317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez screen = debug_screen_wrap(screen); 22317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 23317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez return screen; 24317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez} 25317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez 26317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco JerezPUBLIC 27317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco JerezDRM_DRIVER_DESCRIPTOR("i915", "i915", create_screen, NULL) 28