【问题标题】:How to enable ddr's ecc in Linux?如何在 Linux 中启用 ddr 的 ecc?
【发布时间】:2014-06-29 09:41:33
【问题描述】:

我在powerpc p1020上使用linux,飞思卡尔提供了一个完整的系统,包括u-boot,linux。系统默认不启用ecc检查。我试图通过修改p1020的ddr_sdram_cfg寄存器来启用这个功能,但是我失败了。在 linux 中,我只能mmap 注册具有 PROT_READ 权限的内存空间,如果添加 PROT_WRITE 权限,则会导致 linux 中断。然后我尝试在 u-boot 中启用 ecc,但我也失败了,如果我 u-boot 停止使用mw 修改ddr_sdram_cfg。 有人能遇到这个问题吗?谢谢任何人帮助我。

【问题讨论】:

  • 这取决于内存控制器和实际内存 DIMM 本身。大多数 FSL 设计还使用 FSL 的 MEMC,这使得将代码从其他机器移植到您的平台更容易。 @Joe Kul 在下面已经提到过,您不应该尝试在内核中启用 ECC。很早就在 u-boot 中执行此操作。在 u-boot 配置 MEMC 的同时设置 ECC 设置(在 u-boot 重新定位到 RAM 之前)。做一次,早做。

标签: linux powerpc u-boot


【解决方案1】:

答案取决于您的目标平台,例如您可能有P1020RDB,或其他。

假设可以在平台上启用 SDRAM ECC(这可能包括额外的 RAM 来保存校正子位,例如 36 位数据路径),那么 ECC 需要在 SDRAM 控制器初始化时启用。当 SDRAM 已经在使用时,它不能在运行时打开。深入研究芯片参考手册、目标平台文档和(理想情况下)目标 BSP u-boot 源将揭示所需的一切。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-24
    • 1970-01-01
    • 1970-01-01
    • 2020-08-27
    相关资源
    最近更新 更多