egl/wayland: Implement getCapability for the dri2 and image loaders
authorAdam Jackson <ajax@redhat.com>
Tue, 10 Sep 2019 15:53:11 +0000 (11:53 -0400)
committerAdam Jackson <ajax@nwnk.net>
Fri, 20 Sep 2019 19:10:31 +0000 (19:10 +0000)
Reviewed-by: Kevin Strasser <kevin.strasser@intel.com>
src/egl/drivers/dri2/platform_wayland.c

index b93d813928114c58a76463eb42a799ae82946d9f..71bcb04a77b9d8230947bb5858a0c1e646fe034d 100644 (file)
@@ -812,19 +812,32 @@ dri2_wl_flush_front_buffer(__DRIdrawable * driDrawable, void *loaderPrivate)
    (void) loaderPrivate;
 }
 
+static unsigned
+dri2_wl_get_capability(void *loaderPrivate, enum dri_loader_cap cap)
+{
+   switch (cap) {
+   case DRI_LOADER_CAP_FP16:
+      return 1;
+   default:
+      return 0;
+   }
+}
+
 static const __DRIdri2LoaderExtension dri2_loader_extension = {
-   .base = { __DRI_DRI2_LOADER, 3 },
+   .base = { __DRI_DRI2_LOADER, 4 },
 
    .getBuffers           = dri2_wl_get_buffers,
    .flushFrontBuffer     = dri2_wl_flush_front_buffer,
    .getBuffersWithFormat = dri2_wl_get_buffers_with_format,
+   .getCapability        = dri2_wl_get_capability,
 };
 
 static const __DRIimageLoaderExtension image_loader_extension = {
-   .base = { __DRI_IMAGE_LOADER, 1 },
+   .base = { __DRI_IMAGE_LOADER, 2 },
 
    .getBuffers          = image_get_buffers,
    .flushFrontBuffer    = dri2_wl_flush_front_buffer,
+   .getCapability       = dri2_wl_get_capability,
 };
 
 static void