Index: firmware/App/Drivers/SafetyShutdown.c =================================================================== diff -u -r533272e6ef2873fcfe7a41338a6c88c7a601605d -r8e72441bc5cd51272b1dc6b14d6c95b4888d6301 --- firmware/App/Drivers/SafetyShutdown.c (.../SafetyShutdown.c) (revision 533272e6ef2873fcfe7a41338a6c88c7a601605d) +++ firmware/App/Drivers/SafetyShutdown.c (.../SafetyShutdown.c) (revision 8e72441bc5cd51272b1dc6b14d6c95b4888d6301) @@ -58,7 +58,7 @@ safetyShutdownSelfTestState = SAFETY_SHUTDOWN_SELF_TEST_STATE_START; safetyShutdownSelfTestStatus = SELF_TEST_STATUS_IN_PROGRESS; safetyShutdownSelfTestTimerCount = 0; - clear_saftety_shutdown(); + clear_safety_shutdown(); } /*********************************************************************//** @@ -179,66 +179,49 @@ safetyShutdownSelfTestState = SAFETY_SHUTDOWN_SELF_TEST_STATE_START; } + +/************************************************************************* + * TEST SUPPORT FUNCTIONS + *************************************************************************/ + + /*********************************************************************//** * @brief - * The testSetSafetyShutdownOverride function overrides the HD safety shutdown. + * The testSafetyShutdownOverride function overrides the safety + * shutdown. * @details \b Inputs: none - * @details \b Outputs: HD safety shutdown overridden - * @param value TRUE to activate safety shutdown, FALSE to de-activate it + * @details \b Outputs: FP safety shutdown overridden + * @param value TRUE to activate safety shutdown, FALSE to de-activate it. * @return TRUE if override successful, FALSE if not *************************************************************************/ -BOOL testSetSafetyShutdownOverride( U32 value ) +BOOL testSetResetSafetyShutdownOverride( MESSAGE_T *message ) { - BOOL result = FALSE; + BOOL result = FALSE; + TEST_OVERRIDE_PAYLOAD_T payload; + OVERRIDE_TYPE_T ovType = getOverridePayloadFromMessage( message, &payload ); - if ( TRUE == isTestingActivated() ) + // Verify tester has logged in with f/w and override type is valid + if ( ( TRUE == isTestingActivated() ) && ( ovType != OVERRIDE_INVALID ) && ( ovType < NUM_OF_OVERRIDE_TYPES ) ) { - // remember natural state before override so we can reset + BOOL value = (BOOL)payload.state.u32; + + // Remember natural state before override so we can reset safetyShutdownOverrideResetState = safetyShutdownActivated; - // override safety shutdown signal + // Override safety shutdown signal if ( value > 0 ) { activateSafetyShutdown(); } else { safetyShutdownActivated = FALSE; - clear_saftety_shutdown(); + clear_safety_shutdown(); } result = TRUE; } return result; } -/*********************************************************************//** - * @brief - * The testResetSafetyShutdownOverride function resets the override of the - * HD safety shutdown. - * @details \b Inputs: none - * @details \b Outputs: shutdown override reset - * @return TRUE if override reset successful, FALSE if not - *************************************************************************/ -BOOL testResetSafetyShutdownOverride( void ) -{ - BOOL result = FALSE; - - if ( TRUE == isTestingActivated() ) - { - if ( TRUE == safetyShutdownOverrideResetState ) - { - activateSafetyShutdown(); - } - else - { - safetyShutdownActivated = FALSE; - clear_saftety_shutdown(); - } - result = TRUE; - } - - return result; -} - /**@}*/