Reloading the watchdog timer

If the Watchdog timer (WDT) is configured not to stop on a halt command, it must be reloaded periodically to prevent it from resetting the domain.

  1. Read the WDT.RUNSTATUS register (0x50018400) to check if the WDT is running.
    If the least significant bit is 1, the WDT is running.
  2. Read the HALT field of the WDT.CONFIG (0x5001850C) register to check if the WDT halts with the CPU.
    If the fourth least significant bit is 1, the WDT does not halt.
  3. Reload the WDT by doing the following:
    1. Identify an enabled reload request in WDT.RREN (0x50018508).
      If value of the bit n in WDT.RREN is 1, the reload request n in WDT.RR[n] (0x50018600 + (n × 0x4)) can be used to reload the watchdog counter to the value written in WDT.CRV (0x50018504).
    2. Reload the watchdog timer by writing 0x6E524635 to the WDT.RR[n] register.