8.5.2 Region Control Register
The region descriptor PRxCTRL register includes the region disable bit: RDIS (PRxCTRL[0]), access
permission bits: CRC, WR, RD, EX (PRxCTRL[7:4]) and region type field: RTYPE[1:0]
(PRxCTRL[9:8]). When RDIS bit = ‘1’, the region is disabled, and it has
no effect. When RDIS bit = ‘0’, the region is enabled, and the
specified portion of user program space is subject to access control based on the region
type and permissions settings.
When read access is disabled, the ECC error reporting is restricted for the region to address information only. The data, parity and syndrome information are not reported. This prevents access to region firmware using ECC error injection and reporting.
There are four permission bits, each corresponds to a Flash access type as follows:
- CRC - NVM Controller CRC
- WR - Write (Program/Erase)
- RD - Read (Data Read)
- EX - Execute (Instruction Fetch)
Access to the region is controlled based on the access type. If the permission bit associated with the access type is set, the access is allowed. Otherwise, the access is not allowed. The OTP regions never allow write operations regardless of the WR bit setting. The CRC access type refers to accesses by CRC hardware integrated into the NVM Controller. The NVM Controller CRC hardware allows firmware integrity verification without exposing the contents of the region.
The RTYPE field which is read-only can be one of three values:
- Firmware Configurable
- One Time Programmable (OTP)
- Immutable Root of Trust (IRT)
OTP and IRT regions are permanent regions configured by Configuration bits and their region
descriptors cannot be modified. The permanent (OTP and IRT) region descriptors in UCB
and the contents of the regions in user program space are not erased on a chip erase if
either EPUCB (UCPROT[2]) bit = ‘1’ or WPUCB (UCPROT[1]) =
‘1’. To make OTP and IRT regions truly permanent, either (or both)
the FEPUCB or FWPUCB Configuration words must be programmed.
Firmware configurable region descriptors can be modified. Firmware configurable is the default type for regions when FPRnCTRL Configuration words are not programmed.
