为 RT1176 升级到 SDK v2.12.1,我发现与
之前票证中报告的 v2.12.0 类似的错误仍然存在:
- 在文件 MIMXRT1176_cm7_features.h 第 430 行:定义 FSL_FEATURE_FLEXRAM_HAS_ECC应设置为 1,而不是 0。RT1176 FlexRAM 确实支持 ECC。将定义设置为 0 确实会破坏以前使用 ECC 支持的代码,因为fsl_flexram.c中的相应访问函数不会被编译。
- 修复 1.(将 FSL_FEATURE_FLEXRAM_HAS_ECC 设置为 1)时, fsl_flexram.c的编译确实失败。函数FLEXRAM_ErrorInjection()中使用的定义 不存在。该函数还尝试访问一个寄存器,根据 i.MX RT1170 处理器参考手册 Rev.1,该处理器上不存在该寄存器。
这是一个主要错误,已针对 SDK 的 v2.12.0 报告过。解决方法是将定义的
FSL_FEATURE_FLEXRAM_HAS_ECC手动设置为 1,并 从
fsl_flexram.c中 删除函数
FLEXRAM_ErrorInjection()。