4.3.8. Flag registers, SYS_FLAGx and SYS_NVFLAGx

The registers shown in Table 4.11 provide two 32-bit register locations containing general-purpose flags. You can assign any meaning to the flags.

Table 4.11. Flag registers

Register name



Reset by


SYS_FLAGS0x10000030Read-onlyResetFlag register
SYS_FLAGSSET0x10000030Write-onlyResetFlag Set register
SYS_FLAGSCLR0x10000034Write-onlyResetFlag Clear register
SYS_NVFLAGS0x10000038Read-onlyPORNonvolatile Flag register
SYS_NVFLAGSSET0x10000038Write-onlyPORNonvolatile Flag Set register
SYS_NVFLAGSCLR0x1000003CWrite-onlyPORNonvolatile Flag Clear register

The board provides two distinct types of flag register:

Flag and Nonvolatile Flag Registers

The SYS_FLAGS and SYS_NVFLAGS registers contain the current state of the flags.

Flag and Nonvolatile Flag Set Registers

The SYS_FLAGSSET and SYS_NVFLAGSSET registers are used to set bits in the SYS_FLAGS and SYS_NVFLAGS registers:

  • write 1 to SET the associated flag

  • write 0 to leave the associated flag unchanged.

Flag and Nonvolatile Flag Clear Registers

Use the SYS_FLAGSCLR and SYS_NVFLAGSCLR registers to clear bits in SYS_FLAGS and SYS_NVFLAGS:

  • write 1 to CLEAR the associated flag

  • write 0 to leave the associated flag unchanged.

Copyright © 2005-2011 ARM Limited. All rights reserved.ARM DUI 0411D