- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After an OTA image download I see around 1% not recovering until a power cycle of 100's of devices.
I am rebooting my processor after OTA with the command wiced_framework_reboot which eventually calls platform_mcu_specific_reset(PLATFORM_RESET_TYPE_POWERCYCLE).
At the end of this function is a while(1); loop hoping that the clock control is correctly setup prior to the while loop. Has anyone had problems with this?
I do not know if this while loop is the cause of my problem as I can't trap it on a board with a debugger.
Solved! Go to Solution.
- Labels:
-
ispn:36623:1:0
-
l1:3966:1:0
-
l2:6066:1:0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The platform_mcu_specific_reset() forces immediate reset by writing a value of 1 in the required register:
/* Set watchdog to reset system on next tick */
PLATFORM_CHIPCOMMON->clock_control.watchdog_counter = 1;
Watchdog reset occurs when this watchdog counter decrements from 1 to 0.
The watchdog counter operates at the ILP clock frquency. Hence you will see the problem only if the ILP clock is not set.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The platform_mcu_specific_reset() forces immediate reset by writing a value of 1 in the required register:
/* Set watchdog to reset system on next tick */
PLATFORM_CHIPCOMMON->clock_control.watchdog_counter = 1;
Watchdog reset occurs when this watchdog counter decrements from 1 to 0.
The watchdog counter operates at the ILP clock frquency. Hence you will see the problem only if the ILP clock is not set.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Priya.
That is what I figured based on the documentation that I have.
Is there any reason the ILP clock could be disabled in normal operation? I am going to add a led enable prior to the while loop to try and see if the problem is here or not.
Is there a register write I could do prior to the reset to force the clock on incase something or some error has disabled it?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is there any reason the ILP clock could be disabled in normal operation?
>> The ILP clock is chosen from external source or internal source depending on the availability of external LPO.
It is not disabled. Either the internal or external LPO will be used to enable this clock.