Index: RTC.c =================================================================== diff -u -r78733a54f723812233f901f66a356fb29be38628 -r2b28cd685e59e65b4aba12a1fb3370c4415ef076 --- RTC.c (.../RTC.c) (revision 78733a54f723812233f901f66a356fb29be38628) +++ RTC.c (.../RTC.c) (revision 2b28cd685e59e65b4aba12a1fb3370c4415ef076) @@ -1460,6 +1460,8 @@ if ( ( TRUE == isStatusOk ) && ( rxBuffer[ RTC_SECONDS_INDEX ] != RTCPreviousSecond ) ) { + updateReadTimestampStruct(); + ALARM_ID_T alarm; S32 elapsedTime = (S32)calcTimeSince( RTCSelfTestTimer ); S32 deltaTime = elapsedTime - (S32)MS_PER_SECOND; @@ -1503,7 +1505,7 @@ *************************************************************************/ static RTC_SELF_TEST_STATE_T handleSelfTestCheckRTCYear( void ) { - RTC_SELF_TEST_STATE_T state = RTC_SELF_TEST_STATE_CHECK_RTC_YEAR; + RTC_SELF_TEST_STATE_T state = RTC_SELF_TEST_STATE_COMPLETE; ALARM_ID_T alarm; #ifdef _DG_ @@ -1513,22 +1515,17 @@ alarm = ALARM_ID_HD_SET_RTC_YEAR_INVALID; #endif - if ( RTCTimestampStruct.years != 0 ) + // Check if the year is not 0, meaning that the year has been read + // If the year is greater than 2021, set as pass, otherwise fail POST + if ( RTCTimestampStruct.years > ( YEAR_2021 - YEAR_2000 ) ) { - // Check if the year is not 0, meaning that the year has been read - // If the year is greater than 2021, set as pass, otherwise fail POST - if ( RTCTimestampStruct.years > ( YEAR_2021 - YEAR_2000 ) ) - { - RTCSelfTestResult = SELF_TEST_STATUS_PASSED; - } - else - { - RTCSelfTestResult = SELF_TEST_STATUS_FAILED; - SET_ALARM_WITH_1_U32_DATA( alarm, (U16)RTCTimestampStruct.years ); - } - - state = RTC_SELF_TEST_STATE_COMPLETE; + RTCSelfTestResult = SELF_TEST_STATUS_PASSED; } + else + { + RTCSelfTestResult = SELF_TEST_STATUS_FAILED; + SET_ALARM_WITH_1_U32_DATA( alarm, (U16)RTCTimestampStruct.years ); + } return state; }