1317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez
2317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "target-helpers/inline_debug_helper.h"
3317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "state_tracker/drm_driver.h"
4317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "radeon/drm/radeon_drm_public.h"
5317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez#include "r300/r300_public.h"
6317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez
7317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerezstatic struct pipe_screen *
8317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerezcreate_screen(int fd)
9317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez{
10317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez   struct radeon_winsys *sws;
11317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez   struct pipe_screen *screen;
12317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez
13317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez   sws = radeon_drm_winsys_create(fd);
14317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez   if (!sws)
15317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez      return NULL;
16317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez
17317be33d73228fe8b340de8e029ff24b6e0d95b5Francisco Jerez   screen = r300_screen_create(sws);
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("r300", "radeon", create_screen, NULL)
28