コード例 #1
0
ファイル: dms_core.c プロジェクト: rgmabs19357/Huawei-
VOS_VOID dms_UsbEnableEvtProc(VOS_VOID)
{
    VOS_UINT32                          ulRet;
    NVE_INFO_S                          stAtServerNv;
    VOS_INT32                           lReadNvRet;

    VOS_MemSet(&stAtServerNv, 0, sizeof(NVE_INFO_S));
    VOS_MemCpy(stAtServerNv.nv_name, "ATSERV", sizeof("ATSERV"));
    stAtServerNv.nv_number      = NVE_AT_SERVER_INDEX;
    stAtServerNv.nv_operation   = NVE_READ_OPERATE;
    stAtServerNv.valid_size     = 1;

    g_usbPlugFlag = 1;

    DMS_DEBUG_SDM_FUN(EN_SDM_DMS_INIT,0, 0, 0);

    /* NVE只读取一次,读取后不再读取 */
    if (FALSE == g_stDmsMainInfo.bPortCfgFlg)
    {
        lReadNvRet = DRV_NVE_ACCESS(&stAtServerNv);
        g_dms_debug_atserv_nv_info.lOperatRet       = lReadNvRet;
        g_dms_debug_atserv_nv_info.ulNvValue        = stAtServerNv.nv_data[0];

        g_stDmsMainInfo.bPortCfgFlg                 = TRUE;

        /* nv值为1表示有at sever,非1表示无at sever,无at sever打开pcui和ctrl口 */
        if(1 != stAtServerNv.nv_data[0] || ERR_MSP_SUCCESS != lReadNvRet)
        {
            g_stDmsMainInfo.ulPortCfgValue = DMS_TEST_MODE;
        }
        else
        {
            g_stDmsMainInfo.ulPortCfgValue = DMS_NORMAL_MODE;
        }
    }

    if (DMS_TEST_MODE == g_stDmsMainInfo.ulPortCfgValue)
    {
        g_stDmsMainInfo.bPortOpenFlg = TRUE;

        /*打开 AT PCUI 通道*/
        ulRet = dmsVcomAtPcuiOpen();
        if(ERR_MSP_SUCCESS!=ulRet)
        {
            DMS_DEBUG_SDM_FUN(EN_SDM_DMS_INIT_ERR,0, 0, 3);
        }

        /*打开 AT CTRL 通道*/
        ulRet = dmsVcomCtrolOpen();
        if(ERR_MSP_SUCCESS!=ulRet)
        {
            DMS_DEBUG_SDM_FUN(EN_SDM_DMS_INIT_ERR,0, 0, 5);
        }
    }

    /*打开 NDIS CTRL 通道*/
    ulRet =  dms_NcmCfg();
    if(ERR_MSP_SUCCESS!=ulRet)
    {
        DMS_DEBUG_SDM_FUN(EN_SDM_DMS_INIT_ERR,0, 0, 4);
    }

    g_ulNdisCfgFlag = 1;

    return ;

}
コード例 #2
0
VOS_VOID DMS_UsbEnableCB(VOS_VOID)
{
    VOS_UINT32                          ulRet;
    NVE_INFO_S                          stAtServerNv;
    VOS_INT32                           lReadNvRet;

    VOS_MemSet(&stAtServerNv, 0, sizeof(NVE_INFO_S));
    VOS_MemCpy(stAtServerNv.nv_name, "ATSERV", sizeof("ATSERV"));
    stAtServerNv.nv_number      = NVE_AT_SERVER_INDEX;
    stAtServerNv.nv_operation   = NVE_READ_OPERATE;
    stAtServerNv.valid_size     = 1;

    DMS_DBG_SDM_FUN(DMS_SDM_USB_ENABLE, 0, 0, 0);

    /* NVE只读取一次,读取后不再读取 */
    if (VOS_FALSE == g_stDmsMainInfo.bPortCfgFlg)
    {
#if defined (CHIP_BB_HI6210)
        lReadNvRet = DRV_NVE_ACCESS(&stAtServerNv);
        g_dms_debug_atserv_nv_info.lOperatRet       = lReadNvRet;
#endif
        g_dms_debug_atserv_nv_info.ulNvValue        = stAtServerNv.nv_data[0];

        g_stDmsMainInfo.bPortCfgFlg                 = VOS_TRUE;

        /* nv值为1表示有at sever,非1表示无at sever,无at sever打开pcui和ctrl口 */
        if ((1 != stAtServerNv.nv_data[0])
#if defined (CHIP_BB_HI6210)
            || (ERR_MSP_SUCCESS != lReadNvRet)
#endif
            )
        {
            g_stDmsMainInfo.ulPortCfgValue = DMS_TEST_MODE;
        }
        else
        {
            g_stDmsMainInfo.ulPortCfgValue = DMS_NORMAL_MODE;
        }
    }

    if (DMS_TEST_MODE == g_stDmsMainInfo.ulPortCfgValue)
    {
        g_stDmsMainInfo.bPortOpenFlg = VOS_TRUE;

        /*打开 AT PCUI 通道*/
        ulRet = DMS_VcomPcuiOpen();
        if (ERR_MSP_SUCCESS != ulRet)
        {
            DMS_DBG_SDM_FUN(DMS_SDM_USB_ENABLE_ERR, 0, 0, 3);
        }

        /*打开 AT CTRL 通道*/
        ulRet = DMS_VcomCtrlOpen();
        if (ERR_MSP_SUCCESS != ulRet)
        {
            DMS_DBG_SDM_FUN(DMS_SDM_USB_ENABLE_ERR, 0, 0, 5);
        }
    }

    /*打开 NDIS CTRL 通道*/
    ulRet = DMS_NcmOpen();
    if (ERR_MSP_SUCCESS != ulRet)
    {
        DMS_DBG_SDM_FUN(DMS_SDM_USB_ENABLE_ERR, 0, 0, 4);
    }

    g_ulNdisCfgFlag = 1;

    return ;
}