diff options
| author | Mark Brown <broonie@kernel.org> | 2026-09-04 18:01:54 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-09-04 18:01:54 +0100 |
| commit | 4dd9f46eca2a9f8d0d6f40961df0042bb3fad569 (patch) | |
| tree | 66f096d3a17718ddcaae502e347c260491012675 /tools/perf/scripts/python/bin/stackcollapse-report | |
| parent | 5f01cb141169fe422c42279f7d502479b1ff9fd2 (diff) | |
| parent | b7b192e58f353424aa26bef5da88b2a3cb20049e (diff) | |
spi: qcom-geni: Add shutdown and panic notifier support
Praveen Talari <praveen.talari@oss.qualcomm.com> says:
On VM-based platforms, if an SPI DMA transfer is in progress when the
guest is torn down (via reboot/shutdown or a panic/crash), the DMA
engine can keep issuing transactions to IOVAs that have already been
invalidated as part of teardown. The SMMU then raises context faults,
which can affect other VMs sharing the same SMMU instance and obscure
the real root cause of the crash.
This series adds two independent quiesce paths for the GENI SPI
controller so that any in-progress transfer is stopped and the DMA
engine is left idle before the IOVA mappings are torn down:
- Patch 1 adds a platform shutdown() callback that suspends the SPI
controller (via spi_controller_suspend()) on a normal
reboot/shutdown path, where sleeping is safe.
- Patch 2 registers a panic notifier that cancels/aborts the
in-flight command and resets the TX/RX DMA FSMs (or terminates the
GPI DMA channels) when the kernel panics, covering the crash path
as well. The notifier bails out early if the device is not
runtime-active or has no active command, and otherwise uses
readl_poll_timeout_atomic() to poll status registers directly
instead of waiting on completions/IRQs like the regular
error-handling path does, since panic notifiers run with IRQs and
preemption disabled. The notifier is registered before
devm_spi_register_controller() so a panic during child device
probing is still handled.
Link: https://patch.msgid.link/20260818-add-shutdown-and-panic-notifier-for-spi-v3-0-8b62c4bc2d21@oss.qualcomm.com
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-report')
0 files changed, 0 insertions, 0 deletions
