From ed6394fda707c3f07d3daf8387bbe3d12319ee76 Mon Sep 17 00:00:00 2001 From: Danylo Piliaiev Date: Wed, 5 Jul 2023 15:49:19 +0200 Subject: [PATCH] freedreno/regs: Document CP_MEM_TO_SCRATCH_MEM Best guess is that it is a faster way to fetch all the VSC_STATE registers and keep them in a local scratch memory instead of fetching every time when skipping IBs. Signed-off-by: Danylo Piliaiev Part-of: --- src/freedreno/registers/adreno/adreno_pm4.xml | 28 ++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/freedreno/registers/adreno/adreno_pm4.xml b/src/freedreno/registers/adreno/adreno_pm4.xml index 0859d10..765dd9e 100644 --- a/src/freedreno/registers/adreno/adreno_pm4.xml +++ b/src/freedreno/registers/adreno/adreno_pm4.xml @@ -624,7 +624,12 @@ xsi:schemaLocation="http://nouveau.freedesktop.org/ rules-ng.xsd"> - + + Write to a scratch memory that is read by CP_REG_TEST with + SOURCE_SCRATCH_MEM set. It's not the same scratch as scratch registers. + However it uses the same memory space. + + Executes an array of fixed-size command buffers where each @@ -1975,6 +1980,27 @@ opcode: CP_LOAD_STATE4 (30) (4 dwords) + + + Best guess is that it is a faster way to fetch all the VSC_STATE registers + and keep them in a local scratch memory instead of fetching every time + when skipping IBs. + + + + + + Scratch memory size is 48 dwords` + + + + + + + + + + -- 2.7.4