新闻  |   论坛  |   博客  |   在线研讨会
从SD启动CB140和制作SD卡可以烧写CB140
Myzr888 | 2019-08-01 17:30:05    阅读:281   发布文章


1. 制作sd卡启动

打开配置工具MfgConfig.exe(我的核心板是CB140-6G-256M-EMMC)


(选项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 保存文件。

修改ucl2.xml增加

<CMD state="Updater" type="push" body="send" file="image-L4.1.15-uboot/my_environment_emmc.scr">send: environment</CMD>

<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblkxp1/my_environment_emmc.scr">write environment</CMD>

打开MfgTool2.exe,设置板子为烧写模式,打开电源,检测到HID设备,点击Start


等待绿色烧写完成。


2. 修改环境变量从sd启动

设置2位播码为启动模式(bit1 bit为01),设置4位播码为sd卡启动(bit1 bit2bit3bit4为0010)


设置环境变量

setenv mmcdev 0

setenv mmcroot '/dev/mmcblk0p2'

saveeve

启动完成,如下图:


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


烧写系统系统:

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


关机,把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


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客