diff options
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.patch | 54 |
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 00000000..aa98a200 --- /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 @@ | |||
1 | Upstream-Status: Backport (from git://anongit.freedesktop.org/vaapi/intel-driver with commit id 4307780b648245aba4ff338dcfe0172dec2e12e9) | ||
2 | Signed-off-by: Azril Ahmad <mohd.azril.ahmad@intel.com> | ||
3 | |||
4 | |||
5 | From dff0614a65693bdfbcf8a46ccfb52f036647bb93 Mon Sep 17 00:00:00 2001 | ||
6 | From: "Xiang, Haihao" <haihao.xiang@intel.com> | ||
7 | Date: Tue, 27 Jan 2015 11:09:02 +0800 | ||
8 | Subject: [PATCH 06/10] Use VMask instead of DMask in 3DSTATE_PS on GEN8+ | ||
9 | |||
10 | Mesa 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 | |||
15 | To avoid potential issue, use VMask in libva too. | ||
16 | |||
17 | Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com> | ||
18 | Reviewed-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 | |||
24 | diff --git a/src/gen8_render.c b/src/gen8_render.c | ||
25 | index 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); | ||
38 | diff --git a/src/gen9_render.c b/src/gen9_render.c | ||
39 | index 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 | -- | ||
53 | 2.1.0 | ||
54 | |||