X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fegl%2Fdrivers%2Fdri2%2Fplatform_surfaceless.c;h=8d37e8e9f4f4d9ca6342ec0df0195c4415bd1dd8;hb=f280c00ba6cd3b0d3a01ae2fc3085de89ec867ec;hp=212b5c1434303b4cd2d23f2a3cea9e689a1a2d80;hpb=d32c458de76c9e0cc08c9ee1a7de23c3fca69298;p=mesa.git diff --git a/src/egl/drivers/dri2/platform_surfaceless.c b/src/egl/drivers/dri2/platform_surfaceless.c index 212b5c14343..8d37e8e9f4f 100644 --- a/src/egl/drivers/dri2/platform_surfaceless.c +++ b/src/egl/drivers/dri2/platform_surfaceless.c @@ -176,52 +176,6 @@ dri2_surfaceless_create_pbuffer_surface(_EGLDriver *drv, _EGLDisplay *disp, attrib_list); } -static EGLBoolean -surfaceless_add_configs_for_visuals(_EGLDriver *drv, _EGLDisplay *disp) -{ - struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); - static const struct { - const char *format_name; - int rgba_shifts[4]; - unsigned int rgba_sizes[4]; - } visuals[] = { - { "ABGR16F", { 0, 16, 32, 48 }, { 16, 16, 16, 16 } }, - { "XBGR16F", { 0, 16, 32, -1 }, { 16, 16, 16, 0 } }, - { "A2RGB10", { 20, 10, 0, 30 }, { 10, 10, 10, 2 } }, - { "X2RGB10", { 20, 10, 0, -1 }, { 10, 10, 10, 0 } }, - { "ARGB8888", { 16, 8, 0, 24 }, { 8, 8, 8, 8 } }, - { "RGB888", { 16, 8, 0, -1 }, { 8, 8, 8, 0 } }, - { "RGB565", { 11, 5, 0, -1 }, { 5, 6, 5, 0 } }, - }; - unsigned int format_count[ARRAY_SIZE(visuals)] = { 0 }; - unsigned int config_count = 0; - - for (unsigned i = 0; dri2_dpy->driver_configs[i] != NULL; i++) { - for (unsigned j = 0; j < ARRAY_SIZE(visuals); j++) { - struct dri2_egl_config *dri2_conf; - - dri2_conf = dri2_add_config(disp, dri2_dpy->driver_configs[i], - config_count + 1, EGL_PBUFFER_BIT, NULL, - visuals[j].rgba_shifts, visuals[j].rgba_sizes); - - if (dri2_conf) { - if (dri2_conf->base.ConfigID == config_count + 1) - config_count++; - format_count[j]++; - } - } - } - - for (unsigned i = 0; i < ARRAY_SIZE(format_count); i++) { - if (!format_count[i]) { - _eglLog(_EGL_DEBUG, "No DRI config supports native format %s", - visuals[i].format_name); - } - } - - return (config_count != 0); -} - static const struct dri2_egl_display_vtbl dri2_surfaceless_display_vtbl = { .create_pixmap_surface = dri2_fallback_create_pixmap_surface, .create_pbuffer_surface = dri2_surfaceless_create_pbuffer_surface, @@ -414,7 +368,7 @@ dri2_initialize_surfaceless(_EGLDriver *drv, _EGLDisplay *disp) #endif dri2_set_WL_bind_wayland_display(drv, disp); - if (!surfaceless_add_configs_for_visuals(drv, disp)) { + if (!dri2_add_pbuffer_configs_for_visuals(drv, disp)) { err = "DRI2: failed to add configs"; goto cleanup; }