summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2018-08-29 13:52:15 +1000
committerDave Airlie <[email protected]>2018-08-31 15:11:49 +1000
commit2c1f249f2b61be50222411bc0d41c095004232ed (patch)
tree07a3c9d364462ae0ff97a37f7ccab05dd5d5b113
parentc9f54486959716762e6818dabb0a73a8cd46df67 (diff)
ac/radeonsi: fix CIK copy max size
While adding transfer queues to radv, I started writing some tests, the first test I wrote fell over copying a buffer larger than this limit. Checked AMDVLK and found the correct limit. Cc: <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
-rw-r--r--src/amd/common/sid.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/amd/common/sid.h b/src/amd/common/sid.h
index d696c01d4dd..851a823c72a 100644
--- a/src/amd/common/sid.h
+++ b/src/amd/common/sid.h
@@ -9145,7 +9145,9 @@
#define SDMA_TS_SUB_OPCODE_GET_LOCAL_TIMESTAMP 0x1
#define SDMA_TS_SUB_OPCODE_GET_GLOBAL_TIMESTAMP 0x2
#define CIK_SDMA_PACKET_SRBM_WRITE 0xe
-#define CIK_SDMA_COPY_MAX_SIZE 0x3fffe0
+/* There is apparently an undocumented HW "feature" that
+ prevents the HW from copying past 256 bytes of (1 << 22) */
+#define CIK_SDMA_COPY_MAX_SIZE 0x3fff00
enum amd_cmp_class_flags {
S_NAN = 1 << 0, // Signaling NaN