[140] CLOCK: Soft reset during LFRC calibration prevents watchdog reset and LFCLK from being started

This anomaly applies to IC Rev. Rev 1, build codes CLAA-D00, QKAA-D00.

It was inherited from the previous IC revision Engineering D.

Domains

Application

Symptoms

LFCLK cannot be started. PCLK32KI is stopped.

Conditions

LFCLK calibration is started, and the application core soft resets before the calibration is complete.

Consequences

LFCLK cannot be started and watchdog timer doesn't operate.

Workaround

Use the following application core startup code:
if (*(volatile uint32_t *)0x50032420 & 0x80000000)
 {
  /* Reset occured during calibration */
   NRF_CLOCK_S->LFCLKSRC = CLOCK_LFCLKSRC_SRC_LFSYNT;
   NRF_CLOCK_S->TASKS_LFCLKSTART = 1;
   while (NRF_CLOCK_S->EVENTS_LFCLKSTARTED == 0) {}
   NRF_CLOCK_S->EVENTS_LFCLKSTARTED = 0;
   NRF_CLOCK_S->TASKS_LFCLKSTOP = 1;
   NRF_CLOCK_S->LFCLKSRC = CLOCK_LFCLKSRC_SRC_LFRC;
 }