Issuing WARM_RESET can Cause Bootloader Failure Which Results in Failure to Load the
Application From Serial Flash
Revision(s) Affected:
AWR6443 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.