1b8e80941Smrg#include "target-helpers/drm_helper.h" 2b8e80941Smrg#include "target-helpers/sw_helper.h" 3b8e80941Smrg 4b8e80941Smrg#include "dri_screen.h" 5b8e80941Smrg 6b8e80941Smrg#define DEFINE_LOADER_DRM_ENTRYPOINT(drivername) \ 7b8e80941Smrgconst __DRIextension **__driDriverGetExtensions_##drivername(void); \ 8b8e80941SmrgPUBLIC const __DRIextension **__driDriverGetExtensions_##drivername(void) \ 9b8e80941Smrg{ \ 10b8e80941Smrg globalDriverAPI = &galliumdrm_driver_api; \ 11b8e80941Smrg return galliumdrm_driver_extensions; \ 12b8e80941Smrg} 13b8e80941Smrg 14b8e80941Smrg#if defined(GALLIUM_SOFTPIPE) 15b8e80941Smrg 16b8e80941Smrgconst __DRIextension **__driDriverGetExtensions_swrast(void); 17b8e80941Smrg 18b8e80941SmrgPUBLIC const __DRIextension **__driDriverGetExtensions_swrast(void) 19b8e80941Smrg{ 20b8e80941Smrg globalDriverAPI = &galliumsw_driver_api; 21b8e80941Smrg return galliumsw_driver_extensions; 22b8e80941Smrg} 23b8e80941Smrg 24b8e80941Smrg#if defined(HAVE_LIBDRM) 25b8e80941Smrg 26b8e80941Smrgconst __DRIextension **__driDriverGetExtensions_kms_swrast(void); 27b8e80941Smrg 28b8e80941SmrgPUBLIC const __DRIextension **__driDriverGetExtensions_kms_swrast(void) 29b8e80941Smrg{ 30b8e80941Smrg globalDriverAPI = &dri_kms_driver_api; 31b8e80941Smrg return galliumdrm_driver_extensions; 32b8e80941Smrg} 33b8e80941Smrg 34b8e80941Smrg#endif 35b8e80941Smrg#endif 36b8e80941Smrg 37b8e80941Smrg#if defined(GALLIUM_I915) 38b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(i915) 39b8e80941Smrg#endif 40b8e80941Smrg 41b8e80941Smrg#if defined(GALLIUM_IRIS) 42b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(iris) 43b8e80941Smrg#endif 44b8e80941Smrg 45b8e80941Smrg#if defined(GALLIUM_NOUVEAU) 46b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(nouveau) 47b8e80941Smrg#endif 48b8e80941Smrg 49b8e80941Smrg#if defined(GALLIUM_R300) 50b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(r300) 51b8e80941Smrg#endif 52b8e80941Smrg 53b8e80941Smrg#if defined(GALLIUM_R600) 54b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(r600) 55b8e80941Smrg#endif 56b8e80941Smrg 57b8e80941Smrg#if defined(GALLIUM_RADEONSI) 58b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(radeonsi) 59b8e80941Smrg#endif 60b8e80941Smrg 61b8e80941Smrg#if defined(GALLIUM_VMWGFX) 62b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(vmwgfx) 63b8e80941Smrg#endif 64b8e80941Smrg 65b8e80941Smrg#if defined(GALLIUM_FREEDRENO) 66b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(msm) 67b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(kgsl) 68b8e80941Smrg#endif 69b8e80941Smrg 70b8e80941Smrg#if defined(GALLIUM_VIRGL) 71b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(virtio_gpu) 72b8e80941Smrg#endif 73b8e80941Smrg 74b8e80941Smrg#if defined(GALLIUM_V3D) 75b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(v3d) 76b8e80941Smrg#endif 77b8e80941Smrg 78b8e80941Smrg#if defined(GALLIUM_VC4) 79b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(vc4) 80b8e80941Smrg#endif 81b8e80941Smrg 82b8e80941Smrg#if defined(GALLIUM_PANFROST) 83b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(panfrost) 84b8e80941Smrg#endif 85b8e80941Smrg 86b8e80941Smrg#if defined(GALLIUM_ETNAVIV) 87b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(armada_drm) 88b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(imx_drm) 89b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(etnaviv) 90b8e80941Smrg#endif 91b8e80941Smrg 92b8e80941Smrg#if defined(GALLIUM_TEGRA) 93b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(tegra); 94b8e80941Smrg#endif 95b8e80941Smrg 96b8e80941Smrg#if defined(GALLIUM_KMSRO) 97b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(exynos) 98b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(hx8357d) 99b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(ili9225) 100b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(ili9341) 101b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(meson) 102b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(mi0283qt) 103b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(pl111) 104b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(repaper) 105b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(rockchip) 106b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(st7586) 107b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(st7735r) 108b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(sun4i_drm) 109b8e80941Smrg#endif 110b8e80941Smrg 111b8e80941Smrg#if defined(GALLIUM_LIMA) 112b8e80941SmrgDEFINE_LOADER_DRM_ENTRYPOINT(lima) 113b8e80941Smrg#endif 114