Table of Contents
- Introduction to Kernel Development
- Understanding Linux Kernel Module Basic Concepts
- Dealing with Kernel Core Helpers
- Writing Character Device Drivers
- Understanding and Leveraging the Device Tree
- Introduction to Devices, Drivers, and Platform Abstraction
- Understanding the Concept of Platform Devices and Drivers
- Writing I2C Device Drivers
- Writing SPI Device Drivers
- Understanding the Linux Kernel Memory Allocation
- Implementing Direct Memory Access (DMA) Support
- Abstracting Memory Access
- Demystifying the Kernel IRQ Framework
- Introduction to the Linux Device Model
- Digging into the IIO Framework
- Getting the Most Out of the Pin Controller and GPIO Subsystems
- Leveraging the Linux Kernel Input Subsystem

