OpenRisc-62-ML501从CF卡启动u-boot

本文详细介绍了如何从CF卡启动OpenRisc的u-boot,包括生成u-boot.szbin文件,制作烧写工具cfi_ctrl_programmer.elf,修改ORPSoC启动地址,以及从CF卡启动linux的整个过程。该方法适用于解决SPI Flash容量限制的问题。
摘要由CSDN通过智能技术生成

引言

前面我们已经实现从SPI Flash启动orpmon和u-boot,并利用orpmon和u-boot的tftp服务最终启动了linux。看似大功告成,其实不然。

由于SPI Flash的容量有限(2MB),无法从SPI Flash直接启动linux,如果想启动linux的话必须先启动bootloader,这就要求linux的启动过程需要人为的参与,而这是我们不想看到的。

那如何才能上电直接启动linux,并且不需要人为操作呢?

前面说过,ML501的CFI FLash是32MB,容量够大,能不能从CFI Flash启动软件呢?

本小节就以从CFI Flash启动u-boot为例,来介绍从CFI Flash启动软件的方法。


1,基本思想

编译生成针对ML501并附带sizeword信息的u-boot.szbin文件,然后制作用来将u-boot.szbin烧到CF卡里面的烧写工具(cfi_ctrl_programmer.elf),通过or32-elf-gdb将cfi_ctrl_programmer.elf下载到内存,执行cfi_ctrl_programmer.elf,根据其提供的命令将u-boot烧到CF卡。

修改ORPSoC的启动地址,修改为从CF卡启动。上电即可直接从CF卡启动u-boot。


2,操作步骤

1>u-boot.szbin文件的生成

a,下载u-boot源码到/home/openrisc目录下。

http://opencores.org/or1k/U-Boot

或者

http://git.openrisc.net/cgit.cgi/stefan/u-boot/commit/

b,解压并编译


tar xvf u-boot-master.tar.gz
make ml501_config  
make

c,添加sizeword信息

用bin2binsizeword小工具,生成u-boot.szbin文件。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值