[Mesa-dev] [PATCH 1/7] egl/surfaceless: print out a message on zero configs for given format

Gurchetan Singh gurchetansingh at chromium.org
Thu Aug 25 21:15:05 UTC 2016


Reviewed-by: Gurchetan Singh <gurchetansingh at chromium.org>

On Thu, Aug 25, 2016 at 9:23 AM, Emil Velikov <emil.l.velikov at gmail.com>
wrote:

> From: Emil Velikov <emil.velikov at collabora.com>
>
> Currently we print a debug message if the total configs is non-zero only
> to do the same (at an error level) as we return from the function.
>
> Rework the message to print if we're missing a config for the given
> format.
>
> Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
> ---
>  src/egl/drivers/dri2/platform_surfaceless.c | 27
> ++++++++++++++++++---------
>  1 file changed, 18 insertions(+), 9 deletions(-)
>
> diff --git a/src/egl/drivers/dri2/platform_surfaceless.c
> b/src/egl/drivers/dri2/platform_surfaceless.c
> index 386aa7a..9e2aa7c 100644
> --- a/src/egl/drivers/dri2/platform_surfaceless.c
> +++ b/src/egl/drivers/dri2/platform_surfaceless.c
> @@ -181,28 +181,37 @@ static EGLBoolean
>  surfaceless_add_configs_for_visuals(_EGLDriver *drv, _EGLDisplay *dpy)
>  {
>     struct dri2_egl_display *dri2_dpy = dri2_egl_display(dpy);
> -   static const unsigned int visuals[3][4] = {
> -      { 0xff0000, 0xff00, 0xff, 0xff000000 },   // ARGB8888
> -      { 0xff0000, 0xff00, 0xff, 0x0 },          // RGB888
> -      { 0xf800, 0x7e0, 0x1f, 0x0  },            // RGB565
> +   static const struct {
> +      const char *format_name;
> +      unsigned int rgba_masks[4];
> +   } visuals[] = {
> +      { "ARGB8888", { 0xff0000, 0xff00, 0xff, 0xff000000 } },
> +      { "RGB888",   { 0xff0000, 0xff00, 0xff, 0x0 } },
> +      { "RGB565",   { 0x00f800, 0x07e0, 0x1f, 0x0 } },
>     };
>     unsigned int count, i, j;
>
>     count = 0;
>     for (i = 0; i < ARRAY_SIZE(visuals); i++) {
> +      int format_count = 0;
> +
>        for (j = 0; dri2_dpy->driver_configs[j]; j++) {
>           struct dri2_egl_config *dri2_conf;
>
>           dri2_conf = dri2_add_config(dpy, dri2_dpy->driver_configs[j],
> -               count + 1, EGL_PBUFFER_BIT, NULL, visuals[i]);
> +               count + 1, EGL_PBUFFER_BIT, NULL, visuals[i].rgba_masks);
>
> -         if (dri2_conf)
> +         if (dri2_conf) {
>              count++;
> +            format_count++;
> +         }
>        }
> -   }
>
> -   if (!count)
> -      _eglLog(_EGL_DEBUG, "Can't create surfaceless visuals");
> +      if (!format_count) {
> +         _eglLog(_EGL_DEBUG, "No DRI config supports native format %s",
> +               visuals[i].format_name);
> +      }
> +   }
>
>     return (count != 0);
>  }
> --
> 2.9.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160825/d8340bd7/attachment-0001.html>


More information about the mesa-dev mailing list