I have a RTC application which sets the time using RTC_SET_TIME ioctl call. After executing the app, the time is being set and I am reading it using RTC_RD_TIME which is working fine. But once the date is set and if I do a soft reboot of the board, next time if I read the date , it is showing an old value. But after a hard reboot the updated value is being displayed.
I tried soft reboot after setting the date through command line using date -s and hwlock -w comands. In this case also date is being updated without any issue. I tried an ioctl flush and a system call of hwclock -w from the app after the RTC_SET_TIME ioctl but the value are not being retained after soft reboot.
What is actually happening here?. Can anyone explain.?
There is general recommendation do not use software reset for i.MX
devices; total system POR should be performed in order to avoid issues
with unpredictable states of external devices.