【问题标题】:how sabre sd boots directly from uboot without SPLsabre sd 如何在没有 SPL 的情况下直接从 uboot 启动
【发布时间】:2015-09-24 15:40:06
【问题描述】:

sabre sd 基于 imx-6,其内部 RAM 最大约为 150Kb。但是uboot足够大以适合这个空间。在这个场景中事情是如何运作的? https://community.freescale.com/docs/DOC-95015

在本飞思卡尔文档中,仅 uboot 用于创建 SD 卡以用于 saber sd 启动。

【问题讨论】:

    标签: ubuntu operating-system kernel arm u-boot


    【解决方案1】:

    简短的回答:SRAM 有多小并不重要,因为 U-Boot 本身显然不会靠近它。

    主要的好处是 mx6qsabresd 配置设置了一个入口点 0x17800000,根据the reference manual 中的内存映射,它是一个 DRAM 地址。现在,我不“知道” i.MX6 本身,但我当然可以总结该手册的“系统启动”一章所说的内容(嘿,这很有趣......)

    内部 ROM 加载器从 SD 卡的偏移量 0x400 将图像的前 4K 读取到内部 RAM 中以查看标头。此标头(在u-boot.imx 映像中)包含 U-Boot 映像的大小和 DRAM 加载地址,以及配置寄存器数据的加载 - 来自构建 mx6qsabresd_config 我看到这来自 board/freescale/mx6sabresd/mx6q_4x_mt41j128.cfg 并且,简要地交叉- 使用外围映射检查那里的地址,似乎主要是设置 IOMUX 和 DRAM 控制器。 ROM 代码将配置值写入其相关寄存器,DMA 将整个映像从 SD 卡直接写入 DRAM,然后跳转到它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 2022-01-02
      相关资源
      最近更新 更多