在完成通过TFTP在uboot阶段烧写镜像,首先需要完成tftp的内核启动以及NFS的文件系统挂载,在能够完成远程启动后,通过烧写到nand的方式完成内核的烧写。 tftp设置和nfs设置参考用户手册的附录2的F2.1-F2.4、附录3的F3.1 设置过程: setenv ipaddr 172.16.0.165 设置开发板ip setenv serverip 172.16.0.160 设置服务器ip setenv bootargs console=ttyO0,115200n8 root=/dev/nfs nfsroot=172.16.0.160:/nfs_rootfs,nolock rw ip=172.16.0.165:172.16.0.160:172.16.0.218:255.255.255.0::eth0:off screentype=R screensize=800x600-vga 设置环境变量 setenv netboot "run bootargs;tftp 0x80000000 uImage;bootm" run netboot nfsroot=172.16.0.160:/nfs_rootfs 中的 172.16.0.160 为 ubuntu 服务器 ip,/nfs_rootfs 为 ubuntu下所建的存放文件系统的路径,172.16.0.165 是开发板的 ip 在设置完开发板和服务器ip后,可通过ping指令测试网络是否能够正常联通 成功启机进入nfs的文件系统后,将要更新的uImage放入到文件系统中,如放入到根目录 flash_eraseall /dev/mtd6 擦除nand nandwrite -s 0x0 -p /dev/mtd6 /uImage 设置偏移地址和写入文件地址 nandwrite -p /dev/mtd(相应分区) (更新的镜像的地址) 相应分区通过启机打印信息查看,也可以在内核通过cat /proc/mtd指令查看
擦护nand和重新写入nand内核镜像,-s指令必须添加,否则会导致启机失败 测试是否更新成功: 1.首先烧写默认镜像 查看系统时间为2022年且带有sw1gpio引脚节点 2.启动远程挂载的内核和文件系统(内核已进行修改,去掉sw1gpio功能) 查看系统时间为2023年且不带有sw1节点 3.tftp更新后断电启动系统(内核已进行修改,去掉sw1gpio功能) 查看系统时间为2023且不带有sw1节点
|
|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )
GMT+8, 2024-11-22 10:18
Powered by Discuz! X3.4
© 2001-2013 Comsenz Inc.