Mesa (master): ac/radeonsi: fix CIK copy max size

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Aug 31 05:12:04 UTC 2018


Module: Mesa
Branch: master
Commit: 2c1f249f2b61be50222411bc0d41c095004232ed
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2c1f249f2b61be50222411bc0d41c095004232ed

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Aug 29 13:52:15 2018 +1000

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: <mesa-stable at lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/amd/common/sid.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/amd/common/sid.h b/src/amd/common/sid.h
index d696c01d4d..851a823c72 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




More information about the mesa-commit mailing list