rponeawa 6fa7bae2a5 feat(diagnostics): keep Turnip's GMEM swap trace in the GPU trace
Accept Turnip passes (36), transfers between tile memory and memory
(37) and pass attachments (44) through the trace method and keep them in
the ring. Turnip sends them only from the render server with
SHENG_GPU_TRACE.
6fa7bae2a5 · 2026-11-03 15:11:00 +08:00
135 Commits
…
…

Adreno740

A740 kernel GPU driver.

The implementation covers A740 on SM8550. GPU commands and scanout copy have been verified on sheng. Platform inputs provide firmware, power policy, and memory resources.

Two priority rings preserve queue FIFO and per-ring page tables. Context switching uses the executed-table snapshot, GMEM save/restore and a preemption postamble. The host scheduling check covers packet sequencing, priority changes and fence-history rollover; board policy selects the mode.

Build and interface details: documentation. Component sources and dependencies: catalog.

Frame diagnostics

sheng-gpu-trace=1 enables the kernel GPU ring: submission, retirement, display arrival, display fence and latch, build identity, and the render server's render, encode and completion thread identities, 65536 records. Repeated pending display queries are coalesced. See GPU frame diagnostics for fields and decoding.

NativeGpuPerfCounters.h defines the opt-in 19-counter A7XX BR plan used by sheng diagnostics. Capture records selector readback, unstable 64-bit reads, reset masks and preemption epochs. The host check verifies the register plan against pinned Mesa XML.

S
Description
No description provided
Readme MIT 2.7 MiB
Languages
C++ 96.4%
C 3.6%