06-S3C2440学习之移植2012u-boot到S3C2440(移植过程三)支持NorFlash

上一节 我们实现了支持nand  flash 启动(点击查看),并不代表uboot此时可以对nand进行读写操作,只是可以把uboot烧写到nand然后上电后,对代码 进行重定位,实现了nand启动。这一节我们加入对nor 的支持,使uboot可以识别出nor flash 并可以读写nor flash。

(1)查看上一节最后的报错:

(2)搜索Flash:查看代码:


程序会陷入死循环,并打印出错误信息。


(3)找不到不卡死,继续往下走:修改为如下

修改是为了 从nand启动时不在此处卡死。


(4)看一下这个 怎么才能识别出nor flash


		if (!flash_detect_legacy(cfi_flash_bank_addr(i), i))
			flash_get_size(cfi_flash_bank_addr(i), i);
		size += flash_info[i].size;


(5)定义打印信息


(10)拿去编译


usb 1 30000000

protect off all

erase 0 7ffff

cp.b 30000000 0 80000


(11)搜索下JEDEC PROBE:


打印设备ID并对比



加入所使用的nor flash的特性信息



(12)更新


(13)解决:

搜索ERROR: too many flash sectors

重新编译:


(14)重新编译下载


(15)没有重新设置栈



(16)更新文件,重新编译一下:


usb 1 30000000

protect off all

erase 0 7ffff

cp.b 30000000 0 80000

zip -r -q -o u-boot-2012.04.01.zip /work/system/u-boot-2012.04.01 (压缩备份)

将目录打包成一个文件,-r 表示递归打包包含子目录的全部内容,-q 表示安静模式,-o 表示输出文件,其后紧跟打包输出文件名

修改成功,到此uboot可以实现从nor nand启动,并且可以正确识别出nor flash的型号,并可以对nor 进行读写操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值