Skip the Wait: Maximizing SPI Throughput in the Linux Kernel With SPI Offloading
summary
Adds new SPI core APIs (SPI optimized messages in 6.9, SPI offload landed in 6.15) enabling an offload provider/trigger provider model that registers offload instances, matches hardware triggers, and streams samples via DMA. Implements Axis SPI engine support for Analog Devices ADC/DAC hardware, ships five ADC drivers and one DAC upstream, revives Raspberry Pi DMA proofs of concept, and demonstrates 1 MHz sampling (accurate timing, 80 MHz SPI clock) with room to push toward multi‑MHz rates.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 2:10SPI offloading importance
- 6:29Project goals and upstreaming
- 9:19Device tree bindings and design
- 12:37Results in Linux 6.15
- 18:45SPI offload API and consumer
- 22:56Testing and performance
- 27:09Future applications
- 31:42Device tree patterns
- 33:14Q&A
related talks
01h 00mGroking the Linux SPI Subsystem
46mAn Introduction to SPI-NOR Subsystem
37mBuilding a Zero-Copy DSP Offload Framework in Linux Using RPM...
36mFrom Raw To Refined: The Evolution of Raw Flash Support in Linux
39mSoftware Defined Hardware on Heterogeneous SoCs Using OpenAMP
30mZXDH DPU Adapter and It's Application
50mHotplug of Non-discoverable Hardware: Status and Future Directions
32mFrom UART to PCIe and DMA: Selecting Connectivity for Your FPGA-based Subsystem
