14381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König#include "state_tracker/drm_driver.h" 24381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König#include "target-helpers/inline_debug_helper.h" 3ce12f826927cf2d3ac3fd70d893abfb07adc23dbMarek Olšák#include "radeon/drm/radeon_drm_public.h" 44381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König#include "r600/r600_public.h" 54381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 64381580936f07e0c5eb0ad7c51d2ccf765000d08Christian Königstatic struct pipe_screen *create_screen(int fd) 74381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König{ 8ce12f826927cf2d3ac3fd70d893abfb07adc23dbMarek Olšák struct radeon_winsys *radeon; 94381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König struct pipe_screen *screen; 104381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 11ce12f826927cf2d3ac3fd70d893abfb07adc23dbMarek Olšák radeon = radeon_drm_winsys_create(fd); 124381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König if (!radeon) 134381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König return NULL; 144381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 154381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König screen = r600_screen_create(radeon); 164381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König if (!screen) 174381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König return NULL; 184381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 194381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König screen = debug_screen_wrap(screen); 204381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 214381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König return screen; 224381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König} 234381580936f07e0c5eb0ad7c51d2ccf765000d08Christian König 24ec7d5b8c021f655d49df4ba1ed2038ee423f9d5eThomas HellstromDRM_DRIVER_DESCRIPTOR("r600", "radeon", create_screen, NULL) 25