标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
Linux:/etc/inittab文件 | 1547 | 0 | 0 | 2009-11-12 | |
NTP--网络时间协议 | 1316 | 0 | 1 | 2009-11-11 | |
如何加密/弄乱C源代码 | 1406 | 1 | 1 | 2009-11-09 | |
6个变态的C语言Hello World程序+机器码的hello world | 6508 | 0 | 1 | 2009-11-09 | |
vim使用 | 1447 | 0 | 0 | 2009-11-09 | |
Select函数实现原理分析 | 1288 | 0 | 0 | 2009-11-07 | |
软件人生之这些年做项目带新人的经验总结(转) | 1081 | 0 | 0 | 2009-11-06 | |
(转)架构师已死(转自UML软件工程组织) | 909 | 0 | 0 | 2009-11-04 | |
C语言回调函数 | 965 | 0 | 0 | 2009-11-03 | |
程序员不可不读的好书 | 1059 | 1 | 0 | 2009-11-02 | |
4行代码计算9999的阶乘 | 4316 | 12 | 0 | 2009-11-02 |
config20102009-11-19 19:37
外设fpga做的8k的memory,用arm9去读写它,在linux2.6系统下;这样做对吗?
实际地址映射到虚拟内存中,用得到的虚拟地址去读写。
地址总线:a1-a14 数据总线:d0-d15
#define FPGA_BASE_ADDR (0x18000000)//片选为nGCS3
#define BWSCON (0x48000000)
#define BANKCON3 (0x48000010)
#define IP_SIZE (0x1FFF)//13根地址线8K的物理空间
static void *bwscon,*bankcon3,*fpga_base_addr;
bwscon = ioremap_nocache(BWSCON,0x0000004);
bankcon3 = ioremap_nocache(BANKCON3,0x0000004);
fpga_base_addr = ioremap_nocache(FPGA_BASE_ADDR,IP_SIZE);
writel(readl(bwscon)|0xD000,bwscon);
writel(0x7FFC,bankcon3);
for(i=0;i