Linux Device Driver Development (Paperback)
內容描述
Key Features
Learn to develop customized Linux device drivers
Learn core concepts of device drivers such as memory management, kernel caching and so on.
Practical experience on embedded side of Linux
Book Description
Linux kernel is a complex, portable, modular and widely used piece of software, running on around 80% of servers and embedded systems in more than half of the devices throughout the world. Device drivers play a critical role in the context of how well a Linux system performs. As Linux has turned out to be one of the most popular operating systems used, the interest in developing your own device drivers is also increasing steadily.
This book will initially cover a chapter which will help you understand the basics of driver development and help you get started with device drivers and its development environment. This book will cover modules based on various Linux subsystems such as memory management, RTC, IIO, Clock Framework and so on. The book will also cover practical approach on Direct memory access, Kernel memory management, and kernel caching systems as well.
By the end of this book, you will be comfortable with the concept of device driver development and will be in a position to write any device driver from scratch using the latest kernel version
What you will learn
Use kernel facilities to develop powerful drivers
Develop drivers for widely used I2C and SPI buses and use regmap API
Write and support devicetree from within your drivers
Program advanced drivers for network and frame buffer devices
Enhance your skills with Clock and PWM frameworks
Develop measurement system drivers with IIO framework
Get the best from memory management and DMA subsystem
Access and manage GPIO subsystem and develop GPIO controller drivers