The shaders/blit.g7a has weird artefacts (random pixel kill) when
drawing with to an odd destination coordinate. Rather than debug the
issue with the assembler, replace the kernel with the one used by SNA
for simple copies.

Reported-by: Ville Syrjälä <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
---
 lib/rendercopy_gen8.c | 10 ++++------
 lib/rendercopy_gen9.c | 10 ++++------
 2 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/lib/rendercopy_gen8.c b/lib/rendercopy_gen8.c
index 2b5d9b52e..2e590e391 100644
--- a/lib/rendercopy_gen8.c
+++ b/lib/rendercopy_gen8.c
@@ -51,12 +51,10 @@ struct {
 /* see shaders/ps/blit.g7a */
 static const uint32_t ps_kernel[][4] = {
 #if 1
-   { 0x0060005a, 0x21403ae8, 0x3a0000c0, 0x008d0040 },
-   { 0x0060005a, 0x21603ae8, 0x3a0000c0, 0x008d0080 },
-   { 0x0060005a, 0x21803ae8, 0x3a0000d0, 0x008d0040 },
-   { 0x0060005a, 0x21a03ae8, 0x3a0000d0, 0x008d0080 },
-   { 0x02800031, 0x2e0022e8, 0x0e000140, 0x08840001 },
-   { 0x05800031, 0x200022e0, 0x0e000e00, 0x90031000 },
+       { 0x0080005a, 0x2f403ae8, 0x3a0000c0, 0x008d0040 },
+       { 0x0080005a, 0x2f803ae8, 0x3a0000d0, 0x008d0040 },
+       { 0x02800031, 0x2e203a48, 0x0e8d0f40, 0x08840001 },
+       { 0x05800031, 0x20003a40, 0x0e8d0e20, 0x90031000 },
 #else
    /* Write all -1 */
    { 0x00600001, 0x2e000608, 0x00000000, 0x3f800000 },
diff --git a/lib/rendercopy_gen9.c b/lib/rendercopy_gen9.c
index 0157ced9c..79e312409 100644
--- a/lib/rendercopy_gen9.c
+++ b/lib/rendercopy_gen9.c
@@ -52,12 +52,10 @@ struct {
 /* see shaders/ps/blit.g7a */
 static const uint32_t ps_kernel[][4] = {
 #if 1
-   { 0x0060005a, 0x21403ae8, 0x3a0000c0, 0x008d0040 },
-   { 0x0060005a, 0x21603ae8, 0x3a0000c0, 0x008d0080 },
-   { 0x0060005a, 0x21803ae8, 0x3a0000d0, 0x008d0040 },
-   { 0x0060005a, 0x21a03ae8, 0x3a0000d0, 0x008d0080 },
-   { 0x02800031, 0x2e0022e8, 0x0e000140, 0x08840001 },
-   { 0x05800031, 0x200022e0, 0x0e000e00, 0x90031000 },
+       { 0x0080005a, 0x2f403ae8, 0x3a0000c0, 0x008d0040 },
+       { 0x0080005a, 0x2f803ae8, 0x3a0000d0, 0x008d0040 },
+       { 0x02800031, 0x2e203a48, 0x0e8d0f40, 0x08840001 },
+       { 0x05800031, 0x20003a40, 0x0e8d0e20, 0x90031000 },
 #else
    /* Write all -1 */
    { 0x00600001, 0x2e000608, 0x00000000, 0x3f800000 },
-- 
2.18.0

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to