1. 制作sd卡启动
打开配置工具MfgConfig.exe(我的核心板是CB140-6G-256M-EMMC)
图片1.png
(选项Linux-4.1.15-TFCard,在配置工具里面MfgConfig.exe的下来菜单没有的,我在ucl2.xml里面看到Linux-4.1.15-TFCard)
修改cfg.ini的name=Linux-4.1.15-eMMC为name=Linux-4.1.15-TFCard 保存文件。
打开MfgTool2.exe,设置板子为烧写模式,打开电源,检测到HID设备,点击Start 图片2.png
等待绿色烧写完成。
图片3.png
2. 修改环境变量从sd启动
设置2位播码为启动模式(bit1 bit为01),设置4位播码为sd卡启动(bit1 bit2bit3bit4为0010)
图片4.png
设置环境变量
setenv mmcdev 0
setenv mmcroot '/dev/mmcblk0p2'
saveeve
启动完成,如下图:
图片5.png
3. 烧写文件到emmc
可以用以太网tftp传输几个文件(这里就不写了)
L4115-core-image-base-myimx6a7.tar.bz2
mksdcard-4115.sh.tar
my_environment_emmc.scr
myimx6ek140p-6g-256m-emmc.dtb
uboot-myimx6ek140p-6g-256m-emmc.imx
zImage-myimx6a7
分区:
umount /dev/mmcblk1p*
tar -xvf mksdcard-4115.sh.tar
./mksdcard.sh /dev/mmcblk1
mkfs.vfat /dev/mmcblk1p1
mkfs.ext4 -F -j /dev/mmcblk1p2
烧写u-boot:
dd if=uboot-myimx6ek140p-6g-256m-emmc.imx of=/dev/mmcblk1 bs=1k seek=1
烧写内核和dtb和环境变量
mkdir -p /mnt/mmcblkxp1
mount -t vfat /dev/mmcblk1p1 /mnt/mmcblkxp1
cp myimx6ek140p-6g-256m-emmc.dtb /mnt/mmcblkxp1/
cp zImage-myimx6a7 /mnt/mmcblkxp1/
cp my_environment_emmc.scr /mnt/mmcblkxp1/
umount /mnt/mmcblkxp1
图片6.png
烧写系统系统:
mkdir -p /mnt/mmcblkxp2
mount -t ext4 /dev/mmcblk1p2 /mnt/mmcblkxp2
tar -jxf L4115-core-image-base-myimx6a7.tar.bz2 -C /mnt/mmcblkxp2
umount /mnt/mmcblkxp2
图片7.png
关机,把4位播码设置为EMMC启动。
4. 自己写个脚本,直接烧写EMMC
mkdir -p /mnt/update_file (update_file放更新文件,你们自己复制到里面)
vi update_myzr.sh (增加以下内容)
###开始内容###
mksdcard-4115.sh.tar mksdcard.sh test test.zip update_myzr.sh
root@myimx6ek140p:~# cat update_myzr.sh
cd /mnt/update_file
if [ -f /mnt/update_file/mksdcard.sh ]
then
echo "####"
else
tar -xvf mksdcard-4115.sh.tar
fi
umount /dev/mmcblk1p*
echo “Start partition and formatting...” ./mksdcard.sh /dev/mmcblk1
mkfs.vfat /dev/mmcblk1p1
mkfs.ext4 -F -j /dev/mmcblk1p2
umount /dev/mmcblk1p*
echo “Download u-boot...”
dd if=uboot-myimx6ek140p-6g-256m-emmc.imx of=/dev/mmcblk1 bs=1k seek=1
echo “Download zImage,dtb and src...”
if [ -d /mnt/mmcblkxp1 ]
then
echo "####"
else
mkdir -p /mnt/mmcblkxp1
fi
mount -t vfat /dev/mmcblk1p1 /mnt/mmcblkxp1
cp myimx6ek140p-6g-256m-emmc.dtb /mnt/mmcblkxp1/
cp zImage-myimx6a7 /mnt/mmcblkxp1/
cp my_environment_emmc.scr /mnt/mmcblkxp1/
umount /mnt/mmcblkxp1
echo “Download system...”
if [ -d /mnt/mmcblkxp2 ]
then
echo "####"
else
mkdir -p /mnt/mmcblkxp2
fi
mount -t ext4 /dev/mmcblk1p2 /mnt/mmcblkxp2
tar -jxf L4115-core-image-base-myimx6a7.tar.bz2 -C /mnt/mmcblkxp2
umount /mnt/mmcblkxp2
###结束内容###
最后修改为权限update_myzr.sh
chmod +x update_myzr.sh
如果想自己启动sd自动烧写
cp update_myzr.sh /etc/rc5.d/S99update