NXP MCU 技术论坛
直播中

英雄孤寂

11年用户 1151经验值
私信 关注
[问答]

如何使LLCE_CAN在M7上工作以进行多重引导 (M7/A53)?

我使用 Can_llce_DS_Loopback 示例并在 M7 上运行并配置 LINFlexD_1 以输出 UART 日志。
只有在M7_0上才能正常运行。

  • 我参考 S32G_Bootloader_V2-2022.1024_eng.pdf 配置引导加载程序和 M7 应用程序(删除 Mcu_Init()、Port_Init()、Platform_Init())。
  • 启用 UART1 和 LLCE_CAN 的中断 (LINFLEXD1_IRQn/LLCE0_ICSR14_IRQn/LLCE0_ICSR15_IRQn/LLCE0_ICSR16_IRQn/LLCE0_ICSR17_IRQn/LLCE0_ICSR22_IRQn/LLCE0_ICSR23_IRQn)。
  • 为 M7 应用程序和引导加载程序的 MCU 配置配置时钟。
  • 修改 linker_ram.ld。将 int_sram 的区域更改为 0x34000000。
  • 在 A53 上,删除llce_can.config 和 llce_logger.config (LinuxBSP_35)。
开机时输入uboot,M7可以正常运行LLCE_CAN loopback example。
如果 A53 正在启动进入操作系统,M7 将意外停止。
这是我的问题:

  • M7 正常运行需要检查哪些配置?
  • 有没有可能让LLCE_CAN控制器0-7在M7上运行,控制器8-15同时在A53上运行?


回帖(1)

YYXIAO

2024-6-3 17:10:42
对于 S32G 平台,多重引导的实现需要一些注意事项。以下是可能的步骤:

1. 确保可以从 M7 和 A53 引导加载程序启动,这需要使用正确的引导加载程序并正确配置引导选项。确保引导加载程序可以访问 S32G 的所有资源,并且可以正确区分 M7 和 A53。
2. 为 M7 和 A53 安装不同的应用程序,这些应用程序需要在 S32G 上的不同地址空间中运行。如果需要,可以使用不同的编译选项或修改启动文件来实现这一点。
3. 根据需要,配置需要的 LLCE 和其他外设。确保在 M7 和 A53 中正确设置中断和寄存器值,并且这些设置不会相互干扰。
4. 确保在所有模式下都可以正常访问以太网和其他网络接口。这可能需要对网络栈进行调整或配置,以便在 M7 和 A53 中都可以正常运行。
5. 如果需要,可以在内存中使用不同的地址来保存不同的应用程序和数据。这可以使用内存映射或其他手段来实现,但需要注意不会造成冲突或数据丢失。

注意,在对多重引导进行配置时,需要花费一定的时间和精力来测试和验证所有功能是否正常,并确保能够在所有情况下进行可靠的启动。建议采用逐步调试和测试的方法来实现多重引导。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分