Esempio n. 1
0
VOS_VOID  MN_DispatchTafMsg (struct MsgCB * pstMsg)
{
    /* TAF->TAF的消息定义一个统一的结构体,取出消息分段 */
    TAF_INTERNAL_MSG_STRU              *pstTafMsg = VOS_NULL_PTR;

    pstTafMsg = (TAF_INTERNAL_MSG_STRU *)pstMsg;

    switch (pstTafMsg->ulMsgId & ID_TAF_MNTN_MSG_MASK)
    {
        /* 来自APS API的消息交给APS处理 */
        case ID_TAF_APS_INTERNAL_BASE:
            TAF_APS_ProcMsg(pstMsg);
            break;

        /* 发送给MSG的消息到MSG处理 */
        /* 目前只有ID_TAF_SPM_SMMA_REQ,MSG先发送到SPM进行域选择,域选择之后再到MSG处理 */
        case ID_TAF_MSG_INTERNAL_BASE:
            TAF_MSG_ProcTafMsg(pstMsg);
            break;

        /* 其他消息不需要处理 */
        default:
            MN_NORM_LOG("MN_DispatchTafMsg: Unknown message type.");
            break;
    }

    return;
}
Esempio n. 2
0
VOS_VOID  MN_ProcOmMsg (struct MsgCB * pstMsg)
{
    ID_NAS_OM_INQUIRE_STRU              *pstOmInquire;

    pstOmInquire = (ID_NAS_OM_INQUIRE_STRU *)pstMsg;

    switch ( pstOmInquire->usPrimId )
    {
        case ID_NAS_OM_SET_CODEC_TYPE_REQUIRE :
        case ID_NAS_OM_CODEC_TYPE_INQUIRE :
            MN_CALL_ProcOmMsg(pstMsg);
            break;
        case ID_NAS_OM_SET_DSFLOW_RPT_REQ :
            TAF_APS_ProcMsg(pstMsg);
            break;
        default:
            MN_NORM_LOG("MN_CALL_ProcOmMsg:wrong PrimId!");
            break;
    }

    return;
}
VOS_VOID MN_CALL_ProcOmMsg(
    VOS_VOID                            *pstMsg
)
{
    ID_NAS_OM_INQUIRE_STRU              *pstOmInquire;

    pstOmInquire = (ID_NAS_OM_INQUIRE_STRU *)pstMsg;

    switch ( pstOmInquire->usPrimId )
    {
        case ID_NAS_OM_SET_CODEC_TYPE_REQUIRE :
            MN_CALL_ProcOmConfigGsmCodec(pstOmInquire);
            break;

        case ID_NAS_OM_CODEC_TYPE_INQUIRE :
            MN_CALL_ProcOmCodecRpt(pstOmInquire);
            break;

        default:
            MN_NORM_LOG("MN_CALL_ProcOmMsg:wrong PrimId!");
            break;
    }

}
LOCAL VOS_VOID  MSG_GetEfCnfTimeout(
    VOS_UINT32                          ulParam
)
{
    MN_MSG_USIM_POWER_STATE_ENUM_U8     enPowerState;

    MN_MSG_GetUsimPowerState(&enPowerState);
    switch (enPowerState)
    {
        case MN_MSG_USIM_POWER_WAIT_EFSMSS:
            MN_NORM_LOG("MSG_GetEfCnfTimeout:WAIT EFSMSS");
            /*获取EFSMSP文件的内容*/
            if (TAF_SDC_SIM_TYPE_USIM == TAF_SDC_GetSimType())
            {
                MN_MSG_GetUsimParmReq(USIMM_USIM_EFSMSP_ID);
            }
            else
            {
                MN_MSG_GetUsimParmReq(USIMM_TELE_EFSMSP_ID);
            }
            break;
        case MN_MSG_USIM_POWER_WAIT_EFSMSP:
            /* 上报EFSMSP文件读取完成 */
            MN_MSG_SmspInitFinish(MN_CLIENT_ALL);
            MN_NORM_LOG("MSG_GetEfCnfTimeout:WAIT EFSMSP");
            /*获取EFSMS文件的内容*/
            if (TAF_SDC_SIM_TYPE_USIM == TAF_SDC_GetSimType())
            {
                MN_MSG_GetUsimParmReq(USIMM_USIM_EFSMS_ID);
            }
            else
            {
                MN_MSG_GetUsimParmReq(USIMM_TELE_EFSMS_ID);
            }
            break;
        case MN_MSG_USIM_POWER_WAIT_EFSMSREC:
            MN_NORM_LOG("MSG_GetEfCnfTimeout:WAIT EFSMSREC");
            /*获取EFSMSR文件的内容*/
            if (TAF_SDC_SIM_TYPE_USIM == TAF_SDC_GetSimType())
            {
                MN_MSG_GetUsimParmReq(USIMM_USIM_EFSMSR_ID);
            }
            else
            {
                MN_MSG_GetUsimParmReq(USIMM_TELE_EFSMSR_ID);
            }
            break;
        case MN_MSG_USIM_POWER_WAIT_EFSMS:
            MN_NORM_LOG("MSG_GetEfCnfTimeout:WAIT EFSMS");
            MSG_GetEfSmsTimerout();
            break;
        case MN_MSG_USIM_POWER_WAIT_EFSMSR:
            MN_NORM_LOG("MSG_GetEfCnfTimeout:WAIT EFSMSR");
            /*上报初始化完成*/
            MN_MSG_GetUsimParmReq(USIMM_DEF_FILEID_BUTT);
            break;
        default:
            MN_WARN_LOG("MSG_GetEfCnfTimeout:Invalid enPowerState");
            break;
    }
}