FreeCalypso > hg > fc-magnetite
diff src/aci2/aci/cmh_phbr.c @ 3:93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 26 Sep 2016 00:29:36 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/aci2/aci/cmh_phbr.c Mon Sep 26 00:29:36 2016 +0000 @@ -0,0 +1,163 @@ +/* ++----------------------------------------------------------------------------- +| Project : GSM-PS (6147) +| Modul : CMH_PHBR ++----------------------------------------------------------------------------- +| 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 module defines the functions which are responsible +| for the responses of the protocol stack adapter for +| the phonebook management. ++----------------------------------------------------------------------------- +*/ + +#ifndef CMH_PHBR_C +#define CMH_PHBR_C +#endif + +#include "aci_all.h" + +/*==== INCLUDES ===================================================*/ +#include "aci_cmh.h" +#include "ati_cmd.h" +#include "aci_cmd.h" +#include "aci.h" + +#ifdef FAX_AND_DATA +#include "aci_fd.h" +#endif /* of #ifdef FAX_AND_DATA */ + +#include "psa.h" +#include "psa_cc.h" +#include "psa_sim.h" + +#include "cmh.h" +#include "phb.h" + +#include "aci_lst.h" +#include "conc_sms.h" + +/*==== CONSTANTS ==================================================*/ + + +/*==== TYPES ======================================================*/ + + +/*==== EXPORT =====================================================*/ + + +/*==== VARIABLES ==================================================*/ + + +/*==== FUNCTIONS ==================================================*/ + +/* ++-------------------------------------------------------------------+ +| PROJECT : GSM-PS (6147) MODULE : CMH_PHBR | +| ROUTINE : cmhPHB_StatIndication | ++-------------------------------------------------------------------+ + + PURPOSE : + +*/ + +GLOBAL SHORT cmhPHB_StatIndication ( UBYTE psaStatus, SHORT cmeError, BOOL indicate ) +{ + UBYTE idx; /* used for counting */ + T_PHB_CMD_PRM * pPHBCmdPrm; + + TRACE_FUNCTION ("cmhPHB_StatIndication()"); + + switch ( psaStatus ) + { + case ( PHB_READY ): + { + simShrdPrm.pb_stat = PB_STAT_Ready; + + if (indicate) + { + percentCSTAT_indication(STATE_MSG_PBOOK, ENTITY_STATUS_Ready); + } + for (idx = 0; idx < CMD_SRC_MAX; idx++) + { + pPHBCmdPrm = &cmhPrm[idx].phbCmdPrm; + if (pPHBCmdPrm->curCmd EQ AT_CMD_CPBW) + { + pPHBCmdPrm->curCmd = AT_CMD_NONE; + R_AT (RAT_OK, idx) (AT_CMD_CPBW); + break; + } + } + break; + } + case ( PHB_WRITE_FAIL ): + { + simShrdPrm.pb_stat = PB_STAT_Ready; + + if (indicate) + { + percentCSTAT_indication(STATE_MSG_PBOOK, ENTITY_STATUS_Ready); + } + for (idx = 0; idx < CMD_SRC_MAX; idx++) + { + pPHBCmdPrm = &cmhPrm[idx].phbCmdPrm; + if (pPHBCmdPrm->curCmd EQ AT_CMD_CPBW) + { + pPHBCmdPrm->curCmd = AT_CMD_NONE; + R_AT( RAT_CME, idx)( AT_CMD_CPBW, cmeError ); + break; + } + } + break; + } + case ( PHB_BUSY ): + { +#ifdef TI_PS_FFS_PHB + simShrdPrm.pb_stat = PB_STAT_Busy; + break; +#endif + } + case ( PHB_UNKNOWN ): + { + simShrdPrm.pb_stat = PB_STAT_Blocked; + + if (indicate) + { + percentCSTAT_indication(STATE_MSG_PBOOK, ENTITY_STATUS_NotReady); + } + break; + } + default: + { + TRACE_EVENT("FATAL ERROR in cmhPHB_StatIndication"); + simShrdPrm.pb_stat = PB_STAT_Blocked; + return -1; + } + } + +#ifdef _CONC_TESTING_ + if (simShrdPrm.pb_stat EQ PB_STAT_Ready) + { + concSMS_delAllIncompleteMsg(); + } +#endif + + for( idx = 0; idx < CMD_SRC_MAX; idx++ ) + { + R_AT( RAT_PHB_STATUS, idx )( simShrdPrm.pb_stat ); + } + + return 0; +} + +/*==== EOF ========================================================*/ +