6.5.6.1.2 Error Handling

When the Boot ROM detects an error in the boot flow or a hardware fault, it writes a code as indicated in Table 6-10 to BCC1 and jumps to a fault handler.

As part of Power-On Self Test (POST), the Boot ROM checks for faults in the hardware and memories it uses. If a fault is detected, the Boot ROM enters the fault handler.

  • If a debugger is not connected and the user has selected a GPIO configuration in CFM::BOOTCFG.BOOT_GPIOSEL, the Boot ROM attempts to apply those settings. It then waits 100 ms (so the error status can be observed) before resetting the device to check if the error is transient.
  • If a debugger is connected, the Boot ROM does not apply GPIO settings. It waits indefinitely for the debugger to read status and send commands:
    • If the command is CMD_IMODE, the Boot ROM enters Interactive mode
    • If the command is CMD_EXIT, the Boot ROM resets the device
  • If the Boot ROM is already in Interactive mode when it detects an error, it puts the status in BCC1 and returns to the Wait-for-Command state. The GPIO selections are not applied in this case.
  • If POST finds no faults, the Boot ROM continues normal operation (Boot, Interactive, and Park modes). Therefore, a hardware or memory error occurring during normal operation is a failure condition and causes a hard fault. A hard fault is an unrecoverable error that triggers a device Reset, regardless of whether a debugger is connected. Interactive mode is not available in this situation.