gbm: manage only the required set of DRI extensions
authorEmil Velikov <emil.velikov@collabora.com>
Thu, 11 May 2017 15:46:51 +0000 (16:46 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Mon, 29 May 2017 15:50:12 +0000 (16:50 +0100)
Currently GBM attempts to know all the extensions that might be required
by EGL/DRM [at some later stage].

That is a bit unclear and we often forget to update GBM as EGL gets
attention.

To avoid that, simply let EGL manage it's own required extensions based
on the base primitive (screen) we provide it.

v2: Rework the approach - GBM should not dive into EGL/DRM.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Tested-by: Rob Herring <robh@kernel.org>
src/gbm/backends/dri/gbm_dri.c
src/gbm/backends/dri/gbm_driint.h

index 9b08ae31a5084d76fc11eed18810618312c55482..7fb569078b27cdd7e620ad092814124105f905b8 100644 (file)
@@ -256,7 +256,6 @@ static struct dri_extension_match dri_core_extensions[] = {
    { __DRI2_FLUSH, 1, offsetof(struct gbm_dri_device, flush) },
    { __DRI_IMAGE, 1, offsetof(struct gbm_dri_device, image) },
    { __DRI2_FENCE, 1, offsetof(struct gbm_dri_device, fence), 1 },
-   { __DRI2_INTEROP, 1, offsetof(struct gbm_dri_device, interop), 1 },
    { NULL, 0, 0 }
 };
 
index 68220cb85d0c1d38d115324adcc1e1ea6a6e3317..db9038a623aaa22ec133234c522fcdd8a8f801e1 100644 (file)
@@ -56,7 +56,6 @@ struct gbm_dri_device {
    const __DRIimageExtension  *image;
    const __DRIswrastExtension *swrast;
    const __DRI2flushExtension *flush;
-   const __DRI2interopExtension *interop;
 
    const __DRIconfig   **driver_configs;
    const __DRIextension **loader_extensions;