u-boot的tftp功能烧录整个系统

前提条件:开发板上已经通过别的方式把u-boot烧录好了


下面介绍一下通过tftp功能,烧录整个系统的方法

a、u-boot烧录u-boot

如果开发板nor flash里面已经烧录有u-boot,可以通过nor flash里面u-boot的tftp功能烧录bootloader到nandflash

1、下载bootloader到ram

tftp 30000000 u-boot.bin

2、擦除bootloader分区

nand erase bootloader

3、烧录u-boot到nandflash

nand write 30000000 bootloader


b、u-boot烧录kernel

1、下载kernel到ram

tftp 30000000 uImage

2、擦除kernel分区

nand erase kernel

3、烧录kernel到nandflash

nand write.jffs2 30000000 kernel


c、u-boot烧录rootfs

1、下载rootfs到ram

tftp 30000000 first_fs.yaffs2

2、擦除root分区

nand erase root

3、烧录root到nandflash

nand write.yaffs2 30000000 root


烧录完成之后,文件系统还是跑不起来,卡在下面这地方:

Warning: unable to open an initial console.
Failed to execute /linuxrc.  Attempting defaults...
Kernel panic - not syncing: No init found.  Try passing init= option to kernel.

解决方法:

在烧录文件系统时,不能把根文件系统烧录到整个root分区,这样会破坏根文件系统。

要按照文件系统本身的大小进行烧录,命令如下:

nand write.yaffs 30000000 0x00260000 $(filesize)


烧录完成之,整个系统一切正常

      

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值