微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Linux设备驱动之I/O端口与I/O内存

Linux设备驱动之I/O端口与I/O内存

时间:10-10 来源:互联网 点击:

用实际的物理地址,否则会因为内核无法处理地址而出现oops。

2)在使用I/O指令时,可以不使用request_region和request_mem_region,而直接使用outb、ioread等指令。因为request的功能只是告诉内核端口被谁占用了,如再次request,内核会制止(资源busy)。但是不推荐这么做,这样的代码也不规范,可能会引起并发问题(很多时候我们都需要独占设备)。

3)在使用I/O指令时,所赋的地址数据有时必须通过强制类型转换为 unsigned long ,不然会有警告。

4)在include\asm-arm\arch-s3c2410\hardware.h中定义了很多io口的操作函数,有需要可以在驱动中直接使用,很方便。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top