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