Linux设备驱动开发
作者简介
John Madieu是嵌入式Linux和内核研发工程师,居住在法国巴黎。他主要为自动化、运输、医疗、能源和军事等领域的公司开发驱动程序和开发板支持包(Board Support Packages,BSP)。他目前就职于一家法国公司EXPEMB,该公司是基于模块化计算机的电子开发板设计和嵌入式Linux解决方案的先驱。同时,他还是一位开源和嵌入式系统爱好者,坚信通过知识分享能够学到更多的知识。
内容简介
1.本书将帮助您了解驱动程序的基础知识,并为漫长的Linux内核之旅做好准备。 2.本书介绍了基于各种Linux子系统的驱动程序开发,例如内存管理、PWM、RTC、IIO和IRQ管理。 3.本书还提供了有关直接内存访问和网络设备驱动程序的实用方法。 4.通过阅读本书,您将掌握设备驱动程序开发的概念,并将能够使用最新的内核版本(编写本书时为v4.13)从头编写任何设备驱动程序。 5.提供源代码。 Linux内核是一个复杂、可移植、模块化且使用广泛的软件,其可在设备的服务器和嵌入式系统上运行。设备驱动程序在Linux系统的性能方面起着至关重要的作用。由于Linux已经成为非常受欢迎的操作系统,因此开发专有设备驱动程序的需求也在稳步增长。 您将学到以下内容: ·使用内核工具开发功能强大的驱动程序; ·为I2C和SPI设备开发驱动程序,并使用Regmap API; ·在驱动程序内编写和支持设备树; ·为网络和帧缓冲设备编写高级驱动程序; ·深入研究Linux irqdomain API并编写中断控制器驱动程序; ·通过调节器和PWM框架增强技能; ·使用IIO框架开发测量系统驱动程序; ·充分利用内存管理和DMA子系统; ·访问和管理GPIO子系统并开发GPIO控制器驱动程序。