第七章 LED将为我闪烁:控制发光二极管函数
读书心得测试
LED驱动的实现原理内存
尽管Linux驱动程序直接与硬件打交道,但并非Linux驱动直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。it
编写LED驱动io
测试LED驱动原理
LED驱动的移植硬件
在修改Linux驱动的源代码时,应尽可能不要修改Linux驱动的借口。程序
LED驱动是本书第一个真正和硬件打交道的Linux驱动,虽然LED驱动并不复杂,只是控制了四个LED,可是LED驱动已经包括了Linux驱动全部必要的部分。一个完整的Linux驱动主要由内部处理和与硬件交互部分组成。其中内部处理主要指Linux驱动的装载、卸载、与设备文件相关的动做处理(读写设备文件、向设备文件发送I/O命令等动做)以及业务逻辑等。与硬件交互主要指经过iowrite3二、ioread32 等函数与硬件中寄存器进行数据交互。Linux驱动在不一样平台的移植也是处理这两部分。若是在不一样Linux版本之间进行移植,主要是移植第一部分(Linux驱动的内部处理,通常Linux内核版本相差较大时,Linux内核API会有很大差异),若是在不一样硬件平台的移植,主要是移植第二部分。淡然,在一些状况下,Linux驱动的移植基本上至关于从新编写一遍Linux驱动,在这种情下,就要更好了解Linux驱动的高级技术。技术