Linux Device Drivers, 3rd Edition
Written by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman and copyright 2005, 2001, and 1998 O’Reilly Media, this is the best single source for information about writing Linux device drivers. The PDF version of each chapter is available here - but this book is one that you should definitely own. Licensed under the Creative Commons 2.0 license (http://creativecommons.org/licenses/by-sa/2.0/).
- Title Page
- Table of Contents
- Preface
- Chapter 1 - An Introduction to Device Drivers
- Chapter 2 - Building and Running Modules
- Chapter 3 - Character Device Drivers
- Chapter 4 - Debugging Techniques
- Chapter 5 - Concurrency and Race Conditions
- Chapter 6 - Advanced Char Driver Operations
- Chapter 7 - Time, Delays, and Deferred Work
- Chapter 8 - Allocating Memory
- Chapter 9 - Communicating with Hardware
- Chapter 10 - Interrupt Handling
- Chapter 11 - Data Types in the Kernel
- Chapter 12 - PCI Drivers
- Chapter 13 - USB Drivers
- Chapter 14 - The Linux Device Model
- Chapter 15 - Memory Mapping and DMA
- Chapter 16 - Block Device Drivers
- Chapter 17 - Network Drivers
- Chapter 18 - TTY Drivers
- About the Authors
- Index (not hyperlinked)