[Rust][ARM64] 八、加载下一阶段——从 SD 卡读取内核并移交控制权

系列进度

  • 第七篇:中断处理与异常向量表
  • 第八篇(本文):加载下一阶段(SD 卡 + jump_to)
  • 第九篇:ARM Trusted Firmware(ATF)

BootROM 的最终使命

一个完整的裸机 BootROM 流程:

GPU 固件(start4.elf) └→ 加载 kernel8.img 到 0x80000 └→ 我们的裸机 BootROM ├ 初始化 UART、GPIO、MMU ├ 从 EMMC/SD 卡读取有效载荷 ├ 可选:验证签名 └→ jump_to(payload_addr, dtb_addr) └→ U-Boot / ATF / Linux kernel

本篇实现最后两步:读取 SD 卡安全移交控制权


一、BCM2711 EMMC 控制器

RPi4B 有两个 SD/EMMC 接口:

  • EMMC20xFE34_0000):连接板载