On Fri, May 19, 2017 at 2:37 AM, Daniel Stone <[email protected]> wrote:

> From: Varad Gautam <[email protected]>
>
> these allow querying the driver for supported dmabuf formats and
> modifiers.
>
> v2: move to __DRIimageExtension version 16.
> v3: return GLBoolean for error reporting, document params better.
>
> Signed-off-by: Varad Gautam <[email protected]>
> Reviewed-by: Daniel Stone <[email protected]>
> Signed-off-by: Daniel Stone <[email protected]>
> ---
>  include/GL/internal/dri_interface.h | 42 ++++++++++++++++++++++++++++++
> ++++++-
>  1 file changed, 41 insertions(+), 1 deletion(-)
>
> diff --git a/include/GL/internal/dri_interface.h
> b/include/GL/internal/dri_interface.h
> index 53b95dd93d..37bd48b0b6 100644
> --- a/include/GL/internal/dri_interface.h
> +++ b/include/GL/internal/dri_interface.h
> @@ -1137,7 +1137,7 @@ struct __DRIdri2ExtensionRec {
>   * extensions.
>   */
>  #define __DRI_IMAGE "DRI_IMAGE"
> -#define __DRI_IMAGE_VERSION 15
> +#define __DRI_IMAGE_VERSION 16
>

Do we really need to bump the extension version twice in one patch series?
Seems like we could just as easily merge this into patch 3.  Not that it
matters...


>
>  /**
>   * These formats correspond to the similarly named MESA_FORMAT_*
> @@ -1513,6 +1513,46 @@ struct __DRIimageExtensionRec {
>                                            enum __DRIChromaSiting
> vert_siting,
>                                            unsigned *error,
>                                            void *loaderPrivate);
> +
> +   /*
> +    * dmabuf format query to support EGL_EXT_image_dma_buf_import_
> modifiers.
> +    *
> +    * \param max      Maximum number of formats that can be accomodated
> into
> +    *                 \param formats. If zero, no formats are returned -
> +    *                 instead, the driver returns the total number of
> +    *                 supported dmabuf formats in \param count.
> +    * \param formats  Buffer to fill formats into.
> +    * \param count    Count of formats returned, or, total number of
> +    *                 supported formats in case \param max is zero.
> +    *
> +    * Returns true on success.
> +    *
> +    * \since 16
> +    */
> +   GLboolean (*queryDmaBufFormats)(__DRIscreen *screen, int max, int
> *formats,
> +                              int *count);
> +
> +   /*
> +    * dmabuf format modifier query for a given format to support
> +    * EGL_EXT_image_dma_buf_import_modifiers.
> +    *
> +    * \param fourcc    The format to query modifiers for. If this format
> +    *                  is not supported by the driver, return false.
> +    * \param max       Maximum number of modifiers that can be
> accomodated in
> +    *                  \param modifiers. If zero, no modifiers are
> returned -
> +    *                  instead, the driver returns the total number of
> +    *                  modifiers for \param format in \param count.
> +    * \param modifiers Buffer to fill modifiers into.
> +    * \param count     Count of the modifiers returned, or, total number
> of
> +    *                  supported modifiers for \param fourcc in case
> +    *                  \param max is zero.
> +    *
> +    * Returns true upon success.
> +    *
> +    * \since 16
> +    */
> +   GLboolean (*queryDmaBufModifiers)(__DRIscreen *screen, int fourcc,
> int max,
> +                                uint64_t *modifiers, int *count);
>  };
>
>
> --
> 2.13.0
>
> _______________________________________________
> mesa-dev mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to