Linux Device Drivers Development: Develop customized drivers for embedded Linux

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Key Features • Learn to develop customized Linux device drivers • Learn the core concepts of device drivers such as memory management, kernel caching, advanced IRQ management, and so on. • Practical experience on the 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 devices throughout the world. Device drivers play a critical role in 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 proprietary device drivers is also increasing steadily. This book will initially help you understand the basics of drivers as well as prepare for the long journey through the Linux kernel. This book then covers drivers development based on various Linux subsystems such as memory management, PWM, RTC, IIO, IRQ management, and so on. The book also offers a practical approach to direct memory access and network device drivers. 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 (v4.13 at the time of writing this book). What you will learn • Use kernel facilities to develop powerful drivers • Develop drivers for widely used I2C and SPI devices and use the regmap API • Write and support devicetree from within your drivers • Program advanced drivers for network and frame buffer devices • Delve into the Linux irqdomain API and write interrupt controller drivers • Enhance your skills with regulator and PWM frameworks • Develop measurement system drivers with IIO framework • Get the best from memory management and the DMA subsystem • Access and manage GPIO subsystems and develop GPIO controller drivers

Author(s): John Madieu
Edition: 1
Publisher: Packt Publishing
Year: 2017

Language: English
Commentary: True PDF
Pages: 586
Tags: Linux; Linux Kernel; Memory Management; GPIO; SPI Bus; Interrupts; I²C Bus; Device Drivers

1. Introduction to Kernel Development
2. Device Driver Basis
3. Kernel Facilities and Helper Functions
4. Character Device Drivers
5. Platform Device Drivers
6. The Concept of Device Tree
7. I²C Client Drivers
8. SPI Device Drivers
9. Regmap API - A Register Map Abstraction
10. IIO Framework
11. Kernel Memory Management
12. DMA Direct Memory Access
13. Linux Device Model
14. Pin Control and GPIO Subsystem
15. GPIO Controller Drivers gpio_chip
16. Advanced IRQ Management
17. Input Devices Drivers
18. RTC Drivers
19. PWM Drivers
20. Regulator Framework