summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/gecko.py
diff options
context:
space:
mode:
authorAlessio Belle <alessio.belle@imgtec.com>2025-04-10 12:55:06 +0300
committerMatt Coster <matt.coster@imgtec.com>2025-04-15 14:21:50 +0300
commit96822d38ff574433e06a2ec0f88ebc50d44c8eaa (patch)
tree972125dec5f17c626dfb2877f444ed0977bc1ce7 /tools/perf/scripts/python/gecko.py
parentbdced61365b4eca917b6df37d3d47c2f7d096d87 (diff)
downloadlinux-96822d38ff574433e06a2ec0f88ebc50d44c8eaa.tar.xz
drm/imagination: Handle Rogue safety event IRQs
Extend interrupt handling logic to check for safety event IRQs, then clear and handle them in the IRQ handler thread. Safety events need to be checked and cleared with a different set of GPU registers than those the IRQ handler has been using so far. Only two safety events need to be handled on the host: FW fault (ECC error correction or detection) and device watchdog timeout. Handling right now simply consists of clearing any error and logging the event. If either of these events results in an unrecoverable GPU or FW, the driver will eventually attempt to recover from it e.g. via pvr_power_reset(). Note that Rogue GPUs may send interrupts to the host for all types of safety events, not just the two above. For events not handled by the host, clearing the associated interrupt is sufficient. Signed-off-by: Alessio Belle <alessio.belle@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Link: https://lore.kernel.org/r/20250410-sets-bxs-4-64-patch-v1-v6-7-eda620c5865f@imgtec.com Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Diffstat (limited to 'tools/perf/scripts/python/gecko.py')
0 files changed, 0 insertions, 0 deletions