Index: firmware/App/Modes/ModeSolo.c =================================================================== diff -u -r200edfc2ef75cf499887b4c85d22264ded0db125 -rc48a99d2d1c852adcc986253b6c420a90dab7bfe --- firmware/App/Modes/ModeSolo.c (.../ModeSolo.c) (revision 200edfc2ef75cf499887b4c85d22264ded0db125) +++ firmware/App/Modes/ModeSolo.c (.../ModeSolo.c) (revision c48a99d2d1c852adcc986253b6c420a90dab7bfe) @@ -1,4 +1,4 @@ -/************************************************************************** +/**********************************************************************//** * * Copyright (c) 2020 Diality Inc. - All Rights Reserved. * @@ -18,46 +18,73 @@ #include "ModeSolo.h" #include "CPLD.h" +/** + * @addtogroup SoloStandbyMode + * @{ + */ + +// ********** private definitions ********** + +/// Enumeration of solo standby mode states. +typedef enum Solo_States +{ + SOLO_STANDBY_STATE_START = 0, ///< Start solo standby mode state. + NUM_OF_SOLO_STANDBY_STATES ///< Number of solo standby mode states. +} SOLO_STANDBY_STATE_T; + // ********** private data ********** +static SOLO_STANDBY_STATE_T soloState = SOLO_STANDBY_STATE_START; ///< Currently active solo standby state. + // ********** private function prototypes ********** -/************************************************************************* +/*********************************************************************//** * @brief * The initSoloMode function initializes the Standby-Solo Mode module. * @details * Inputs : none * Outputs : Standby-Solo Mode module initialized. - * @param none * @return none *************************************************************************/ void initSoloMode( void ) { + soloState = SOLO_STANDBY_STATE_START; } -/************************************************************************* +/*********************************************************************//** * @brief * The transitionToSoloMode function prepares for transition to standby-solo mode. * @details * Inputs : none * Outputs : - * @param none * @return none *************************************************************************/ void transitionToSoloMode( void ) { + initSoloMode(); } -/************************************************************************* +/*********************************************************************//** * @brief * The execSoloMode function executes the Standby-Solo Mode state machine. * @details * Inputs : none * Outputs : - * @param none * @return none *************************************************************************/ void execSoloMode( void ) { + // execute current solo standby state + switch ( soloState ) + { + case SOLO_STANDBY_STATE_START: + break; + default: + soloState = SOLO_STANDBY_STATE_START; + // TODO - s/w fault + break; + } } + +/**@}*/