Mastering Linux Device Driver Development: Write custom device drivers to support computer peripherals in Linux operating systems
by John Madieu
Print Length 页数: 646 pages
Edition 版次: 1
Language 语言: English
Publisher finelybook 出版社: Packt Publishing
Released: 2021-01-08
ISBN-10: 178934204X
ISBN-13: 9781789342048
Book Description
By finelybook
Master the art of developing customized device drivers for your embedded Linux systems
Key Features
Stay up to date with the Linux PCI,ASoC,and V4L2 subsystems and write device drivers for them
Get to grips with the Linux kernel power management infrastructure
Adopt a practical approach to customizing your Linux environment using best practices
Book Description
By finelybook
Linux is one of the fastest-growing operating systems around the world,and in the last few years,the Linux kernel has evolved significantly to support a wide variety of embedded devices with its improved subsystems and a range of new features. With this book,you’ll find out how you can enhance your skills to write custom device drivers for your Linux operating system.
Mastering Linux Device Driver Development provides complete coverage of kernel topics,including video and audio frameworks,that usually go unaddressed. You’ll work with some of the most complex and impactful Linux kernel frameworks,such as PCI,ALSA for SoC,and Video4Linux2,and discover expert tips and best practices along the way. In addition to this,you’ll understand how to make the most of frameworks such as NVMEM and Watchdog. Once you’ve got to grips with Linux kernel helpers,you’ll advance to working with special device types such as Multi-Function Devices (MFD) followed by video and audio device drivers.
By the end of this book,you’ll be able to write feature-rich device drivers and integrate them with some of the most complex Linux kernel frameworks,including V4L2 and ALSA for SoC.
What you will learn
Explore and adopt Linux kernel helpers for locking,work deferral,and interrupt management
Understand the Regmap subsystem to manage memory accesses and work with the IRQ subsystem
Get to grips with the PCI subsystem and write reliable drivers for PCI devices
Write full multimedia device drivers using ALSA SoC and the V4L2 framework
Build power-aware device drivers using the kernel power management framework
Find out how to get the most out of miscellaneous kernel subsystems such as NVMEM and Watchdog
Who this book is for
This book is for embedded developers,Linux system engineers,and system programmers who want to explore Linux kernel frameworks and subsystems. C programming skills and a basic understanding of driver development are necessary to get started with this book.
Table of Contents
Linux Kernel Concepts for Embedded Developers
Leveraging the Regmap API and Simplifying the Code
Delving into the MFD Subsystem and Syscon API
Storming the Common Clock Framework
ALSA SoC Framework – Leveraging Codec and Platform Class Drivers
ALSA SoC Framework – Delving into the Machine Class Drivers
Demystifying V4L2 and Video Capture Device Drivers
Integrating with V4L2 Async and Media Controller Frameworks
Leveraging V4L2 API from the User Space
Linux Kernel Power Management
Writing PCI Device Drivers
Leveraging the NVMEM Framework
Watchdog Device Drivers
Linux Kernel Debugging Tips and Best Practices