freedreno/regs: document SS6_UBO state src
authorJonathan Marek <jonathan@marek.ca>
Thu, 2 Jul 2020 02:32:06 +0000 (22:32 -0400)
committerMarge Bot <eric+marge@anholt.net>
Mon, 6 Jul 2020 15:46:48 +0000 (15:46 +0000)
Document this new a6xx_state_src value seen in A640/A650 tess traces.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5760>

src/freedreno/registers/adreno_pm4.xml

index c39fb9c8c78d98f2d9e661818a2cfb378aef92fc..a20d547ed65338a88eda75da350b783ee6118d60 100644 (file)
@@ -610,6 +610,14 @@ opcode: CP_LOAD_STATE4 (30) (4 dwords)
                <value name="SS6_DIRECT" value="0"/>
                <value name="SS6_BINDLESS" value="1"/> <!-- TODO does this exist on a4xx/a5xx? -->
                <value name="SS6_INDIRECT" value="2"/>
+               <doc>
+               SS6_UBO used by the a6xx vulkan blob with tesselation constants
+               in this case, EXT_SRC_ADDR is (ubo_id shl 16 | offset)
+               to load constants from a UBO loaded with DST_OFF = 14 and offset 0,
+               EXT_SRC_ADDR = 0xe0000
+               (offset is a guess, should be in bytes given that maxUniformBufferRange=64k)
+               </doc>
+               <value name="SS6_UBO" value="3"/>
        </enum>
        <reg32 offset="0" name="0">
                <bitfield name="DST_OFF" low="0" high="13" type="uint"/>