《嵌入式处理器的 Linux 驱动程序开发 - 第二版:学习使用内核 4.9 LTS 开发 Linux 嵌入式驱动程序》

作者:

日期:2022-02-11

出版:

  • 211
  • 0
  • 0

作品总结

《嵌入式处理器的 Linux 驱动程序开发 - 第二版:学习使用内核 4.9 LTS 开发 Linux 嵌入式驱动程序》


《嵌入式处理器的 Linux 驱动程序开发 - 第二版:学习使用内核 4.9 LTS 开发 Linux 嵌入式驱动程序》,嵌入式处理器的Linux驱动程序开发-第二版-

嵌入式 Linux 的灵活性、为嵌入式计算设计的强大、节能处理器的可用性以及新处理器的低成本正在鼓励许多工业公司提出基于嵌入式处理器的新开发。本书将教你如何为 Device Tree 嵌入式 Linux 系统开发设备驱动程序。您将学习如何编写不同类型的 Linux 驱动程序,以及与内核和用户空间交互的适当应用程序接口 (API) 和方法。

这本书旨在实用,但也提供了重要的理论基础。近三十个驱动程序被编写并移植到三个不同的处理器。您可以在 NXP i.MX7D、Microchip SAMA5D2 和 Broadcom BCM2837 处理器之间进行选择来开发和测试驱动程序,本书的实践实验室部分详细介绍了驱动程序的实现。在开始阅读之前,我鼓励您在可以访问某些 GPIO 以及至少一个 SPI 和 I2C 控制器时购买其中一个处理器板。用于实现驱动程序的板之一是著名的 Raspberry PI 3 Model B 板。

您将学习如何开发驱动程序,从最简单的不与任何外部硬件交互的驱动程序,到管理不同类型设备的驱动程序:加速度计、DAC、ADC、RGB LED、多显示器 LED 控制器、I/O 扩展器、按钮和 USB HID 设备。您还将开发 DMA 驱动程序、管理中断的驱动程序以及在处理器的内部寄存器上写入/读取以控制外部设备的驱动程序。为了简化其中一些驱动程序的开发,您将使用不同类型的框架:杂项框架、LED 框架、UIO 框架、输入框架和 IIO 工业框架。此第二版已更新至 v4.9 LTS 内核。

自2019年3月下旬起,本书正文新增一章。这是:第 13 章,“Linux USB 设备驱动程序”。这个新章节可以从本书的 Github 下载。在第 13 章中,您将学习如何创建一个功能齐全的 USB HID 设备,该设备将向 Linux USB 主机设备发送/接收数据;本章将开发几个定制的 Linux USB 设备驱动程序。

自 2020 年 11 月结束以来,本书中包含的 Linux 驱动程序已被改编为在使用 Linux 内核 v5.4 LTS 的 Raspberry Pi 4 Model B 和 Raspberry Pi 3 Model B 板上运行。 Linux 驱动程序可以从本书的 Github 下载。

自 2020 年 3 月开始,本书中包含的 Linux 驱动程序已适用于在使用 Linux 内核 v4.19 LTS 的 NXP i.MX 7Dual MCIMX7SABRE 板上运行。 NXP i.MX 7Dual Linux 驱动程序可以从本书的 Github 下载。

自 2020 年 7 月下旬以来,本书中包含的 Linux 驱动程序已被改编为在使用 Linux 内核 v5.4 LTS 的 ST STM32MP1 处理器上运行。 ST STM32MP1 Linux 驱动程序包含在本书的 Github 中。

自 2020 年 10 月开始,在第 11 章和第 7 章的实验室中增加了两个新实验室,以强化创建具有 INT 功能的 IIO 驱动程序和 GPIO 控制器驱动程序的概念。这些新的驱动程序包含在本书的 Github 中。

注意:可以从本书的 Github 下载“Practical Labs Hardware”文档。本文档详细介绍了每章中用于开发实验室的所有硬件。

0条评论