Linux SPI Subsystem : LDD with Raspberry Pi #17

Опубликовано: 13 Май 2026
на канале: MP Coding
479
23

In this video, we explore the Linux SPI subsystem inside the Linux kernel and build a minimal SPI client driver from scratch.

Instead of jumping directly into Device Tree-based driver development, we first focus on understanding the internal architecture of SPI in Linux — how drivers are registered, how devices are matched, how probe() is triggered, and how SPI data transfers work using spi_message and spi_transfer.

To demonstrate full-duplex SPI communication, we:
Use the Raspberry Pi SPI0 controller as the master
Use an ESP32 Dev Board as the SPI slave
Manually bind and unbind the SPI device to our custom driver
Perform a full-duplex SPI transfer using spi_sync()
Observe probe() and remove() lifecycle behavior

This example is purely educational and focuses on understanding how the SPI subsystem works inside the kernel.

Github :- https://github.com/madhawapolkotuwa/l...

☕Buy me a Coffee : https://buymeacoffee.com/madhawapolb