summaryrefslogtreecommitdiffstats
path: root/common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch')
-rw-r--r--common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch54
1 files changed, 54 insertions, 0 deletions
diff --git a/common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch b/common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch
new file mode 100644
index 0000000..aa98a20
--- /dev/null
+++ b/common/recipes-multimedia/libva/libva-intel-driver/Use-VMask-instead-of-DMask-in-3DSTATE_PS-on-GEN8.patch
@@ -0,0 +1,54 @@
1Upstream-Status: Backport (from git://anongit.freedesktop.org/vaapi/intel-driver with commit id 4307780b648245aba4ff338dcfe0172dec2e12e9)
2Signed-off-by: Azril Ahmad <mohd.azril.ahmad@intel.com>
3
4
5From dff0614a65693bdfbcf8a46ccfb52f036647bb93 Mon Sep 17 00:00:00 2001
6From: "Xiang, Haihao" <haihao.xiang@intel.com>
7Date: Tue, 27 Jan 2015 11:09:02 +0800
8Subject: [PATCH 06/10] Use VMask instead of DMask in 3DSTATE_PS on GEN8+
9
10Mesa uses VMask instead of DMask in 3DSTATE_PS.
11 "Initialize the execution mask with VMask. Otherwise, derivatives are
12 incorrect for subspans where some of the pixels are unlit. We believe
13 the bit just didn't take effect in previous generations."
14
15To avoid potential issue, use VMask in libva too.
16
17Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
18Reviewed-by: Sean V Kelley <sean.v.kelley@intel.com>
19---
20 src/gen8_render.c | 3 ++-
21 src/gen9_render.c | 3 ++-
22 2 files changed, 4 insertions(+), 2 deletions(-)
23
24diff --git a/src/gen8_render.c b/src/gen8_render.c
25index 8a8012d..65a66c5 100644
26--- a/src/gen8_render.c
27+++ b/src/gen8_render.c
28@@ -1447,7 +1447,8 @@ gen8_emit_wm_state(VADriverContextP ctx, int kernel)
29 /* DW3. PS shader flag .Binding table cnt/sample cnt */
30 OUT_BATCH(batch,
31 (1 << GEN7_PS_SAMPLER_COUNT_SHIFT) |
32- (5 << GEN7_PS_BINDING_TABLE_ENTRY_COUNT_SHIFT));
33+ (5 << GEN7_PS_BINDING_TABLE_ENTRY_COUNT_SHIFT) |
34+ GEN7_PS_VECTOR_MASK_ENABLE);
35 /* DW4-5. Scatch space */
36 OUT_BATCH(batch, 0); /* scratch space base offset */
37 OUT_BATCH(batch, 0);
38diff --git a/src/gen9_render.c b/src/gen9_render.c
39index da8950e..89935f2 100644
40--- a/src/gen9_render.c
41+++ b/src/gen9_render.c
42@@ -1449,7 +1449,8 @@ gen9_emit_wm_state(VADriverContextP ctx, int kernel)
43 /* DW3. PS shader flag .Binding table cnt/sample cnt */
44 OUT_BATCH(batch,
45 (1 << GEN7_PS_SAMPLER_COUNT_SHIFT) |
46- (5 << GEN7_PS_BINDING_TABLE_ENTRY_COUNT_SHIFT));
47+ (5 << GEN7_PS_BINDING_TABLE_ENTRY_COUNT_SHIFT) |
48+ GEN7_PS_VECTOR_MASK_ENABLE);
49 /* DW4-5. Scatch space */
50 OUT_BATCH(batch, 0); /* scratch space base offset */
51 OUT_BATCH(batch, 0);
52--
532.1.0
54