10e886219193472be2203f2afccea84029f014dbdChristian König#include "state_tracker/drm_driver.h" 20e886219193472be2203f2afccea84029f014dbdChristian König#include "target-helpers/inline_debug_helper.h" 30e886219193472be2203f2afccea84029f014dbdChristian König#include "radeon/drm/radeon_drm_public.h" 40e886219193472be2203f2afccea84029f014dbdChristian König#include "r300/r300_public.h" 50e886219193472be2203f2afccea84029f014dbdChristian König 60e886219193472be2203f2afccea84029f014dbdChristian Königstatic struct pipe_screen *create_screen(int fd) 70e886219193472be2203f2afccea84029f014dbdChristian König{ 80e886219193472be2203f2afccea84029f014dbdChristian König struct radeon_winsys *radeon; 90e886219193472be2203f2afccea84029f014dbdChristian König struct pipe_screen *screen; 100e886219193472be2203f2afccea84029f014dbdChristian König 110e886219193472be2203f2afccea84029f014dbdChristian König radeon = radeon_drm_winsys_create(fd); 120e886219193472be2203f2afccea84029f014dbdChristian König if (!radeon) 130e886219193472be2203f2afccea84029f014dbdChristian König return NULL; 140e886219193472be2203f2afccea84029f014dbdChristian König 150e886219193472be2203f2afccea84029f014dbdChristian König screen = r300_screen_create(radeon); 160e886219193472be2203f2afccea84029f014dbdChristian König if (!screen) 170e886219193472be2203f2afccea84029f014dbdChristian König return NULL; 180e886219193472be2203f2afccea84029f014dbdChristian König 190e886219193472be2203f2afccea84029f014dbdChristian König screen = debug_screen_wrap(screen); 200e886219193472be2203f2afccea84029f014dbdChristian König 210e886219193472be2203f2afccea84029f014dbdChristian König return screen; 220e886219193472be2203f2afccea84029f014dbdChristian König} 230e886219193472be2203f2afccea84029f014dbdChristian König 24ec7d5b8c021f655d49df4ba1ed2038ee423f9d5eThomas HellstromDRM_DRIVER_DESCRIPTOR("r300", "radeon", create_screen, NULL) 25