阅读:1731回复:1
LINUX下PCI设备的初始化和映射问题
如同你可能希望的, 你不应当离开并开始抨击 I/O 端口而没有首先确认你对这些端口有唯一的权
限. 内核提供了一个注册接口以允许你的驱动来声明它需要的端口. 这个接口中的核心的函数是 request_region: #include <linux/ioport.h> struct resource *request_region(unsigned long first, unsigned long n, const char *name); 这个函数告诉内核, 你要使用 n 个端口, 从 first 开始. name 参数应当是你的设备的名子. 如果分配成 功返回值是非 NULL. 如果你从 request_region 得到 NULL, 你将无法使用需要的端口. 在WINDOWS下用DS写WDM PCI驱动,怎么没听说要分配端口,就是用一个KMEMORY,KIORANG 就实现了,内存,IO映射,而且上电时系统自动加载EPPROM的值来初始化PCI设备, 在LINUX下怎么初始化PCI设备啊,还要EEPROM吗,怎么知道一个PCI设备是映射到了那个地址空间 |
|
沙发#
发布于:2008-06-26 14:56
用户被禁言,该主题自动屏蔽! |
|