summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Hellstrom <[email protected]>2017-05-30 15:02:19 +0200
committerThomas Hellstrom <[email protected]>2017-06-07 19:43:54 +0200
commit1887faf73b379f28eb6c73bdb790dbcc97213b3a (patch)
tree06e4273e43e478db4abac59b338e85fe089cdd18
parentb8b0a3dc5cf195cc22317f3aae14399160fdc03e (diff)
svga: Allow format differences in 16-bit RGBA surface sharing
For the purpose of surface sharing, treat SVGA3D_R5G6B5 and SVGA3D_B5G6R5_UNORM as identical formats. This fixes the following piglit tests with dri3/xa: glx@glx-visuals-depth -pixmap glx@glx-visuals-stencil -pixmap Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Deepak Singh Rawat <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
-rw-r--r--src/gallium/drivers/svga/svga_format.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/svga/svga_format.c b/src/gallium/drivers/svga/svga_format.c
index 3a2f7df2427..7b06a16c3f3 100644
--- a/src/gallium/drivers/svga/svga_format.c
+++ b/src/gallium/drivers/svga/svga_format.c
@@ -1862,12 +1862,16 @@ static const SVGA3dSurfaceFormat compat_r8[] = {
static const SVGA3dSurfaceFormat compat_g8r8[] = {
SVGA3D_R8G8_UNORM, SVGA3D_NV12, 0
};
+static const SVGA3dSurfaceFormat compat_r5g6b5[] = {
+ SVGA3D_R5G6B5, SVGA3D_B5G6R5_UNORM, 0
+};
static const struct format_compat_entry format_compats[] = {
{PIPE_FORMAT_B8G8R8X8_UNORM, compat_x8r8g8b8},
{PIPE_FORMAT_B8G8R8A8_UNORM, compat_x8r8g8b8},
{PIPE_FORMAT_R8_UNORM, compat_r8},
- {PIPE_FORMAT_R8G8_UNORM, compat_g8r8}
+ {PIPE_FORMAT_R8G8_UNORM, compat_g8r8},
+ {PIPE_FORMAT_B5G6R5_UNORM, compat_r5g6b5}
};
/**