标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
64位arm-linux-gcc使用 | 11820 | 0 | 0 | 2011-03-27 | |
回头看看从前写的代码 | 1753 | 1 | 0 | 2010-09-06 | |
fc11下fcitx安装小记 | 2778 | 0 | 0 | 2010-03-31 | |
换ubuntu后的一点设置 | 1348 | 0 | 0 | 2009-12-11 | |
MiniGUI-1.6.10--主机开发环境的搭建 | 2207 | 0 | 0 | 2009-10-26 | |
code工具学习-gcc | 1145 | 0 | 0 | 2009-09-21 | |
fedora11中的ibus五笔输入法 | 2629 | 0 | 0 | 2009-06-15 | |
Fedora 10安装飞信、DC++ | 1384 | 0 | 0 | 2009-05-25 | |
linux使用出错集锦二 | 1227 | 0 | 0 | 2009-05-08 | |
yum源的配置 | 857 | 0 | 0 | 2009-03-09 |
config20102009-11-19 19:42
外设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