BOOT0 - 启动引导功能配置
BOOT0 使用
本章节主要介绍一级bootloader使用。
目录结构
源码位于brandy/brandy-2.0/spl目录下,结构如下:
├── arch #芯片arch相关文件
├── board
│ └── {chip_platform} #存放各个芯片平台的boot0配置,具体目录名请参考对应芯片SDK
├── common #存放通用组件,如:GPT和env
├── drivers
├── fes #烧录阶段才执行,用于初始化dram。镜像只打包到固件中
├── include
├── Makefile
├── mk
├── nboot #常规启动阶段执行代码
├── pmboot #休眠唤醒阶段执行代码
├── sboot #安全启动阶段执行代码
├── simpleboot #特殊启动阶段执行的代码,用于初始化dram
├── solution #快启相关功能代码
└── tools
确定方案使用的编译 mk 文件
确认当前方案使用的配置文件,这里以 perf2b 板级为例,查看 BoardConfig_nor.mk 和 BoardConfig.mk 中配置的 LICHEE_BOOT0_BIN_NAME,分布对应 SPI NOR 方案与 eMMC 方案下使用的 BOOT0 配置。

如果 BoardConfig_nor.mk 和 BoardConfig.mk中没有配置 LICHEE_BOOT0_BIN_NAME ,则标识方案使用默认配置,根据具体存储器件选择 mmc.mk,spinor.mk,nand.mk 即可
| 软件方案 | 存储器件 | 配置文件 |
|---|---|---|
| 普通 | SPI NOR | brandy/brandy-2.0/spl/board/{chip_platform}/spinor.mk |
| 普通 | SPI NAND | brandy/brandy-2.0/spl/board/{chip_platform}/nand.mk |
| 普通 | eMMC/SD NAND | brandy/brandy-2.0/spl/board/{chip_platform}/mmc.mk |
| 快起 | SPI NOR | brandy/brandy-2.0/spl/board/{chip_platform}/spinorfastboot.mk |
| 快起 | eMMC/SD NAND | brandy/brandy-2.0/spl/board/{chip_platform}/mmcfastboot.mk |
提示
备注
提示
备注
{chip_platform} 为对应芯片平台的配置目录名称,具体名称请参考对应芯片的 SDK 目录结构或芯片数据手册。
:::
编译烧录使用
编译boot0的快捷命令是:
mboot0
根据 spl/board/{chip_platform}/ 目录下不同的mk文件,对应不同boot0的编译产物,根据不同阶段划分。
启动阶段编译产物如下,根据方案配置选择一下其中一个烧录到设备端flash
boot0_spinor_{chip_platform}.bin #nor介质启动boot0,对应spinor.mk
boot0_nand_{chip_platform}.bin #nand介质启动boot0,对应nand.mk
boot0_sdcard_{chip_platform}.bin #emmc介质启动boot0,对应mmc.mk
boot0_spinorfastboot_{chip_platform}.bin #nor介质快启boot0,对应spinorfastboot.mk
boot0_mmcfastboot_{chip_platform}.bin #emmc介质快启boot0,对应mmcfastboot.mk
sboot_nor_{chip_platform}.bin #nor介质安全启动boot0,对应sboot_nor.mk
烧录阶段编译产物如下,所有方案都是使用以下镜像。文件保留在固件中,不会烧录到设备端flash
fes1_{chip_platform}.bin #对应fes.mk
休眠唤醒阶段编译产物如下,对应pmboot.mk,如:nor方案则使用 pmboot_spinor_{chip_platform}.bin
pmboot_spinor_{chip_platform}.bin
pmboot_nand_{chip_platform}.bin
pmboot_sdcard_{chip_platform}.bin
提示
备注
提示
备注
{chip_platform} 为对应芯片平台的标识符,具体名称请参考对应芯片的 SDK 编译产物或芯片数据手册。
:::
配置说明
串口配置
boot0的串口配置位于 device/config/chips/{IC}/configs/{BOARD}/sys_config.fex文件。