Phytec中国的wiki
support@phytec.cn
热线:0755-61802110-803
本文参考下面这篇文档写成,更多信息请阅读原文:
TFTP方式
准备工作:
- 确认上位机的tftp服务工作正常,且目录中有正确的image文件
- 确认上位机与开发板网络工作正常
- 我们的开发板默认设置ip为 192.168.3.11,默认的tftp服务器地址为 192.168.3.10
- 确认开发板调试串口工作正常
- 另外在barebox中,虽然有 /mnt/tftp 这个目录,但实际上这个目录是不能用tab键来自动补全,也不能用ls来查看目录的,只能输入文件名来下载。
- barebox使用教程 / Introducing barebox
- 在下面的文档中,文件名用以下格式,请将[xx]改为您的文件名
- MLO:[MLO]
- barebox:[barebox]
- 内核:[zImage]
- 设备树:[oftree]
- 文件系统:[rootfs]
更新bootloader
首先在上电时在按提示进入barebox。
然后更新 MLO。
注意如果是老版本的barebox可能没有 barebox_update 指令需要参考对应版本的BSP更新方法来更新barebox为新版本。
barebox_update -t MLO.nand /mnt/tftp/[MLO]
更新barebox。
barebox_update -t nand /mnt/tftp/[barebox]
重启开发板,此后开发板都会运行新版本的barebox。
也就是说如果需要再次更新barebox,就可以按照本文的方法来更新。
reset
在reset后用同样的方式进入barebox,继续下面的操作。
更新内核、设备树、文件系统
此时的/dev:
首先擦除kernel
erase /dev/nand0.kernel.bb
将kernel写入nand
cp /mnt/tftp/[zImage] /dev/nand0.kernel.bb
擦除设备树分区
erase /dev/nand0.oftree.bb
将设备树写入nand
cp /mnt/tftp/[oftree] /dev/nand0.oftree.bb
接下来烧写文件系统
首先格式化nand为ubi格式
ubiformat /dev/nand0.root -y
然后挂载该文件系统
如果在以后调试时,想要只更新内核、设备树、文件系统中的一个,那么可以在先运行该指令后,用ubiupdatevol来更新,不需要ubiformat和ubimkvol。
ubiattach /dev/nand0.root
此时的/dev:
在文件系统中分区,首先是内核
注意如果以前已经分过区,就不用再操作一遍,如果觉得操作有误,可以用ubiformat先格式化后重新来过文件系统
ubimkvol /dev/nand0.root.ubi root 0
此时的/dev/内容:
将文件系统写入nand
cp /mnt/tftp/[rootfs] /dev/nand0.root.ubi.root
OK,恭喜你已经完成了。
reset
此后,如果要单独更新内核等,只需要进去barebox,然后
ubiattach /dev/nand0.root
然后直接用 ubiupdatevol 更新对应的文件就可以了。
TODO:
- 步骤号
- Barebox文档
- 怎样修改ip地址
- 怎样测试网络
- barebox的官方文档
- 补充bsp manual的其他信息
Overview
Content Tools
Tasks