TFTP启动内核方法?
来自华清远见研发中心
问题
TFTP启动内核方法?
解答
- 设置虚拟机
- 确认虚拟机中的TFTP服务工作正常
- 网路设置
- 设置开发板环境变量
- 设置ipaddr
- 设置serverip
- 设置bootargs
- 保存环境变量
- 下载内核及设备树
- 将内核设备树放在tftp工作目录,这里为/tftpboot
- 下内核文件
- 下载设备树文件
- 启动内核
1)在虚拟机中设置静态IP地址,这里设置为192.168.100.240
sudo vi /etc/network/interfaces
auto ens33
iface ens33 inet static
address 192.168.100.240
netmask 255.255.255.0
gateway 192.168.100.1
dns-nameserver 192.168.100.1
2)将VMware网卡桥接到有线网卡

ipaddr的设置需要和虚拟机的ip地址在同一网段,这里是192.168.100.0/24
env set ipaddr 192.168.100.252
serverip设置为虚拟机的ip地址192.168.100.240
env set serverip 192.168.100.240
setenv bootargs root=/dev/mmcblk2p4 rootwait rw console=ttySTM0,115200
这里/dev/mmcblk2p4为文件系统所在分区,也可以使用UUID来代替PARTUUID=491f6117-415d-4f53-88c9-6e0de54deac6
env save
tftp 0xc2000000 uImage
tftp 0xc1000000 stm32mp157a-fsmp1a.dtb
上一步骤已经将uImage放在内存的0xc2000000地址处,stm32mp157a-fsmp1a.dtb放在内存的0xc1000000地址处,下面就可以使用bootm启动内核了。
bootm 0xc2000000 - 0xc1000000