Skip to content

pan/decode: Add support for decoding CSF

Alyssa Rosenzweig requested to merge alyssa/mesa:pan/v10-decode into main

Add support to pandecode for Mali architecture v10, featuring the new command stream frontend (CSF). This replaces the "job chain" with a new Command Execution Unit (CEU) that runs a domain-specific assembly language. That requires us to refactor pandecode substantially, splitting out JM-only code from shared JM/CSF common code, and adding new CSF-only decode routines to disassemble and interpret CSF command streams and pretty-printing the data structures hit.

This is of course impossible to do properly, since the CEU is pretty easily Turing-complete and hence subject to the halting problem. But we implement some simple heuristics to follow jumps that are just good enough for the simple command streams emitting by both the DDK and Panfrost.

Signed-off-by: Alyssa Rosenzweig alyssa@collabora.com

Merge request reports