Book Description
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
Table of Contents
Chapter 1. Introduction To Kernel Development
Chapter 2. Device Driver Basis
Chapter 3. Kernel Facilities And Helper Functions
Chapter 4. Character Device Drivers
Chapter 5. Platform Device Drivers
Chapter 6. The Concept Of Device Tree
Chapter 7. I2C Client Drivers
Chapter 8. Spi Device Drivers
Chapter 9. Regmap Api – A Register Map Abstraction
Chapter 10. Iio Framework
Chapter 11. Kernel Memory Management
Chapter 12. Dma – Direct Memory Access
Chapter 13. Linux Device Model
Chapter 14. Pin Control And Gpio Subsystem
Chapter 15. Gpio Controller Drivers – Gpio_Chip
Chapter 16. Advanced Irq Management
Chapter 17. Input Devices Drivers
Chapter 18. Rtc Drivers
Chapter 19. Pwm Drivers
Chapter 20. Regulator Framework
Chapter 21. Framebuffer Drivers
Chapter 22. Network Interface Card Drivers
中文:
书名:Linux Device Drivers Development
Key Features
- 学习开发定制的Linux设备驱动程序
- 学习设备驱动程序的核心概念,如内存管理、内核缓存等。
- Practical experience on embedded side of Linux
Book Description
Linux内核是一个复杂的、可移植的、模块化的和广泛使用的软件,在世界上超过一半的设备上运行在大约80%的服务器和嵌入式系统上。设备驱动程序对Linux系统的运行状况起着至关重要的作用。随着Linux被证明是最受欢迎的操作系统之一,开发您自己的设备驱动程序的兴趣也在稳步增长。
本书最初将涵盖一个章节,帮助您了解驱动程序开发的基础知识,并帮助您开始使用设备驱动程序及其开发环境。本书将介绍基于各种Linux子系统的模块,如内存管理、RTC、IIO、时钟框架等。这本书还将涵盖直接内存访问、内核内存管理和内核缓存系统的实用方法。
在本书结束时,您将熟悉设备驱动程序开发的概念,并能够使用最新的内核版本从头开始编写任何设备驱动程序
你将学到什么
- 使用内核工具开发功能强大的驱动程序
- 为广泛使用的I2C和SPI总线开发驱动程序,并使用regmap API
- 从您的驱动程序中编写和支持设备树
- 为网络和帧缓冲设备编写高级驱动程序
- 通过时钟和脉宽调制框架增强您的技能
- 用IIO框架开发测量系统驱动程序
- 充分利用内存管理和DMA子系统
- 访问和管理GPIO子系统并开发GPIO控制器驱动程序
Table of Contents
第1章内核开发简介
第2章.设备驱动程序基础
第3章.内核工具和帮助器函数
第4章字符设备驱动程序
第5章平台设备驱动程序
第6章.设备树的概念
第7章.I2C客户端驱动程序
第8章.SPI设备驱动程序
Chapter 9. Regmap Api – A Register Map Abstraction
第10章IIO框架
第11章.内核内存管理
第12章.DMA-直接存储器访问
第13章.Linux设备模型
第14章.引脚控制和GPIO子系统
第15章.GPIO控制器驱动程序-GPIO芯片
第16章:高级IRQ管理
Chapter 17. Input Devices Drivers
第十八章。
第19章.PWM驱动器
第20章.调节器框架
第二十一章。帧缓冲区驱动程序
第二十二章。网卡驱动程序
评论前必须登录!
注册