Keeping non-IRT Functionality in non-IRT Regions

If a system has some IRT regions with write permissions enabled, either intentionally or by accident, then it can be modified by other IRT code. Any code that should not have access to IRT code should be defined in a non-IRT region, either FIRMWARE or OTP.

Key Considerations:

  • Create an IRT section that starts at the reset vector of the device with writes disabled
  • Create FIRMWARE or OTP sections for all non-IRT functional code/data
  • Exit IRT section properly when transitioning to non-IRT code
  • Lock configuration bit settings using the UCB write/erase protections when pivoting from development to production to prevent external programming sources