compat: regenerate the recover table against the org q1n1
compat/adreno-recover-table.h recorded the sha256 of sme-batch12's q1n1 a16gpu_stage3.py and adreno_x2.py, so installed_fresh's recover_table_check refused a --gpu-recover reset prepare against the Snapintosh q1n1 repository (branch migrate-private, 7872398), whose files differ (adreno_x2.py moved its GPL-2.0-only tables, among them X285_NONCTXT that hw_init writes, into adreno_x2_protect.py). tools/gen-adreno-recover-table.py now also records adreno_x2_protect.py when the q1n1 checkout has it, since hw_init's non-context writes come from there. Regenerated from that q1n1, only ADRENO_RECOVER_TABLE_INPUTS changes: every replayed operation, the CP_ME_INIT words and the SECVID ops are the same. The macro is read only by the prepare check, so no monitor binary changes. tools/test-gen-adreno-recover-table.py passes against that q1n1 (it failed before). compat/adreno-ib-tables.h already records adreno_x2_protect.py, and its generator reports it fresh against the same q1n1 and the pinned Mesa.
This commit is contained in:
1 parent
5ff9d30407
commit
3a07fba3cb
2 files changed
+6
-2
No files matched your search
@@ -14,7 +14,7 @@
|
||||
*/
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
#define ADRENO_RECOVER_TABLE_INPUTS "a16gpu_stage3.py:47df054f6fd6d59b3c14be384f8ec79433bc83d3a26ecb0abaee39ca50bf2e50 adreno_x2.py:4f3cb92f67a81f693d17e298c70b3e55690c9ba48c3b9a379d8127a44f39094f"
|
||||
#define ADRENO_RECOVER_TABLE_INPUTS "a16gpu_stage3.py:0afd4df74509735e46003e5ac251fc2e42d41df57b5192d7abb2ff4258cd0041 adreno_x2.py:b3ee82f1f1dfcda4f2efafc4cd3facfd4c56b0e0275295142a93a5d8976d0caf adreno_x2_protect.py:d35d3cdf24340fd18fc7c6f1806664cd13726ec6795626f27b15ce93aa9d3cfb"
|
||||
#define ADRENO_RECOVER_TABLE_CP_FENCE_OPTIONS ""
|
||||
#define ADRENO_RECOVER_TABLE_PROTECT_GLOBAL 52u
|
||||
#define ADRENO_RT_WRITE 0u
|
||||
|
||||
@@ -137,7 +137,11 @@ def generate(tools, x290):
|
||||
S3.pipe_write(s, R.PIPE_BR, 'RB_GC_GMEM_PROTECT', gmem_protect)
|
||||
S3.aperture_clear(s)
|
||||
secvid = list(s.ops)
|
||||
sources = [tools / 'a16gpu_stage3.py', tools / 'adreno_x2.py'] + ([tools / 'a16gpu_x290.py'] if x290 else [])
|
||||
# adreno_x2.py loads X285_NONCTXT (hw_init's non-context writes, among them RB_GC_GMEM_PROTECT) from
|
||||
# adreno_x2_protect.py since q1n1 split its GPL-2.0-only tables out; a q1n1 from before the split has none.
|
||||
protect = [tools / 'adreno_x2_protect.py'] if (tools / 'adreno_x2_protect.py').exists() else []
|
||||
sources = [tools / 'a16gpu_stage3.py', tools / 'adreno_x2.py', *protect]
|
||||
sources += [tools / 'a16gpu_x290.py'] if x290 else []
|
||||
inputs = ' '.join(f'{p.name}:{hashlib.sha256(p.read_bytes()).hexdigest()}' for p in sources)
|
||||
return hw, sqe, me_init, secvid, s.skipped, inputs
|
||||
|
||||
|
||||
Reference in new issue
Block a user