系统烧写
- 经过前面的移植,现在我们已经移植好了Uboot和Linux Kernel,制作好了根文件系统。系统通过SD卡启动Uboot,Uboot引导程序将Linux镜像文件、设备树文件和根文件系统从Ubuntu中下载到EMMC中对应的区域中,然后从EMMC中启动Linux内核
- 在实际的产品开发中肯定不可能通过网络来运行,否则没网的时候产品岂不是就歇菜了。因此我们需要将 uboot、 linux kernel、 .dtb(设备树)和 rootfs 这四个文件烧写到板子上的 EMMC、 NAND 或 QSPI Flash 等其他存储设备上,这样不管有没有网络我们的产品都可以正常运行。
烧写文件
- 首先将编译生成的U-boot文件、Linux内核文件、Linux的设备树文件和根文件系统打包
- u-boot.imx ./uboot
- imx6ull-lux-emmc.dtb ./arch/arm/boot/dtbs
- zImage ./arch/arm/boot
- tar -vcjf rootfs.tar.bz2 *
- 重命名
- u-boot->u-boot-imx6ull14x14evk.imx
- zImage
- imx6ull-lux-emmc.dtb->zImage-im6ull-14x14-evk-emmc.dtb
- rootfs.tar.bz2->rootfs_nogpu.tar.bz2
- 将zImage、 u-bootimx6ull14x14evk_emmc.imx 和 zImage-imx6ull-14x14-evk-emmc.dtb 这三个文件拷贝到 mfgtoolswith-rootfs/mfgtools/Profiles/Linux/OS Firmware/firmware 目录中,替换掉原来的文件
- 将所有 4 个文件都拷贝到 mfgtools-with-rootfs/mfgtools/Profiles/Linux/OS Firmware/files目录中,这两个操作完成以后我们就可以进行烧写了
- 双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开烧写软件,点击“Start”按钮开始烧写 ,烧写完成之后点击停止,之后退出
网络开机自启动配置
-
输入命令查看网络存在状态
ifconfig -a
-
打开网络
ifconfig eth0 up
-
查看是否配置成功
ifconfig
-
为eth0设置IP地址
-
如果连接的路由器,则可以通过路由器自动分配IP地址
udhcpc -i eth0
-
如果开发板连接的电脑,则手动设置IP地址
ifconfig eth0 192.168.31.55 netmask 255.255.255.0
route add default gw 192.168.31.1
-
设置开机自启动网络配置
-
将设置IP地址的命令添加到/etc/init.d/rcS文件中即可
-
完成以后的rcS文件内容如下
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib
export PATH LD_LIBRARY_PATH runlevel
#网络开机自启动设置
ifconfig eth0 up
#udhcp -i eth0
ifconfig eth0 192.168.31.55 netmask 255.255.255.0
route add default gw 192.168.31.1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)