哈哈,没想到现阶段的移植就是东拼西凑,多亏u-boot丰富的驱动,先辈们辛勤的劳动成果啊 ^_^
板子是GX-ARM9-2410EP增强型嵌入式教学实验系统,相当垃圾,资料缺少、不全不说,还骗人,两块Nor Flash,SST 39VF800A、INTEL E28F320,分明是1M和4M大小,偏说成2M AMD线性FLASH和8M Intel线性FLASH,我就奇怪学校怎么回买这种东西...
言归正传,下面是具体的移植过程:
1.硬件 s3c2410 ,64M SDRAM,INTEL E28F320 4M Nor Flash ,CS8900和DM9000双网卡(暂用CS8900);
2.基本配置,使用#make s3c2410_config 。这时的板已经可以启动,可以通过网卡下载内核,可以设置启动参数启动 Linux2.6了,但还不能读写Nor Flash,存储环境变量。
3.配置Nor Flash,主要是修改 board/s3c2410/flash.c 。用 Source-Navigator 或者 grep 可以找到很多带INTEL E28F320驱动的flash.c文件。这里参考http://www.sjsunny.com/jsfw/Linux/06.htm ,将board/CMI/flash.c的Nor Flash借过来。删除write_short()和wirte_buff()函数,将board/ep7312/flash.c的wirte_word ()和wirite_buff()函数拷过来(与CMI的写机制不通)。加入以下语句:
#defin ASH_BASE0_PRELIM CFG_FLASH_BASE
修改FLASH_BLOCK_SIZE为0x20000(块大小128K)。修改 include/s3c2410.h ,可以在最后的
评论
发表评论