阅读:1041回复:1
inw(),outw()的参数问题?
在LINUX下的驱动中注册了一个IO端口(物理/线性地址,搞不清楚了,反正是ARM系列的,PORT=0X4000 0000),接着再用inw(),outw()去直接访问该PORT端口,结果在INSMOD时出现segmentation fault错误。然后用ioremap把PORT从先映射后,再调用inw(),outw(),就好了。问题:1 这个0x4000 0000是物理地址吗?
2 什么是线性地址? 3 inw(),outw()的参数到底是物理地址还是虚拟地址?我记得以前汇编就是用这些函数来直接访问IO物理地址的。 |
|
|
沙发#
发布于:2003-07-08 09:46
inw(),outw()在dos下的参数是物理地址,其在dos系统运行库中。
但在LINUX下就是在LINUX系统运行库中的函数了,参数是虚拟地址. 这个0x4000 0000当然就是虚拟地址 |
|
|