FreeCalypso > hg > fc-tourmaline
diff src/g23m-fad/ppp/ppp_rts.c @ 1:fa8dc04885d8
src/g23m-*: import from Magnetite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 16 Oct 2020 06:25:50 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/g23m-fad/ppp/ppp_rts.c Fri Oct 16 06:25:50 2020 +0000 @@ -0,0 +1,145 @@ +/* ++----------------------------------------------------------------------------- +| Project : +| Modul : ++----------------------------------------------------------------------------- +| Copyright 2002 Texas Instruments Berlin, AG +| All rights reserved. +| +| This file is confidential and a trade secret of Texas +| Instruments Berlin, AG +| The receipt of or possession of this file does not convey +| any rights to reproduce or disclose its contents or to +| manufacture, use, or sell anything it may describe, in +| whole, or in part, without the specific written consent of +| Texas Instruments Berlin, AG. ++----------------------------------------------------------------------------- +| Purpose : This modul is part of the entity PPP and implements all +| functions to handles the incoming process internal signals as +| described in the SDL-documentation (RT-statemachine) ++----------------------------------------------------------------------------- +*/ + +#define ENTITY_PPP + +/*==== INCLUDES =============================================================*/ + +#include "typedefs.h" /* to get Condat data types */ +#include "vsi.h" /* to get a lot of macros */ +#include "macdef.h" /* to get a lot of macros */ +#include "custom.h" /* to get a lot of macros */ +/*lint -efile(766,gsm.h) */ +#include "gsm.h" /* to get a lot of macros */ +/*lint -efile(766,cnf_ppp.h) */ +#include "cnf_ppp.h" /* to get cnf-definitions */ +/*lint -efile(766,mon_ppp.h) */ +#include "mon_ppp.h" /* to get mon-definitions */ +#include "prim.h" /* to get the definitions of used SAP and directions */ +#include "dti.h" /* to get the DTILIB definitions */ +#include "ppp.h" /* to get the global entity definitions */ + +/*==== CONST ================================================================*/ + +/*==== LOCAL VARS ===========================================================*/ + +/*==== PRIVATE FUNCTIONS ====================================================*/ + +/*==== PUBLIC FUNCTIONS =====================================================*/ + + + +/* ++------------------------------------------------------------------------------ +| Function : sig_arb_rt_parameters_req ++------------------------------------------------------------------------------ +| Description : Handles the internal signal SIG_ARB_RT_PARAMETERS_REQ. It +| initializes the timer value. +| +| Parameters : rt_time - restart time in seconds +| ++------------------------------------------------------------------------------ +*/ +GLOBAL void sig_arb_rt_parameters_req ( UBYTE rt_time ) +{ + TRACE_ISIG( "sig_arb_rt_parameters_req" ); + + switch( GET_STATE( PPP_SERVICE_RT ) ) + { + case RT_STOPPED: + case RT_STARTED: + ppp_data->rt.time=(T_TIME)rt_time * 1000; /* convert sec. to msec. */ + break; + + default: + TRACE_ERROR( "SIG_ARB_RT_PARAMETERS_REQ unexpected" ); + break; + } +} /* sig_arb_rt_parameters_req() */ + + + +/* ++------------------------------------------------------------------------------ +| Function : sig_any_rt_rrt_req ++------------------------------------------------------------------------------ +| Description : Handles the internal signal SIG_ANY_RT_RRT_REQ. It (re)starts +| the timer. +| +| Parameters : no parameters +| ++------------------------------------------------------------------------------ +*/ +GLOBAL void sig_any_rt_rrt_req () +{ + TRACE_ISIG( "sig_any_rt_rrt_req" ); + + vsi_t_start (VSI_CALLER RT_INDEX, ppp_data->rt.time); /*lint !e534 Ignoring return value */ + + switch( GET_STATE( PPP_SERVICE_RT ) ) + { + case RT_STOPPED: + SET_STATE( PPP_SERVICE_RT, RT_STARTED ); + break; + + case RT_STARTED: + break; + + default: + TRACE_ERROR( "SIG_ANY_RT_RRT_REQ unexpected" ); + break; + } +} /* sig_any_rt_rrt_req() */ + + + +/* ++------------------------------------------------------------------------------ +| Function : sig_any_rt_srt_req ++------------------------------------------------------------------------------ +| Description : Handles the internal signal SIG_ANY_RT_SRT_REQ. It stops the +| timer. +| +| Parameters : no parameters +| ++------------------------------------------------------------------------------ +*/ +GLOBAL void sig_any_rt_srt_req () +{ + TRACE_ISIG( "sig_any_rt_srt_req" ); + + vsi_t_stop (VSI_CALLER RT_INDEX); /*lint !e534 Ignoring return value */ + + switch( GET_STATE( PPP_SERVICE_RT ) ) + { + case RT_STARTED: + SET_STATE( PPP_SERVICE_RT, RT_STOPPED ); + break; + + case RT_STOPPED: + break; + + default: + TRACE_ERROR( "SIG_ANY_RT_SRT_REQ unexpected" ); + break; + } +} /* sig_any_rt_srt_req() */