工具与软件:
SDK 版本0806 0902
板:tda4vm_evm
您好、TI 专家!
我目前遇到问题:我想让 mcu1_0在 ospi 上执行(我们不使用 DDR)、我引用了在 BareMetal 上运行的两个项目[sblMcXipEntryApp 和 k3MulticoreApp (sbl_amp_multicore.c)并成功运行它们。

这两个工程会告诉我、我需要按如下方式映射0x501c0000中的"entry_point":

和 map_file: 
我还看到系统初始化代码实际上位于0x501c0000:

但实际上、我们需要运行 FreeRTOS、、所以我还试着修改我们项目的链接器文件、并参考相关文档。

以下是我的链接文件修改点(与 SDK 不同):


将数据段、堆栈、堆和全局变量放在 OCMC 中
另一个在 ospi (0x501c0000)上运行、我使用 cmd 将其转换为 bin:
gcc-arm-9.2-2019.12-x86_64-aarch64-none-elf/bin/aarch64-none-elf-objcopy vx_app_rtos_linux_mcu1_0.out -O binary --only section .freertosrstvectors --only section .text --only section .text --section .rodata vx_app_rtos_linux_mcu1_0.bin
并 在0x1c0000 (ospi flash)处刷写 vx_app_rtos_linux_mcu1_0.bin、但 mcu1_0无法引导。 然后我查看了映射文件、只有 _freertosresetvectors 位于0x501c0000 、 、而_c_int00位于0x501f056c、因此、当 sblMcXipEntryApp 跳转至0x501c0000 ->(((void *)(void)) 0x501c0000)()时、无法执行_c_int00; 

因此、TI 能否提供一个演示、以便在 opsi (XIP)上使用 FreeRTOS 完全运行演示?
我还提到了 CAN_PROFILE_XIP 演示、但我无法完全理解它的工作原理:我查看了它的链接文件。程序的入口地址不是在0x501c0000、而是在0x41010000、
当 sblMcXipEntryApp 跳转至0x501c0000 ->(((void *)(void)) 0x501c0000)(); 当我 在0x1c0000 (ospi 闪存)刷写 can_profile_xip 时、如何运行 can_profile_xip?

谢谢
伊森
