summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch')
-rw-r--r--meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch52
1 files changed, 52 insertions, 0 deletions
diff --git a/meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch b/meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch
new file mode 100644
index 0000000000..f23b9875cd
--- /dev/null
+++ b/meta/recipes-graphics/mesa/files/0004-hardware-gloat.patch
@@ -0,0 +1,52 @@
1From 52468545daa0c2d205312e06304d8fb374e0bbf0 Mon Sep 17 00:00:00 2001
2From: Igor Gnatenko <i.gnatenko.brain@gmail.com>
3Date: Sun, 20 Mar 2016 13:27:04 +0100
4Subject: [PATCH 4/7] hardware gloat
5Organization: O.S. Systems Software LTDA.
6
7Upstream-Status: Inappropriate [not author]
8Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
9---
10 src/gallium/drivers/llvmpipe/lp_screen.c | 7 +++++++
11 src/gallium/drivers/softpipe/sp_screen.c | 7 +++++++
12 2 files changed, 14 insertions(+)
13
14diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c
15index 3f5d0327bf..86808e016b 100644
16--- a/src/gallium/drivers/llvmpipe/lp_screen.c
17+++ b/src/gallium/drivers/llvmpipe/lp_screen.c
18@@ -449,6 +449,13 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen,
19 if (!format_desc)
20 return FALSE;
21
22+ if ((bind & PIPE_BIND_RENDER_TARGET) &&
23+ format != PIPE_FORMAT_R9G9B9E5_FLOAT &&
24+ format != PIPE_FORMAT_R11G11B10_FLOAT &&
25+ util_format_is_float(format)) {
26+ return FALSE;
27+ }
28+
29 assert(target == PIPE_BUFFER ||
30 target == PIPE_TEXTURE_1D ||
31 target == PIPE_TEXTURE_1D_ARRAY ||
32diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
33index 25f6f74f36..61629ef2ff 100644
34--- a/src/gallium/drivers/softpipe/sp_screen.c
35+++ b/src/gallium/drivers/softpipe/sp_screen.c
36@@ -397,6 +397,13 @@ softpipe_is_format_supported( struct pipe_screen *screen,
37 if (!format_desc)
38 return FALSE;
39
40+ if ((bind & PIPE_BIND_RENDER_TARGET) &&
41+ format != PIPE_FORMAT_R9G9B9E5_FLOAT &&
42+ format != PIPE_FORMAT_R11G11B10_FLOAT &&
43+ util_format_is_float(format)) {
44+ return FALSE;
45+ }
46+
47 if (sample_count > 1)
48 return FALSE;
49
50--
512.17.1
52