Book description
“Probably the most wide ranging and complete Linux device driver book I’ve read.”
--Alan Cox, Linux Guru and Key Kernel Developer
“Very comprehensive and detailed, covering almost every single Linux device driver type.”
--Theodore Ts’o, First Linux Kernel Developer in North America and Chief Platform Strategist of the Linux Foundation
The Most Practical Guide to Writing Linux Device Drivers
Linux now offers an exceptionally robust environment for driver development: with today’s kernels, what once required years of development time can be accomplished in days. In this practical, example-driven book, one of the world’s most experienced Linux driver developers systematically demonstrates how to develop reliable Linux drivers for virtually any device. Essential Linux Device Drivers is for any programmer with a working knowledge of operating systems and C, including programmers who have never written drivers before. Sreekrishnan Venkateswaran focuses on the essentials, bringing together all the concepts and techniques you need, while avoiding topics that only matter in highly specialized situations. Venkateswaran begins by reviewing the Linux 2.6 kernel capabilities that are most relevant to driver developers. He introduces simple device classes; then turns to serial buses such as I2C and SPI; external buses such as PCMCIA, PCI, and USB; video, audio, block, network, and wireless device drivers; user-space drivers; and drivers for embedded Linux–one of today’s fastest growing areas of Linux development. For each, Venkateswaran explains the technology, inspects relevant kernel source files, and walks through developing a complete example.
• Addresses drivers discussed in no other book, including drivers for I2C, video, sound, PCMCIA, and different types of flash memory
• Demystifies essential kernel services and facilities, including kernel threads and helper interfaces
• Teaches polling, asynchronous notification, and I/O control
• Introduces the Inter-Integrated Circuit Protocol for embedded Linux drivers
• Covers multimedia device drivers using the Linux-Video subsystem and Linux-Audio framework
• Shows how Linux implements support for wireless technologies such as Bluetooth, Infrared, WiFi, and cellular networking
• Describes the entire driver development lifecycle, through debugging and maintenance
• Includes reference appendixes covering Linux assembly, BIOS calls, and Seq files
Table of contents
- Title Page
- Prentice Hall Open Source Software Development Series
- Copyright Page
- Dedication
- Contents
- Foreword
- Preface
- Acknowledgments
- About the Author
- Chapter 1. Introduction
- Chapter 2. A Peek Inside the Kernel
- Chapter 3. Kernel Facilities
- Chapter 4. Laying the Groundwork
- Chapter 5. Character Drivers
- Chapter 6. Serial Drivers
- Chapter 7. Input Drivers
- Chapter 8. The Inter-Integrated Circuit Protocol
- Chapter 9. PCMCIA and Compact Flash
- Chapter 10. Peripheral Component Interconnect
- Chapter 11. Universal Serial Bus
- Chapter 12. Video Drivers
- Chapter 13. Audio Drivers
- Chapter 14. Block Drivers
- Chapter 15. Network Interface Cards
- Chapter 16. Linux Without Wires
- Chapter 17. Memory Technology Devices
- Chapter 18. Embedding Linux
- Chapter 19. Drivers in User Space
- Chapter 20. More Devices and Drivers
- Chapter 21. Debugging Device Drivers
- Chapter 22. Maintenance and Delivery
- Chapter 23. Shutting Down
- Appendix A. Linux Assembly
- Appendix B. Linux and the BIOS
- Appendix C. Seq Files
- Index
- Footnotes
Product information
- Title: Essential Linux Device Drivers
- Author(s):
- Release date: March 2008
- Publisher(s): Pearson
- ISBN: 9780132396554
You might also like
book
Linux Device Drivers, Second Edition
This book is for anyone who wants to support computer peripherals under the Linux operating system …
book
Linux Device Drivers Development
Learn to develop customized device drivers for your embedded Linux system About This Book Learn to …
book
Mastering Linux Device Driver Development
Master the art of developing customized device drivers for your embedded Linux systems Key Features Stay …
book
Linux Device Driver Development - Second Edition
Get up to speed with the most important concepts in driver development and focus on common …