uboot启动linux,uboot中ramdisk启动linux的两种方法

首先要确保内核支持ramdisk启动:

The configuration of the kernel is as follow:

1) General setup-->[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support

[*]   Support initial ramdisks compressed using gzip

[*]   Support initial ramdisks compressed using bzip2

2)device driver-->Block devices-->   Loopback device support

   RAM block device support

(16384) Default RAM disk size (kbytes)

3)ext2 filesystem support, enalbed by default

相关配置如上。

第1种:

setenv ramdiskimage 'ramdisk.gz.uboot'

setenv ramdiskaddr '0x2000000'

setenv ramload 'tftp ${loadaddr} ${bootimage};tftp ${ramdiskaddr} ${ramdiskimage}; tftp ${fdtaddr} ${fdtimage}'

setenv ramboot 'setenv bootargs console=ttyS0,115200 root=/dev/ram rw rootfstype=ext2;bootz ${loadaddr} ${ramdiskaddr} ${fdtaddr}'

setenv bootcmd 'run ramload;run ramboot'

需要把ramdisk.gz用mkimage增加头部:

sudo mkimage -n 'uboot ext2 ramdisk rootfs' -A arm -O linux -T ramdisk -C gzip -d ramdisk.gz ramdisk.gz.uboot

mkimage -A arch -O os -T type -C comp -a addr -e ep \

-n name -d data_file image

-A ==> set architecture to 'arch' 体系结构

-O ==> set operating system to 'os' 操作系统

-T ==> set image type to 'type' 映像类型

-C ==> set compression type 'comp' 压缩方式

-a ==> set load address to 'addr' (hex) 加载地址

-e ==> set entry point to 'ep' (hex) 入口地址

-n ==> set image name to 'name' 映像文件名

-d ==> use image data from 'datafile' 制作映像的源文件

第2种:比较传统的启动方法

setenv ramdiskimage 'ramdisk_115200.gz' setenv ramdiskaddr '0x2000000' setenv ramload 'fatload mmc 0:1 ${loadaddr} ${bootimage};fatload mmc 0:1 ${ramdiskaddr} ${ramdiskimage}; fatload mmc 0:1 ${fdtaddr} ${fdtimage}' setenv ramboot 'setenv bootargs console=ttyS0,115200 root=/dev/ram rw  rootfstype=ext2 initrd=0x2000000,16M;bootz ${loadaddr} - ${fdtaddr}'

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值