Index: AlarmMgmt.c =================================================================== diff -u -r70a7331db2fcde56b3e47816fa57f5209c66c5f8 -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- AlarmMgmt.c (.../AlarmMgmt.c) (revision 70a7331db2fcde56b3e47816fa57f5209c66c5f8) +++ AlarmMgmt.c (.../AlarmMgmt.c) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -89,7 +89,7 @@ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS, (U32)alarm ); #endif #ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_RO_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS, (U32)alarm ); + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_RO_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS, (U32)alarm ) #endif } Index: CommBuffers.h =================================================================== diff -u -r3ca022103ce50b39e5d805b7577c7f360730412d -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- CommBuffers.h (.../CommBuffers.h) (revision 3ca022103ce50b39e5d805b7577c7f360730412d) +++ CommBuffers.h (.../CommBuffers.h) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -37,33 +37,42 @@ #ifdef _TD_ COMM_BUFFER_OUT_CAN_TD_ALARM, ///< Buffer for outgoing TD alarm messages COMM_BUFFER_IN_CAN_DD_ALARM, ///< Buffer for incoming DD alarm messages - COMM_BUFFER_IN_CAN_RO_ALARM, ///< Buffer for incoming RO alarm messages + COMM_BUFFER_OUT_CAN_RO_ALARM, ///< Buffer for incoming RO alarm messages COMM_BUFFER_IN_CAN_UI_ALARM, ///< Buffer for incoming UI alarm messages COMM_BUFFER_OUT_CAN_TD_2_DD, ///< Buffer for outgoing TD to DD messages COMM_BUFFER_IN_CAN_DD_2_TD, ///< Buffer for incoming DD to HD messages COMM_BUFFER_OUT_CAN_TD_2_UI, ///< Buffer for outgoing TD to UI messages COMM_BUFFER_IN_CAN_UI_2_TD, ///< Buffer for incoming UI to TD messages COMM_BUFFER_OUT_CAN_TD_BROADCAST, ///< Buffer for outgoing TD broadcast messages COMM_BUFFER_IN_CAN_DD_BROADCAST, ///< Buffer for incoming DD broadcast messages - COMM_BUFFER_IN_CAN_RO_BROADCAST, ///< Buffer for incoming RO broadcast messages + COMM_BUFFER_OUT_CAN_RO_BROADCAST, ///< Buffer for incoming RO broadcast messages COMM_BUFFER_IN_CAN_UI_BROADCAST, ///< Buffer for incoming UI broadcast messages #endif #ifdef _DD_ COMM_BUFFER_IN_CAN_TD_ALARM, ///< Buffer for incoming TD alarm messages - COMM_BUFFER_OUT_CAN_DD_ALARM, ///< Buffer for outgoing DD alarm messages - COMM_BUFFER_IN_CAN_RO_ALARM, ///< Buffer for incoming RO alarm messages + COMM_BUFFER_IN_CAN_DD_ALARM, ///< Buffer for outgoing DD alarm messages + COMM_BUFFER_OUT_CAN_RO_ALARM, ///< Buffer for incoming RO alarm messages COMM_BUFFER_IN_CAN_UI_ALARM, ///< Buffer for incoming UI alarm messages COMM_BUFFER_IN_CAN_TD_2_DD, ///< Buffer for incoming TD to DD messages COMM_BUFFER_OUT_CAN_DD_2_TD, ///< Buffer for outgoing DD to TD messages - COMM_BUFFER_OUT_CAN_DD_2_RO, ///< Buffer for outgoing DD to RO messages - COMM_BUFFER_IN_CAN_RO_2_DD, ///< Buffer for incoming RO to DD messages + COMM_BUFFER_IN_CAN_DD_2_RO, ///< Buffer for outgoing DD to RO messages + COMM_BUFFER_OUT_CAN_RO_2_DD, ///< Buffer for incoming RO to DD messages COMM_BUFFER_IN_CAN_TD_BROADCAST, ///< Buffer for incoming TD broadcast messages COMM_BUFFER_OUT_CAN_DD_BROADCAST, ///< Buffer for outgoing DD broadcast messages - COMM_BUFFER_IN_CAN_RO_BROADCAST, ///< Buffer for incoming RO broadcast messages + COMM_BUFFER_OUT_CAN_RO_BROADCAST, ///< Buffer for incoming RO broadcast messages COMM_BUFFER_IN_CAN_UI_BROADCAST, ///< Buffer for incoming UI broadcast messages #endif #ifdef _RO_ - // TODO - Dara to populate + COMM_BUFFER_OUT_CAN_RO_ALARM, ///< Buffer for outgoing RO alarm messages + COMM_BUFFER_OUT_CAN_RO_2_DD, ///< Buffer for outgoing RO to DD messages + COMM_BUFFER_IN_CAN_TD_ALARM, ///< Buffer for incoming TD alarm messages + COMM_BUFFER_IN_CAN_DD_ALARM, ///< Buffer for incoming DD alarm messages + COMM_BUFFER_IN_CAN_UI_ALARM, ///< Buffer for incoming UI alarm messages + COMM_BUFFER_IN_CAN_DD_2_RO, ///< Buffer for incoming DD to RO messages + COMM_BUFFER_IN_CAN_TD_BROADCAST, ///< Buffer for incoming TD broadcast messages + COMM_BUFFER_IN_CAN_DD_BROADCAST, ///< Buffer for incoming DD broadcast messages + COMM_BUFFER_IN_CAN_UI_BROADCAST, ///< Buffer for incoming UI broadcast messages + COMM_BUFFER_OUT_CAN_RO_BROADCAST, ///< Buffer for incoming RO broadcast messages #endif COMM_BUFFER_IN_CAN_PC, ///< Buffer for incoming PC messages COMM_BUFFER_OUT_CAN_PC, ///< Buffer for outgoing messages to PC @@ -78,7 +87,7 @@ #ifdef _DD_ #include "DDCommon.h" #endif -#ifdef _RD_ +#ifdef _RO_ #include "ROCommon.h" #endif Index: Common.h =================================================================== diff -u -r2801d97e877dd78189aa891e80a2f7cf60a6a2b7 -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- Common.h (.../Common.h) (revision 2801d97e877dd78189aa891e80a2f7cf60a6a2b7) +++ Common.h (.../Common.h) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -322,7 +322,7 @@ #ifdef _DD_ #include "AlarmMgmtDD.h" #endif -#ifdef _RD_ +#ifdef _RO_ #include "AlarmMgmtRO.h" #endif Index: PersistentAlarm.h =================================================================== diff -u -r9bd7299479e7ac304483a309544173beea24557d -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- PersistentAlarm.h (.../PersistentAlarm.h) (revision 9bd7299479e7ac304483a309544173beea24557d) +++ PersistentAlarm.h (.../PersistentAlarm.h) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -58,6 +58,14 @@ } FPGA_PERSISTENT_ALARMS_GROUP_T; #endif +#ifdef _RO_ +/// FPGA persistent alarm groups data structure +typedef enum +{ + NUM_OF_FPGA_SENSOR_GROUPS ///< Number of FPGA persistent error sensor groups. +} FPGA_PERSISTENT_ALARMS_GROUP_T; +#endif + // ********** public function prototypes ********** void initPersistentAlarm( ALARM_ID_T alarmIndex, U32 persistentClearPeriod, U32 persistentTriggerPeriod ); Index: SystemComm.c =================================================================== diff -u -r3ca022103ce50b39e5d805b7577c7f360730412d -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- SystemComm.c (.../SystemComm.c) (revision 3ca022103ce50b39e5d805b7577c7f360730412d) +++ SystemComm.c (.../SystemComm.c) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -718,8 +718,8 @@ #ifdef _RO_ // TODO : clean up required // Remove message pending ACK from list - if ( ( ( getU32OverrideValue( &pendingACKOverride ) != PENDING_ACK_LIST_OVERRIDE_UI_CHANNEL ) || ( pendingAckList[ i ].channel != COMM_BUFFER_OUT_CAN_TD_2_UI ) ) && - ( ( getU32OverrideValue( &pendingACKOverride ) != PENDING_ACK_LIST_OVERRIDE_DD_CHANNEL ) || ( pendingAckList[ i ].channel != COMM_BUFFER_OUT_CAN_TD_2_DD ) ) ) + if ( /*( ( getU32OverrideValue( &pendingACKOverride ) != PENDING_ACK_LIST_OVERRIDE_UI_CHANNEL ) || ( pendingAckList[ i ].channel != COMM_BUFFER_OUT_CAN_TD_2_UI ) ) && */ + ( ( getU32OverrideValue( &pendingACKOverride ) != PENDING_ACK_LIST_OVERRIDE_DD_CHANNEL ) || ( pendingAckList[ i ].channel != COMM_BUFFER_OUT_CAN_RO_2_DD ) ) ) #endif { pendingAckList[ i ].used = FALSE; Index: TestSupport.c =================================================================== diff -u -r57be34611399b5080a5a98bee4f2eb3b7ba452f7 -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- TestSupport.c (.../TestSupport.c) (revision 57be34611399b5080a5a98bee4f2eb3b7ba452f7) +++ TestSupport.c (.../TestSupport.c) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -526,6 +526,9 @@ #ifdef _TD_ msg.hdr.msgID = MSG_ID_TD_SEND_TEST_CONFIGURATION; #endif +#ifdef _RO_ + //msg.hdr.msgID = //TODO update; +#endif msg.hdr.payloadLen = sizeof( testConfig ); for ( config = TEST_CONFIG_FIRST; config < NUM_OF_TEST_CONFIGS; ++config ) Index: TestSupport.h =================================================================== diff -u -r2cee3073ca8ba8d7023bc15dc42bd4959ff91e12 -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- TestSupport.h (.../TestSupport.h) (revision 2cee3073ca8ba8d7023bc15dc42bd4959ff91e12) +++ TestSupport.h (.../TestSupport.h) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -44,7 +44,6 @@ } OVERRIDE_TYPE_T; #ifdef _DD_ - /// DD test software configurations typedef enum test_Config_enums { @@ -58,7 +57,6 @@ #endif #ifdef _TD_ - /// TD test software configurations typedef enum test_Config { @@ -76,6 +74,15 @@ } TEST_CONFIG_T; #endif +#ifdef _RO_ +/// DD test software configurations +typedef enum test_Config_enums +{ + TEST_CONFIG_FIRST = 0, + NUM_OF_TEST_CONFIGS ///< Number of test configuration. +} TEST_CONFIG_T; +#endif + #pragma pack(push,1) /// Test configuration payload Index: Utilities.h =================================================================== diff -u -r2801d97e877dd78189aa891e80a2f7cf60a6a2b7 -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- Utilities.h (.../Utilities.h) (revision 2801d97e877dd78189aa891e80a2f7cf60a6a2b7) +++ Utilities.h (.../Utilities.h) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -63,6 +63,12 @@ TIME_WINDOWED_COUNT_FPGA_COMM_FAILURES, ///< FPGA communication failure (NAK, CRC, timeout) TIME_WINDOWED_COUNT_FPGA_DRAIN_PUMP_HALL_SENSOR_ERROR, ///< FPGA Drain pump hall sensor failure #endif +#ifdef _RO_ + TIME_WINDOWED_COUNT_FPGA_CONDUCTIVITY_SENSOR_ERROR, ///< FPGA Conductivity sensor error + TIME_WINDOWED_COUNT_FPGA_TEMPERATURE_SENSOR_ERROR, ///< FPGA Temperature sensor error + TIME_WINDOWED_COUNT_FPGA_COMM_FAILURES, ///< FPGA communication failure (NAK, CRC, timeout) + TIME_WINDOWED_COUNT_FPGA_DRAIN_PUMP_HALL_SENSOR_ERROR, ///< FPGA Drain pump hall sensor failure +#endif NUM_OF_TIME_WINDOWED_COUNTS ///< Number of pressure sensors } TIME_WINDOWED_COUNT_T; Index: WatchdogMgmt.c =================================================================== diff -u -r3ca022103ce50b39e5d805b7577c7f360730412d -rb16fb44ffe64e6ceb3e182d11485c3bb75dbad8f --- WatchdogMgmt.c (.../WatchdogMgmt.c) (revision 3ca022103ce50b39e5d805b7577c7f360730412d) +++ WatchdogMgmt.c (.../WatchdogMgmt.c) (revision b16fb44ffe64e6ceb3e182d11485c3bb75dbad8f) @@ -24,7 +24,8 @@ #include "SafetyShutdown.h" #endif #ifdef _RO_ -#include "FpgaRo.h" +#include "FpgaRO.h" +#include "SafetyShutdown.h" #endif //#include "InternalADC.h" #include "Messaging.h" @@ -124,6 +125,10 @@ // TODO : clean up once we get the clarity PIN_SIGNAL_STATE_T safetyShutdownFeedbackSignal = PIN_SIGNAL_HIGH; #endif +#ifdef _RO_ +// TODO : clean up once we get the clarity + PIN_SIGNAL_STATE_T safetyShutdownFeedbackSignal = PIN_SIGNAL_HIGH; +#endif PIN_SIGNAL_STATE_T safetyShutdownSoftwareCmd = ( TRUE == isSafetyShutdownActivated() ? PIN_SIGNAL_LOW : PIN_SIGNAL_HIGH ); // Called by background task, so give bg task credit for checking in @@ -148,7 +153,7 @@ #endif #ifdef _RO_ // Check to see if watchdog has expired or safety shutdown feedback does not match s/w command (only after POST completed) - if ( ( safetyShutdownSoftwareCmd != safetyShutdownFeedbackSignal ) && ( getCurrentOperationMode() != RO_MODE_INIT ) ) + if ( ( safetyShutdownSoftwareCmd != safetyShutdownFeedbackSignal ) && ( getCurrentOperationMode() != MODE_INIT ) ) #endif { if ( ( PIN_SIGNAL_LOW == safetyShutdownFeedbackSignal ) || ( TRUE == didTimeout( safetyShutdownFeedbackMismatchTS, MAX_SAFETY_SHUTDOWN_MISMATCH_MS ) ) )