Issuing WARM_RESET can Cause Bootloader Failure Which Results in Failure to Load the
Application From Serial Flash
Revision(s) Affected:
IWR6843AOP ES1.0
and IWR6843AOP
ES2.0
Description:
WARM_RESET issued by application
software (via register write), internal watchdog trigger, or external pin invocation
can cause bootloader failure. This results in failure to load the application from
serial flash
- Occurrence of WARM_RESET resets all configuration registers to default pre boot
ROM values.
- Change in register values can affect settings of APLL clock, resulting in the
PLL clock leaking into digital subsystems of device. This can create an invalid
state of a specific clock divider in the PLL clock domain which is subsequently
not initialized by the WARM_RESET functionality.
- Once this clock divider state is reached the subsequent bootloader execution
hangs while trying to read the QSPI serial flash for program load (the QSPI is
dependent upon the clock divider). This necessitates a power-cycle or nRESET for
a successful recovery.
Workaround(s):
Avoid WARM_RESET. Use an external
nRESET to initiate device reset with either an external watchdog or PMIC initiated
reset sequence.