From cd78a7a5ff5590bdc3c118e553affd11d9438cf7 Mon Sep 17 00:00:00 2001 From: Connor Abbott Date: Tue, 21 Jul 2020 10:48:16 +0200 Subject: [PATCH] freedreno: Add INDIRECT_COUNT CP_DRAW_INDIRECT_MULTI variants These have an indirect count which is loaded from an iova, and the minimum is taken between the indirect and direct counts. Note, I also had to fix gen_header.py to deal with the extra-long names we get. Part-of: --- src/freedreno/registers/adreno_pm4.xml | 14 ++++++++++++++ src/freedreno/registers/gen_header.py | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/freedreno/registers/adreno_pm4.xml b/src/freedreno/registers/adreno_pm4.xml index b33625b7fc0..f16793be5e4 100644 --- a/src/freedreno/registers/adreno_pm4.xml +++ b/src/freedreno/registers/adreno_pm4.xml @@ -794,6 +794,8 @@ opcode: CP_LOAD_STATE4 (30) (4 dwords) + + @@ -816,6 +818,18 @@ opcode: CP_LOAD_STATE4 (30) (4 dwords) + + + + + + + + + + + + diff --git a/src/freedreno/registers/gen_header.py b/src/freedreno/registers/gen_header.py index 7e3bcd4f7d8..b8fa8cc0caa 100644 --- a/src/freedreno/registers/gen_header.py +++ b/src/freedreno/registers/gen_header.py @@ -93,7 +93,7 @@ class Field(object): def tab_to(name, value): tab_count = (68 - (len(name) & ~7)) // 8 - if tab_count == 0: + if tab_count <= 0: tab_count = 1 print(name + ('\t' * tab_count) + value) -- 2.30.2