重新开始,做回自我,爱拼的男人最牛!
分类: 嵌入式
2010-01-19 15:28:04
static __iomem *base_addr;
然后在函数中使用 base_addr=ioremap(0x59000000,0x20);
这里把我的错误经历贴出,希望大家能够避免:
1.参考GPIO的虚拟地址规律:S3C2410_VA_GPIO=(S3C2410_PA_GPIO-S3C2410_PA_UART)+S3C2410_VA_UART;所以我就想当然,把其他的要使用的虚拟地址直接在GPIO的虚拟地址上加上两者物理地址的差,结果在插入模块的时候总出上面的错误。
2.用手工推算某寄存器的虚拟地址,然后直接赋值,这样带来的错误还是一样。
3.一定要区分物理地址与虚拟地址的概念。