Index: AlarmMgmt.c =================================================================== diff -u -r68babd71d4e4fe088d302e4bf022868e23a88f40 -r9023ef607793bf8f9e0491da6b84b7da6f8e77de --- AlarmMgmt.c (.../AlarmMgmt.c) (revision 68babd71d4e4fe088d302e4bf022868e23a88f40) +++ AlarmMgmt.c (.../AlarmMgmt.c) (revision 9023ef607793bf8f9e0491da6b84b7da6f8e77de) @@ -19,11 +19,8 @@ #define __ALARM_MGMT_C__ -#ifdef _RO_ #include "FPOperationModes.h" -#else #include "OperationModes.h" -#endif #include "Messaging.h" #include "TaskGeneral.h" #include "Timers.h" @@ -92,9 +89,6 @@ #ifdef _DD_ 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_FP_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS, (U32)alarm ) -#endif } return result; @@ -125,9 +119,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_RANK, index ); #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_RANK, index ); -#endif } return result; @@ -171,9 +162,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE3, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE3, (U32)alarm ) -#endif } } @@ -190,9 +178,11 @@ *************************************************************************/ void clearAlarmCondition( ALARM_ID_T alarm ) { + ALARM_T props; // Verify given alarm if ( ( alarm > ALARM_ID_NO_ALARM ) && ( alarm < NUM_OF_ALARM_IDS ) ) { + props = getAlarmProperties( alarm ); // Clear alarm condition and broadcast alarm condition clear if not already cleared if ( TRUE == alarmIsDetected[ alarm ] ) { @@ -206,11 +196,15 @@ handleAutoResumeAlarm( alarm ); #endif #ifdef _DD_ - broadcastData( MSG_ID_ALARM_CONDITION_CLEARED, COMM_BUFFER_OUT_CAN_DD_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + if ( ALM_SRC_FP == props.alarmSource ) + { + broadcastData( MSG_ID_ALARM_CONDITION_CLEARED, COMM_BUFFER_OUT_CAN_FP_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + } + else + { + broadcastData( MSG_ID_ALARM_CONDITION_CLEARED, COMM_BUFFER_OUT_CAN_DD_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + } #endif -#ifdef _RO_ - broadcastData( MSG_ID_ALARM_CONDITION_CLEARED, COMM_BUFFER_OUT_CAN_FP_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); -#endif } } else @@ -221,9 +215,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR_COND, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR_COND, (U32)alarm ) -#endif } } @@ -240,9 +231,11 @@ *************************************************************************/ void clearAlarm( ALARM_ID_T alarm ) { + ALARM_T props; // Verify given alarm if ( ( alarm > ALARM_ID_NO_ALARM ) && ( alarm < NUM_OF_ALARM_IDS ) ) { + props = getAlarmProperties( alarm ); // Verify alarm can be cleared if ( FALSE == ALARM_TABLE[ alarm ].alarmNoClear ) { @@ -259,11 +252,15 @@ broadcastData( MSG_ID_ALARM_CLEARED, COMM_BUFFER_OUT_CAN_TD_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); #endif #ifdef _DD_ - broadcastData( MSG_ID_ALARM_CLEARED, COMM_BUFFER_OUT_CAN_DD_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + if ( ALM_SRC_FP == props.alarmSource ) + { + broadcastData( MSG_ID_ALARM_CLEARED, COMM_BUFFER_OUT_CAN_FP_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + } + else + { + broadcastData( MSG_ID_ALARM_CLEARED, COMM_BUFFER_OUT_CAN_DD_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); + } #endif -#ifdef _RO_ - broadcastData( MSG_ID_ALARM_CLEARED, COMM_BUFFER_OUT_CAN_FP_ALARM, (U08*)&data, sizeof( ALARM_ID_DATA_PUBLISH_T ) ); -#endif } } } @@ -275,9 +272,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR2, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR2, (U32)alarm ) -#endif } } @@ -337,9 +331,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED1, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED1, (U32)alarm ) -#endif } return result; @@ -374,9 +365,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED2, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED2, (U32)alarm ) -#endif } return result; @@ -408,9 +396,6 @@ #ifdef _DD_ SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED3, (U32)alarm ) #endif -#ifdef _RO_ - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED3, (U32)alarm ) -#endif } return result; @@ -459,9 +444,6 @@ #ifdef _DD_ clearAlarmDD( (ALARM_ID_T)alarmID ); #endif -#ifdef _RO_ - clearAlarmFP( (ALARM_ID_T)alarmID ); -#endif } result = TRUE; }