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