环境搭建:家目录下安装tftp服务器,实现linux系统对tftp目录得文件传输
准备文件:将uboot镜像文件,TF-A镜像文件反在tftp目录下
开发板与linux系统得连接:在串口工具打印信息ums 0 mmc 0 ,将TF卡挂载到Ubuntu中;ums 0 mmc 1 ,将EMMC设备挂载到Ubuntu中
验证:
1.进入uboot源码目录,烧写镜像文件到EMMC设备中,./sdtools.sh /dev/sdb
2.将拨码开关拨到EMMC启动方式,查看uboot是否可以启动成功,如果可以启动成功,代表EMMC烧写成功
3.linux和开发板间连接网络(需要linux自己设置ip地址),然后通过桥接
4.在串口工具,用tftp指令,将设备树和uImage文件拷贝到tftp目录下(tftp 0xc2000000 uImage)(tftp 0xc4000000 stm32mp157a-fsmp1a.dtb)
5.在串口工具,设置bootargs参数
FSMP1A> setenv bootargs root=/dev/nfs nfsroot=192.168.1.100:/home/linux/nfs/rootfs,tcp,v4 rw console=ttySTM0,115200 init=/linuxrc ip=192.168.1.250
解释:
root=/dev/nfs:使用nfs方式进行挂载
nfsroot=192.168.1.100:/home/ubuntu/nfs/rootfs:挂载的IP和路径
tcp,v4 :型号 rw:可读可写权限
console=ttySTM0:默认使用串口0
115200 :波特率为115200
init=/linuxrc :系统启动之后,运行1号进程
ip=192.168.1.250 :板子的ip地址
6.启动内核:
bootm 0xc2000000 - 0xc4000000
最终结果: