SD卡自动烧录固件:
背景
在生产的过程中SD卡自动烧录很方便,那要怎么做呢?
主要有分以下2种情况:
- 芯片可以从SD卡启动
- 芯片不能从SD卡启动
芯片可以从SD卡启动
类似M5502S.
这种情况有2种方式:
- 使用Uboot的
Auto-burn
烧录 - 使用Linux系统烧录
使用Uboot的
Auto-burn
烧录Auto-burn
就是在uboot的cmdline运行烧录脚本来烧录固件。 - 准备SD卡
每个平台可能有所不一样,以M5S为例,分区并格式化SD卡,并将其volume name
改成特定的“BOOTEXT”
将SD卡的loader拷贝进SD卡 -
准备uboot
准备可支持自动运行烧录脚本的ubootauto-burn
功能模式在uboot的配置中默认是关闭的,需要将其打开。
修改默认的环境变量bootargs
和bootcmd
,让其默认就执行SD里面的自动烧录脚本镜像
类似于:1
#define CONFIG_BOOTCMD_UPGRADE "fatload mmc 0:1 0xa00000 ${auto_script}; source 0xa00000"