选用的芯片为eMMC类型,每次内核都从linux/media/mmcblk0p1文件夹中读取,简单操作就scp kernel dts 到这个文件夹即可。
如果zImage损坏,则只能通过tftp从u-boot下载。
首先在虚拟机ubuntu搭建TFTP服务器:
1.安装相关软件:sudo apt-get install tftp tftpd
sudo apt-get install xinetd
ufw disable
2.建立tftp配置文件:vi /etc/xinetd.d/tftp 文本中写入:
service tftp
{
socket_type = dgram
protocal = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/tftpboot/
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
3.建立server_args中的对应目录:mkdir /var/tftpboot
chmod 777 /var/tftpboot
4.重启xinetd服务:sudo /etc/init.d/xinetd restart 完成
5.回环模式下测试:放入/var/tftpboot目录下新闻文件:touch test 新建终端输入命令:tftp 127.0.0.1进入tftp模式 输入 get test将文件下载到当前文件夹,测试完成。
板端下载:
1.进入u-boot控制台 setenv ipaddr 192.168.2.168 //开发板地址
setenv serverip 192.168.2.110 //虚拟机主机ip
saveenv //保存环境变量设置
2.下载kernel到指定地址
tftp 0x80800000 zImage
3.启动linux系统:bootm 0x80800000 zImage
go 0x81000000