标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
Makefile.am, Makefile.in, Makefile文件之间关系 | 2315 | 1 | 0 | 2010-07-03 | |
Select函数实现原理分析 | 1288 | 0 | 0 | 2009-11-07 | |
Linux 编程之生成静态连接库 | 1098 | 0 | 0 | 2009-09-15 | |
缓存中数据的写和读模型 | 1294 | 0 | 0 | 2009-08-27 | |
Linux下线程的挂起和恢复 | 6919 | 0 | 3 | 2009-08-27 | |
linux文件设备与I/O:read/write函数 与 阻塞 Block | 13956 | 0 | 0 | 2009-08-27 | |
Linux进程间通讯(一)管道 | 952 | 0 | 0 | 2009-08-27 | |
linux中的signal函数 | 9311 | 0 | 6 | 2009-08-10 | |
几篇关于ioctl()的文章 | 1575 | 0 | 0 | 2009-07-24 | |
Posix线程编程指南(5)——杂项 | 608 | 0 | 0 | 2009-07-17 | |
Posix线程编程指南(4)——线程终止 | 834 | 0 | 0 | 2009-07-17 | |
Posix线程编程指南(3)——线程同步 | 635 | 0 | 1 | 2009-07-17 | |
Posix线程编程指南(2)——线程私有数据 | 654 | 0 | 2 | 2009-07-17 | |
linux下精密定时器 | 4158 | 1 | 1 | 2009-07-15 | |
Posix线程编程指南(1) | 512 | 0 | 0 | 2009-07-09 | |
Linux下c开发 之 线程通信 | 752 | 0 | 0 | 2009-07-09 | |
LInux高级编程 - 线程(Threads) | 970 | 0 | 0 | 2009-07-09 | |
自己通过线程实现的简易定时器(Timer) | 1141 | 0 | 0 | 2009-07-08 | |
linux上定时函数 setitimer 的使用介绍 | 1036 | 0 | 0 | 2009-07-06 | |
linux下定时器的使用 -- alarm() & setitimer() | 850 | 0 | 0 | 2009-07-06 |
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