AM2632-Q1: How to disable ECC on AM2632

Part Number: AM2632-Q1
Other Parts Discussed in Thread: AM2632,

Hi I am trying to disable ECC on the AM2632. I am using CCS 12.8.1 with SDK 10.00.00.

Can you provide me an instruction how to disable ECC with this setup?

 

Cheers Max 

  • Hi Max,

    I have re-assigned the query to AM26x ECC expert, please wait for their response

    Regards,
    Shaunak

  • Hey Max,

    The AM263x SDK and CCS do not provide a single configuration option or API to globally disable ECC. ECC is a safety feature deeply integrated into the boot process, and disabling it is not recommended — especially for automotive (Q1) applications — due to the risk of spurious ECC errors and system faults. That said, here's what's known about the mechanisms involved:


    Memory Regions with ECC Protection

    Memory ECC Type Control Mechanism
    TCM (ATCM, B0TCM, B1TCM) SECDED per 32 bits R5F ACTLR register bits: ATCMPCEN, B0TCMPCEN, B1TCMPCEN
    L1 Instruction Cache SECDED per 64 bits Processor-level control
    L1 Data Cache SECDED per 32 bits Processor-level control
    OCRAM (L2) ECC aggregator Memory initialization in SBL
    Flash (OTFA-ECC) ECC via OTFA No documented disable procedure
    1

    What You Can Do

    1. TCM ECC — Disable via ACTLR Register

    Clear the ECC enable bits in the R5F Auxiliary Control Register (ACTLR) early in boot, before any data is written to TCMs:

    • ACTLR.ATCMPCEN — ATCM ECC
    • ACTLR.B0TCMPCEN — B0TCM ECC
    • ACTLR.B1TCMPCEN — B1TCM ECC

    This requires modifying your startup code or SBL at the assembly level (privileged mode access). 1

    2. OCRAM ECC — Skip Memory Initialization in SBL

    The SBL calls Bootloader_socInitL2MailBoxMemory() to initialize OCRAM banks for ECC. You can remove or comment out this call in the SBL source code. However, any access to uninitialized ECC-protected memory will trigger spurious ECC errors routed to the ESM, potentially causing system faults. 2

    3. Flash OTFA-ECC

    There are no documented procedure in the SDK or TRM for disabling flash OTFA-ECC on the AM2632-Q1.


    Key Risks

    • Spurious ECC faults: Accessing any ECC-protected memory without prior initialization will generate uncorrectable error events routed to the ESM 1
    • Safety certification impact: Disabling ECC on a Q1-qualified device may void ASIL compliance
    • No SDK/CCS GUI support: These changes require manual SBL source modification and low-level register writes

    Recommended Approach

    If your goal is to avoid ECC-related issues during development/debugging rather than permanently disabling ECC, consider:

    1. Ensuring all memory is properly initialized before use (the default SBL behavior)
    2. Configuring the ESM to not escalate ECC errors during debug sessions

    1. AM263x Technical Reference Manual
    2. E2E: AM2632 No-Init RAM Discussion
    3. SDL ECC API Guide

    Best Regards,

    Zackary Fleenor