- 通过将
efi.bin和rootfs.img烧录到 SD 卡来准备 SD 卡。 - 将准备好的 SD 卡插入开发套件的 SD 卡插槽。
支持的平台
要准备可启动的 SD 卡,请执行以下操作:
前提条件
使用 Linux 桌面系统执行步骤 1 到 5,准备可启动的 SD 卡。
步骤
- 在任意 Linux 系统上确认所插入 SD 卡的设备节点,例如
/dev/mmcblk1或/dev/mmcblk2。 - 要格式化 SD 卡,请在 Linux 终端上运行
mkfs.ext4 <sdcard slot>命令。 在以下示例中,SD 卡的设备节点为/dev/mmcblk1。输出: - 使用
fdisk命令在 SD 卡上创建两个分区,用于复制efi.bin和rootfs.img。- 创建第一个分区(
vfat文件系统)用于复制efi.bin。 要创建分区,请运行以下命令(例如,设备节点为/dev/mmcblk1):在此示例中,将First sector字段留空,并确保Last sector足够大以容纳efi.bin。输出:要将该分区转换为vfat文件系统,请运行以下命令:输出: - 按如下方式创建第二个分区(
ext4文件系统)用于复制rootfs.img: 要创建分区,请运行以下命令(例如,设备节点为/dev/mmcblk1):在此示例中,将First sector字段留空,并确保Last sector足够大以容纳rootfs.img。输出:要将该分区转换为ext4文件系统,请运行以下命令:输出:
- 创建第一个分区(
- 验证分区是否已创建:
输出:
- 将主机上成功构建的 Qualcomm Linux 镜像中的
efi.bin和rootfs.img复制到 SD 卡上的分区中。在主机上运行以下命令:dd if=<path>/efi.bin of=<sdcard slot> bs=4Mdd if=<path>/rootfs.img of=<sdcard slot> bs=4M要从/tmp路径复制这两个镜像,以下是将它们复制到 SD 卡的示例:在此命令中,SD 卡的设备节点为/dev/mmcblk1。
模拟无法启动的状态
要验证 SD 卡是否用作备用启动介质,您可以通过擦除主闪存存储(UFS 或 eMMC)的 EFI 分区,强制其进入无法启动的状态。在插入 SD 卡之前,当开发套件仍从主存储运行时,在开发套件上执行以下步骤:- 通过 UART 控制台或 SSH 登录开发套件。
- 确认 EFI 分区已作为
/dev/disk/by-partlabel/efi公开。此分区名称来自您所在平台的partitions.conf文件中的--name=efi条目。有关更多信息,请参阅在 Qualcomm Linux 中管理分区。 - 通过写入零来擦除 EFI 分区:
- 将准备好的 SD 卡插入 SD 卡插槽并重启开发套件。由于主存储上的 EFI 分区现已被擦除,引导加载程序会回退到从 SD 卡启动。
擦除 EFI 分区会使主存储无法启动,直到重新烧录 EFI 分区。要恢复原始启动配置,请按照烧录预构建镜像中的步骤重新烧录设备,或重新构建并重新烧录
efi.bin 镜像。
