summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorGert Wollny <[email protected]>2019-05-27 16:38:38 +0200
committerGert Wollny <[email protected]>2019-06-20 08:50:38 +0200
commita478e56fbd33fa23503b63d41265a1c2f3253ed2 (patch)
treee91f166e6fe1306d41a60c4485e2a5e59c0a9394 /src/gallium/drivers
parent5dbecf7863d4f29277773bd07ba68e1c858494b0 (diff)
virgl: Add debug flag to bypass driconf to enable the BGRA tweaks
This useful for testing, also because with vtest the dri configuration is not read. Signed-off-by: Gert Wollny <[email protected]> Reviewed-by: Gurchetan Singh <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/virgl/virgl_screen.c5
-rw-r--r--src/gallium/drivers/virgl/virgl_screen.h3
2 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c
index be684dbf3c1..b2e3117c383 100644
--- a/src/gallium/drivers/virgl/virgl_screen.c
+++ b/src/gallium/drivers/virgl/virgl_screen.c
@@ -43,6 +43,8 @@ int virgl_debug = 0;
static const struct debug_named_value debug_options[] = {
{ "verbose", VIRGL_DEBUG_VERBOSE, NULL },
{ "tgsi", VIRGL_DEBUG_TGSI, NULL },
+ { "emubgra", VIRGL_DEBUG_EMULATE_BGRA, "Enable tweak to emulate BGRA as RGBA on GLES hosts"},
+ { "bgraswz", VIRGL_DEBUG_BGRA_DEST_SWIZZLE, "Enable tweak to swizzle emulated BGRA on GLES hosts" },
DEBUG_NAMED_VALUE_END
};
DEBUG_GET_ONCE_FLAGS_OPTION(virgl_debug, "VIRGL_DEBUG", debug_options, 0)
@@ -872,6 +874,9 @@ virgl_create_screen(struct virgl_winsys *vws, const struct pipe_screen_config *c
driQueryOptioni(config->options, VIRGL_GLES_SAMPLES_PASSED_VALUE);
}
+ screen->tweak_gles_emulate_bgra |= !!(virgl_debug & VIRGL_DEBUG_EMULATE_BGRA);
+ screen->tweak_gles_apply_bgra_dest_swizzle |= !!(virgl_debug & VIRGL_DEBUG_BGRA_DEST_SWIZZLE);
+
screen->vws = vws;
screen->base.get_name = virgl_get_name;
screen->base.get_vendor = virgl_get_vendor;
diff --git a/src/gallium/drivers/virgl/virgl_screen.h b/src/gallium/drivers/virgl/virgl_screen.h
index 089402d576d..b7535527b9e 100644
--- a/src/gallium/drivers/virgl/virgl_screen.h
+++ b/src/gallium/drivers/virgl/virgl_screen.h
@@ -29,6 +29,9 @@
#define VIRGL_DEBUG_VERBOSE 1
#define VIRGL_DEBUG_TGSI 2
+#define VIRGL_DEBUG_EMULATE_BGRA 4
+#define VIRGL_DEBUG_BGRA_DEST_SWIZZLE 4
+
extern int virgl_debug;
struct virgl_screen {