gpt4 book ai didi

linux - i.MX6SX 从 DDR 运行 M4 固件

转载 作者:太空宇宙 更新时间:2023-11-04 03:43:32 25 4
gpt4 key购买 nike

我正在 6SX-SABRE-SBD 板上进行测试。该主板安装了 i.MX6SX,一种非对称双核 CPU:Cortex A9Cortex M4

目前系统正在使用 U-Boot 和来自 SDlinux 内核 启动。这意味着A9运行在DDR区域。 M4固件采用MQX 4.1.0操作系统,freescale移植。

到目前为止我做到了:

  1. 测试 pingpong 示例,这是 MQX 提供的示例代码,用于映射 QSPI2 中的 M4 代码。效果很好。
  2. 我更改了 pingpong 示例的链接器脚本(icf,我正在使用 IAR)将 ROM 区域置于 DDR 区域内(例如 0x84000000)。
  3. 在 U-Boot 启动时,我停止并将重新映射的 .bin 文件复制到正确的地址(例如fatload mmc ${mmcdev}:${mmcpart} 0x84000000 myRemapped.bin)
  4. 使用 U-Boot 的命令 bootaux 来启动 M4 应用程序(例如 bootaux 0x84000000,我也尝试使用 bootaux 0x8400400 来跳过向量)

这些步骤似乎不起作用。

作为测试,我修改了标准乒乓球示例,以修改 0x84000000 处的一些字节(DDR 区域内的地址),效果很好。这意味着 M4 拥有 DDR 区域 的权限。

有人可以帮助我了解必须了解/修改哪些内容才能使 M4 固件在 DDR 中运行吗?

最佳答案

对于 Vybrid,我们必须从 0x0f000411 运行 M4 - 据我记得 M4 的 ram 被映射到 0x0f000000。我不记得为什么结局是 411 而不是 400 或 000,但它就是这样的。

关于linux - i.MX6SX 从 DDR 运行 M4 固件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28958245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com