您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ vos_mem_malloc函数代码示例

51自学网 2021-06-03 09:47:34
  C++
这篇教程C++ vos_mem_malloc函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中vos_mem_malloc函数的典型用法代码示例。如果您正苦于以下问题:C++ vos_mem_malloc函数的具体用法?C++ vos_mem_malloc怎么用?C++ vos_mem_malloc使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了vos_mem_malloc函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: csrTdlsProcessDelSta

eHalStatus csrTdlsProcessDelSta( tpAniSirGlobal pMac, tSmeCmd *cmd ){    tTdlsDelStaCmdInfo *tdlsDelStaCmdInfo = &cmd->u.tdlsCmd.u.tdlsDelStaCmdInfo ;    tSirTdlsDelStaReq *tdlsDelStaReq = NULL ;    tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, cmd->sessionId );    eHalStatus status = eHAL_STATUS_FAILURE;    if (NULL == pSession)    {        smsLog( pMac, LOGE, FL("pSession is NULL"));        return eHAL_STATUS_FAILURE;    }    if (NULL == pSession->pConnectBssDesc)    {        smsLog( pMac, LOGE, FL("BSS description is not present") );        return eHAL_STATUS_FAILURE;    }    tdlsDelStaReq = vos_mem_malloc(sizeof(tSirTdlsDelStaReq));    if ( NULL == tdlsDelStaReq )        status = eHAL_STATUS_FAILURE;    else        status = eHAL_STATUS_SUCCESS;    if (!HAL_STATUS_SUCCESS( status ) )    {        smsLog( pMac, LOGE, FL("alloc failed") );        VOS_ASSERT(0) ;        return status ;    }    tdlsDelStaReq->sessionId = cmd->sessionId;    //Using dialog as transactionId. This can be used to match response with request    tdlsDelStaReq->transactionId = 0;    vos_mem_copy( tdlsDelStaReq->bssid,                  pSession->pConnectBssDesc->bssId, sizeof (tSirMacAddr));    vos_mem_copy( tdlsDelStaReq->peerMac,            tdlsDelStaCmdInfo->peerMac, sizeof(tSirMacAddr)) ;    // Send the request to PE.#ifdef WLAN_FEATURE_TDLS_DEBUG    smsLog( pMac, LOGE,#else    smsLog( pMac, LOG1,#endif        "sending TDLS Del Sta "MAC_ADDRESS_STR" req to PE",         MAC_ADDR_ARRAY(tdlsDelStaCmdInfo->peerMac));    status = tdlsSendMessage(pMac, eWNI_SME_TDLS_DEL_STA_REQ,             (void *)tdlsDelStaReq , sizeof(tSirTdlsDelStaReq)) ;    if(!HAL_STATUS_SUCCESS( status ) )    {        smsLog( pMac, LOGE, FL("Failed to send request to MAC"));    }    return status;}
开发者ID:AmperificSuperKANG,项目名称:android_kernel_mako,代码行数:58,


示例2: aniSsmReplayCtrCreate

/** * aniSsmReplayCtrCreate * * Creates a replay counter and initializes it for first time * use. The initialization can be done randomly or with a passed in * value like 0. In case this is going to be used on the RX side, it * doesn't matter what the initialization is and can be optimized to * a fixed value so as to avoid the overhead of obtaining a random * value. * * @param ctrPtr a pointer that will be set to the newly allocated * counter if the operation succeeds * @param size the number of bytes that are desired in the counter * @param initValue if this is negative and size is greater than 4, * the initialization is done randomly. Otherwise, these bytes are * copied into the least significant four or less octets of the * counter, depending on the size of the counter. i.e., if the counter * is only 2B, then the least significant 2B of initValue will be * copied over. * * @return ANI_OK if the operation succeeds */intaniSsmReplayCtrCreate(v_U32_t cryptHandle, tAniSsmReplayCtr **ctrPtr,                       v_U8_t size,                      int initValue){    tAniSsmReplayCtr *ctr;    ctr = vos_mem_malloc( sizeof(tAniSsmReplayCtr) );    if( NULL == ctr )    {        return ANI_E_MALLOC_FAILED;    }    ctr->buf = vos_mem_malloc( size );    if (ctr->buf == NULL)     {        VOS_ASSERT( 0 );        vos_mem_free(ctr);        return ANI_E_MALLOC_FAILED;    }    ctr->size = size;    // We cannot randomly generate the most significant bytes if the    // total number of bytes is not greater than 4 (sizeof ANI_U32).    if (initValue < 0 && ctr->size <= 4)        initValue = 0;    // If initValue is negative, initialize the ctr randomly, else    // initialize it to what the user specified.    if (initValue < 0)     {        if( !VOS_IS_STATUS_SUCCESS( vos_rand_get_bytes(cryptHandle, ctr->buf, ctr->size) ) )        {            return ANI_ERROR;        }    }     else {        ctr->currentValue = initValue - 1;    }    *ctrPtr = ctr;    return ANI_OK;}
开发者ID:AmperificSuperKANG,项目名称:android_kernel_mako,代码行数:67,


示例3: limSendHalReqRemainOnChanOffload

/*------------------------------------------------------------------ * * Below function is called if pMac->fP2pListenOffload enabled and hdd * requests a remain on channel. * *------------------------------------------------------------------*/static eHalStatus limSendHalReqRemainOnChanOffload(tpAniSirGlobal pMac,                                      tSirRemainOnChnReq *pRemOnChnReq){    tSirScanOffloadReq *pScanOffloadReq;    tSirMsgQ msg;    tSirRetStatus rc = eSIR_SUCCESS;    tANI_U8 bssid[SIR_MAC_ADDR_LENGTH] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};    pScanOffloadReq = vos_mem_malloc(sizeof(tSirScanOffloadReq));    if (NULL == pScanOffloadReq)    {        limLog(pMac, LOGE,                FL("Memory allocation failed for pScanOffloadReq"));        return eHAL_STATUS_FAILURE;    }    vos_mem_zero(pScanOffloadReq, sizeof(tSirScanOffloadReq));    msg.type = WDA_START_SCAN_OFFLOAD_REQ;    msg.bodyptr = pScanOffloadReq;    msg.bodyval = 0;    vos_mem_copy((tANI_U8 *) pScanOffloadReq->selfMacAddr,                 (tANI_U8 *) pRemOnChnReq->selfMacAddr,                 sizeof(tSirMacAddr));    vos_mem_copy((tANI_U8 *) pScanOffloadReq->bssId,                 (tANI_U8 *) bssid,                 sizeof(tSirMacAddr));    pScanOffloadReq->scanType = eSIR_PASSIVE_SCAN;    pScanOffloadReq->p2pScanType = P2P_SCAN_TYPE_LISTEN;    pScanOffloadReq->minChannelTime = pRemOnChnReq->duration;    pScanOffloadReq->maxChannelTime = pRemOnChnReq->duration;    pScanOffloadReq->sessionId = pRemOnChnReq->sessionId;    pScanOffloadReq->channelList.numChannels = 1;    pScanOffloadReq->channelList.channelNumber[0] = pRemOnChnReq->chnNum;    limLog(pMac, LOG1,            FL("Req-rem-on-channel: duration %u, session %hu, chan %hu"),            pRemOnChnReq->duration, pRemOnChnReq->sessionId,            pRemOnChnReq->chnNum);    rc = wdaPostCtrlMsg(pMac, &msg);    if (rc != eSIR_SUCCESS)    {        limLog(pMac, LOGE, FL("wdaPostCtrlMsg() return failure %u"),                rc);        vos_mem_free(pScanOffloadReq);        return eHAL_STATUS_FAILURE;    }    pMac->lim.fOffloadScanPending = 1;    pMac->lim.fOffloadScanP2PListen = 1;    return eHAL_STATUS_SUCCESS;}
开发者ID:S5-APQ8084,项目名称:qcacld-2.0,代码行数:62,


示例4: csrTdlsProcessLinkEstablish

eHalStatus csrTdlsProcessLinkEstablish( tpAniSirGlobal pMac, tSmeCmd *cmd ){    tTdlsLinkEstablishCmdInfo *tdlsLinkEstablishCmdInfo = &cmd->u.tdlsCmd.u.tdlsLinkEstablishCmdInfo ;    tSirTdlsLinkEstablishReq *tdlsLinkEstablishReq = NULL ;    eHalStatus status = eHAL_STATUS_FAILURE;    tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, cmd->sessionId );    if (NULL == pSession)    {        smsLog( pMac, LOGE, FL("pSession is NULL"));        return eHAL_STATUS_FAILURE;    }    tdlsLinkEstablishReq = vos_mem_malloc(sizeof(tSirTdlsLinkEstablishReq));    if (tdlsLinkEstablishReq == NULL)    {        smsLog( pMac, LOGE, FL("alloc failed /n") );        VOS_ASSERT(0) ;        return status ;    }    tdlsLinkEstablishReq->sessionId = cmd->sessionId;    //Using dialog as transactionId. This can be used to match response with request    tdlsLinkEstablishReq->transactionId = 0;    vos_mem_copy(tdlsLinkEstablishReq->peerMac,                  tdlsLinkEstablishCmdInfo->peerMac, sizeof(tSirMacAddr));    vos_mem_copy(tdlsLinkEstablishReq->bssid, pSession->pConnectBssDesc->bssId,                  sizeof (tSirMacAddr));    vos_mem_copy(tdlsLinkEstablishReq->supportedChannels,                  tdlsLinkEstablishCmdInfo->supportedChannels,                  tdlsLinkEstablishCmdInfo->supportedChannelsLen);    tdlsLinkEstablishReq->supportedChannelsLen =                      tdlsLinkEstablishCmdInfo->supportedChannelsLen;    vos_mem_copy(tdlsLinkEstablishReq->supportedOperClasses,                  tdlsLinkEstablishCmdInfo->supportedOperClasses,                  tdlsLinkEstablishCmdInfo->supportedOperClassesLen);    tdlsLinkEstablishReq->supportedOperClassesLen =                      tdlsLinkEstablishCmdInfo->supportedOperClassesLen;    tdlsLinkEstablishReq->isBufSta = tdlsLinkEstablishCmdInfo->isBufSta;    tdlsLinkEstablishReq->isResponder= tdlsLinkEstablishCmdInfo->isResponder;    tdlsLinkEstablishReq->uapsdQueues= tdlsLinkEstablishCmdInfo->uapsdQueues;    tdlsLinkEstablishReq->maxSp= tdlsLinkEstablishCmdInfo->maxSp;    tdlsLinkEstablishReq->isOffChannelSupported =        tdlsLinkEstablishCmdInfo->isOffChannelSupported;    // Send the request to PE.    smsLog( pMac, LOGE, "sending TDLS Link Establish Request to PE /n" );    status = tdlsSendMessage(pMac, eWNI_SME_TDLS_LINK_ESTABLISH_REQ,                             (void *)tdlsLinkEstablishReq,                             sizeof(tSirTdlsLinkEstablishReq));    if (!HAL_STATUS_SUCCESS( status ) )    {        smsLog( pMac, LOGE, FL("Failed to send request to MAC/n"));    }    return status;}
开发者ID:daeiron,项目名称:LG_G3_Kernel,代码行数:56,


示例5: schSetFixedBeaconFields

tSirRetStatus schSetFixedBeaconFields(tpAniSirGlobal pMac,tpPESession psessionEntry){    tpAniBeaconStruct pBeacon = (tpAniBeaconStruct)                                   pMac->sch.schObject.gSchBeaconFrameBegin;    tpSirMacMgmtHdr mac;    tANI_U16        offset;    tANI_U8        *ptr;    tDot11fBeacon1 *pBcn1;    tDot11fBeacon2 *pBcn2;    tANI_U32        i, nStatus, nBytes;    tANI_U32        wpsApEnable=0, tmp;    tDot11fIEWscProbeRes      *pWscProbeRes;    tANI_U8  *pExtraIe = NULL;    tANI_U32 extraIeLen =0;    tANI_U16 extraIeOffset = 0;    tANI_U16 p2pIeOffset = 0;    tSirRetStatus status = eSIR_SUCCESS;    pBcn1 = vos_mem_malloc(sizeof(tDot11fBeacon1));    if ( NULL == pBcn1 )    {        schLog(pMac, LOGE, FL("Failed to allocate memory") );        return eSIR_FAILURE;    }    pBcn2 = vos_mem_malloc(sizeof(tDot11fBeacon2));    if ( NULL == pBcn2 )    {        schLog(pMac, LOGE, FL("Failed to allocate memory") );        vos_mem_free(pBcn1);        return eSIR_FAILURE;    }    pWscProbeRes = vos_mem_malloc(sizeof(tDot11fIEWscProbeRes));    if ( NULL == pWscProbeRes )    {        schLog(pMac, LOGE, FL("Failed to allocate memory") );        vos_mem_free(pBcn1);        vos_mem_free(pBcn2);        return eSIR_FAILURE;    }    PELOG1(schLog(pMac, LOG1, FL("Setting fixed beacon fields"));)
开发者ID:qtekfun,项目名称:htcDesire820Kernel,代码行数:43,


示例6: aniAsfPacketAllocateExplicit

/** * aniAsfPacketAllocateExplicit * * FUNCTION: * Create a packet of the desired size and position the head of the * packet at the desired offset in the internal raw data buffer. An * application would normally set this offset to the expected length * of the protocol header, then append the payload, and finally, * prepend the header. The allocated storage can be free with a call * to aniAsfPacketFree. * * LOGIC: * Allocates storage for tAniPacket and its internal raw data * buffer. Positions the head and tail pointers at the given offset in * the internal raw data buffer. * * @param packetPtr pointer that will be set to newly allocated * tAniPacket if the operation succeeds. * @param size the size of the internal raw data buffer * @param offset the offset in the internal raw data buffer where the * head of the packet will be positioned initially * * @return ANI_OK if the operation succeeds; ANI_E_MALLOC_FAILED if * memory could not be allocated. * @see aniAsfPacketFree */intaniAsfPacketAllocateExplicit(tAniPacket **packetPtr,                             v_U32_t size,                             v_U32_t offset){  tAniPacket *packet = NULL;  v_U32_t maxHead = size;  *packetPtr = NULL;  if (size == 0)    return ANI_E_ILLEGAL_ARG;  VOS_ASSERT(ANI_CHECK_RANGE(offset, maxHead));  if (!ANI_CHECK_RANGE(offset, maxHead))    return ANI_E_ILLEGAL_ARG;  packet = (tAniPacket *) vos_mem_malloc( sizeof(tAniPacket) );  if (packet == NULL)   {      VOS_ASSERT( 0 );      return ANI_E_MALLOC_FAILED;  }  // transparently add one to the size since last byte is wasted  size = (size + 4) & 0xfffffffc;  packet->buf = (v_U8_t *)vos_mem_malloc( sizeof(v_U8_t) * size );  if (packet->buf == NULL)   {      vos_mem_free( packet );      VOS_ASSERT( 0 );      return ANI_E_MALLOC_FAILED;  }  packet->size = size; // Should not be visible to the user  packet->head = packet->buf + offset;  packet->tail = packet->head;  packet->len = 0;  *packetPtr = packet;  return ANI_OK;}
开发者ID:AmperificSuperKANG,项目名称:android_kernel_mako,代码行数:69,


示例7: p2pProcessRemainOnChannelCmd

eHalStatus p2pProcessRemainOnChannelCmd(tpAniSirGlobal pMac, tSmeCmd *p2pRemainonChn){    eHalStatus status = eHAL_STATUS_FAILURE;    tSirRemainOnChnReq* pMsg;    tANI_U32 len;    tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, p2pRemainonChn->sessionId );    if(!pSession)    {       smsLog(pMac, LOGE, FL("  session %d not found "), p2pRemainonChn->sessionId);       goto error;    }    if(!pSession->sessionActive)    {       smsLog(pMac, LOGE, FL("  session %d is invalid or listen is disabled "),            p2pRemainonChn->sessionId);       goto error;    }    len = sizeof(tSirRemainOnChnReq) + pMac->p2pContext.probeRspIeLength;    if( len > 0xFFFF )    {       /*In coming len for Msg is more then 16bit value*/       smsLog(pMac, LOGE, FL("  Message length is very large, %d"),            len);       goto error;    }    pMsg = vos_mem_malloc(len);    if ( NULL == pMsg )        goto error;    else    {        VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_INFO, "%s call", __func__);        vos_mem_set(pMsg, sizeof(tSirRemainOnChnReq), 0);        pMsg->messageType = eWNI_SME_REMAIN_ON_CHANNEL_REQ;        pMsg->length = (tANI_U16)len;        vos_mem_copy(pMsg->selfMacAddr, pSession->selfMacAddr, sizeof(tSirMacAddr));        pMsg->chnNum = p2pRemainonChn->u.remainChlCmd.chn;        pMsg->phyMode = p2pRemainonChn->u.remainChlCmd.phyMode;        pMsg->duration = p2pRemainonChn->u.remainChlCmd.duration;        pMsg->sessionId = p2pRemainonChn->sessionId;        pMsg->isProbeRequestAllowed = p2pRemainonChn->u.remainChlCmd.isP2PProbeReqAllowed;        if( pMac->p2pContext.probeRspIeLength )           vos_mem_copy((void *)pMsg->probeRspIe, (void *)pMac->p2pContext.probeRspIe,                        pMac->p2pContext.probeRspIeLength);        status = palSendMBMessage(pMac->hHdd, pMsg);    }error:    if (eHAL_STATUS_FAILURE == status)       csr_release_roc_req_cmd(pMac);    return status;}
开发者ID:dianlujitao,项目名称:platform_vendor_qcom-opensource_wlan_qcacld-2.0,代码行数:55,


示例8: vos_timer_init_debug

VOS_STATUS vos_timer_init_debug( vos_timer_t *timer, VOS_TIMER_TYPE timerType,                            vos_timer_callback_t callback, v_PVOID_t userData,                            char* fileName, v_U32_t lineNum ){   VOS_STATUS vosStatus;    unsigned long flags;   // Check for invalid pointer   if ((timer == NULL) || (callback == NULL))    {      VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_ERROR,                 "%s: Null params being passed",__func__);      VOS_ASSERT(0);      return VOS_STATUS_E_FAULT;   }   timer->ptimerNode = vos_mem_malloc(sizeof(timer_node_t));   if(timer->ptimerNode == NULL)   {      VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_ERROR,                 "%s: Not able to allocate memory for timeNode",__func__);      VOS_ASSERT(0);      return VOS_STATUS_E_FAULT;   }   vos_mem_set(timer->ptimerNode, sizeof(timer_node_t), 0);    timer->ptimerNode->fileName = fileName;    timer->ptimerNode->lineNum   = lineNum;    timer->ptimerNode->vosTimer = timer;    spin_lock_irqsave(&vosTimerList.lock, flags);    vosStatus = hdd_list_insert_front(&vosTimerList, &timer->ptimerNode->pNode);    spin_unlock_irqrestore(&vosTimerList.lock, flags);    if(VOS_STATUS_SUCCESS != vosStatus)    {         VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_ERROR,              "%s: Unable to insert node into List vosStatus %d", __func__, vosStatus);    }      // set the various members of the timer structure    // with arguments passed or with default values   spin_lock_init(&timer->platformInfo.spinlock);   init_timer(&(timer->platformInfo.Timer));   timer->platformInfo.Timer.function = vos_linux_timer_callback;   timer->platformInfo.Timer.data = (unsigned long)timer;   timer->callback = callback;   timer->userData = userData;   timer->type = timerType;   timer->platformInfo.cookie = LINUX_TIMER_COOKIE;   timer->platformInfo.threadID = 0;   timer->state = VOS_TIMER_STATE_STOPPED;      return VOS_STATUS_SUCCESS;}
开发者ID:GSandeep24,项目名称:android_kernel_lenovo_msm8916,代码行数:55,


示例9: palAllocateMemory

eHalStatus palAllocateMemory( tHddHandle hHdd, void **ppMemory, tANI_U32 numBytes ){    eHalStatus halStatus = eHAL_STATUS_SUCCESS;    *ppMemory = vos_mem_malloc( numBytes );    if ( NULL == *ppMemory )    {        halStatus = eHAL_STATUS_FAILURE;    }    return( halStatus );}
开发者ID:supercairos,项目名称:android_kernel_doro_msm8916_2,代码行数:13,


示例10: ibss_coalesce_save

static voidibss_coalesce_save(    tpAniSirGlobal      pMac,    tpSirMacMgmtHdr     pHdr,    tpSchBeaconStruct   pBeacon){        ibss_coalesce_free(pMac);    pMac->lim.ibssInfo.pHdr = vos_mem_malloc(sizeof(*pHdr));    if (NULL == pMac->lim.ibssInfo.pHdr)    {        PELOGE(limLog(pMac, LOGE, FL("ibbs-save: Failed malloc pHdr"));)        return;
开发者ID:Alex-V2,项目名称:One_M8_4.4.3_kernel,代码行数:14,


示例11: aagPrf

intaagPrf(v_U32_t cryptHandle,       v_U8_t result[AAG_PRF_MAX_OUTPUT_SIZE],       v_U8_t *key, v_U8_t keyLen,       v_U8_t *a, v_U8_t aLen,       v_U8_t *b, v_U8_t bLen,       v_U32_t prfLen){    static v_U8_t y;    v_U8_t *hmacText = NULL;    v_U8_t *resultOffset = result;    int numLoops;    int loopCtrPos;    int i, retVal=0;    hmacText = vos_mem_malloc( aLen + bLen + 2 );    if( NULL == hmacText )    {        return ANI_E_NULL_VALUE;    }    vos_mem_copy(hmacText + 0, a, aLen);    hmacText[aLen] = y;    vos_mem_copy(hmacText + aLen + 1, b, bLen);    loopCtrPos = aLen + 1 + bLen;    numLoops = prfLen + AAG_PTK_PRF_ADD_PARAM;    numLoops /= AAG_PTK_PRF_DIV_PARAM;    for (i = 0; i < numLoops; i++)     {        VOS_ASSERT((resultOffset - result + VOS_DIGEST_SHA1_SIZE)               <= AAG_PRF_MAX_OUTPUT_SIZE);        hmacText[loopCtrPos] = i;        if( VOS_IS_STATUS_SUCCESS( vos_sha1_hmac_str(cryptHandle, hmacText, loopCtrPos + 1, key, keyLen, resultOffset) ) )        {            resultOffset += VOS_DIGEST_SHA1_SIZE;            retVal = ANI_OK;        }        else        {            retVal = ANI_ERROR;        }    }    vos_mem_free(hmacText);    return retVal;}
开发者ID:Alex-V2,项目名称:One_M8_4.4.3_kernel,代码行数:50,


示例12: macOpen

tSirRetStatus macOpen(tHalHandle *pHalHandle, tHddHandle hHdd, tMacOpenParameters *pMacOpenParms){    tpAniSirGlobal pMac = NULL;    if(pHalHandle == NULL)        return eSIR_FAILURE;    /*     * Make sure this adapter is not already opened. (Compare pAdapter pointer in already     * allocated pMac structures.)     * If it is opened just return pointer to previously allocated pMac pointer.     * Or should this result in error?     */    /* Allocate pMac */    pMac = vos_mem_malloc(sizeof(tAniSirGlobal));    if ( NULL == pMac )        return eSIR_FAILURE;    /* Initialize the pMac structure */    vos_mem_set(pMac, sizeof(tAniSirGlobal), 0);    /** Store the Driver type in pMac Global.*/    //pMac->gDriverType = pMacOpenParms->driverType;    /*     * Set various global fields of pMac here     * (Could be platform dependant as some variables in pMac are platform     * dependant)     */    pMac->hHdd      = hHdd;    pMac->pAdapter  = hHdd; //This line wil be removed    *pHalHandle     = (tHalHandle)pMac;    {        /* Call various PE (and other layer init here) */        if( eSIR_SUCCESS != logInit(pMac))           return eSIR_FAILURE;        /* Call routine to initialize CFG data structures */        if( eSIR_SUCCESS != cfgInit(pMac) )            return eSIR_FAILURE;        sysInitGlobals(pMac);    }    return peOpen(pMac, pMacOpenParms);}
开发者ID:Abhinav1997,项目名称:android_kernel_lge_msm8226,代码行数:49,


示例13: macStart

tSirRetStatus macStart(tHalHandle hHal, void* pHalMacStartParams){   tSirRetStatus status = eSIR_SUCCESS;   tpAniSirGlobal pMac = (tpAniSirGlobal) hHal;   if (NULL == pMac)   {      VOS_ASSERT(0);      status = eSIR_FAILURE;      return status;   }   pMac->gDriverType = ((tHalMacStartParameters*)pHalMacStartParams)->driverType;   sysLog(pMac, LOG2, FL("called/n"));   do   {#if defined(TRACE_RECORD)      //Enable Tracing      macTraceInit(pMac);#endif      pMac->pResetMsg = vos_mem_malloc(sizeof(tSirMbMsg));      if ( NULL == pMac->pResetMsg )      {         sysLog(pMac, LOGE, FL("pMac->pResetMsg is NULL/n"));         status = eSIR_FAILURE;         break;      }      else      {         vos_mem_set(pMac->pResetMsg, sizeof(tSirMbMsg), 0);      }      if (pMac->gDriverType != eDRIVER_TYPE_MFG)      {         status = peStart(pMac);      }   } while(0);   pMac->sys.abort = false;   return status;}
开发者ID:Abhinav1997,项目名称:android_kernel_lge_msm8226,代码行数:46,


示例14: tdlsSaveTdlsPeerInfo

/* * save TDLS peer info, this will be called after successfull completion * of TDLS discovery procedure. */static eHalStatus tdlsSaveTdlsPeerInfo(tpAniSirGlobal pMac,                                           tSirTdlsPeerInfo *disPeerInfo){    tCsrTdlsPeerLinkinfo *peerInfo = NULL ;     tCsrTdlsCtxStruct *disInfo = &pMac->tdlsCtx ;    eHalStatus status = eHAL_STATUS_FAILURE ;    /*      * Ok, allocate memory for peer info here     * we allocate memory for each peer here and free his memory     * at the time the peer node is getting deleted, possible case is      * teardown     */    peerInfo = vos_mem_malloc(sizeof(tCsrTdlsPeerLinkinfo));    if ( NULL = peerInfo )        status = eHAL_STATUS_FAILURE;    else        status = eHAL_STATUS_SUCCESS;    /*      * go ahead and copy peerInfo and insert this node info discovery rsp     * database.     */     if (HAL_STATUS_SUCCESS(status))    {        vos_mem_set( &peerInfo->tdlsDisPeerInfo,                                            sizeof(tSirTdlsPeerInfo), 0);        vos_mem_copy( &peerInfo->tdlsDisPeerInfo, disPeerInfo,                                             sizeof(tSirTdlsPeerInfo));        /*         * update TDLS client count to indicate there is tdls client         * in tdls potential peer list.         */        disInfo->tdlsPeerCount++ ;        /*         * finally insert this tdls peer info into tdls potential peer list         */        csrLLInsertTail( &disInfo->tdlsPotentialPeerList,                                  &peerInfo->tdlsPeerStaLink, LL_ACCESS_LOCK );    }    return status ;}
开发者ID:fantomlez,项目名称:android_kernel_acer_hemingway,代码行数:49,


示例15: csrTdlsProcessLinkEstablish

eHalStatus csrTdlsProcessLinkEstablish( tpAniSirGlobal pMac, tSmeCmd *cmd ){    tTdlsLinkEstablishCmdInfo *tdlsLinkEstablishCmdInfo = &cmd->u.tdlsCmd.u.tdlsLinkEstablishCmdInfo ;    tSirTdlsLinkEstablishReq *tdlsLinkEstablishReq = NULL ;    eHalStatus status = eHAL_STATUS_FAILURE;    tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, cmd->sessionId );    if (NULL == pSession)    {        smsLog( pMac, LOGE, FL("pSession is NULL"));        return eHAL_STATUS_FAILURE;    }    tdlsLinkEstablishReq = vos_mem_malloc(sizeof(tSirTdlsLinkEstablishReq));    if (tdlsLinkEstablishReq == NULL)    {        smsLog( pMac, LOGE, FL("alloc failed /n") );        VOS_ASSERT(0) ;        return status ;    }    tdlsLinkEstablishReq->sessionId = cmd->sessionId;        tdlsLinkEstablishReq->transactionId = 0;    palCopyMemory(pMac->hHdd, tdlsLinkEstablishReq->peerMac,                  tdlsLinkEstablishCmdInfo->peerMac, sizeof(tSirMacAddr));    palCopyMemory(pMac->hHdd, tdlsLinkEstablishReq->bssid, pSession->pConnectBssDesc->bssId,                  sizeof (tSirMacAddr));    tdlsLinkEstablishReq->isBufSta = tdlsLinkEstablishCmdInfo->isBufSta;    tdlsLinkEstablishReq->isResponder= tdlsLinkEstablishCmdInfo->isResponder;    tdlsLinkEstablishReq->uapsdQueues= tdlsLinkEstablishCmdInfo->uapsdQueues;    tdlsLinkEstablishReq->maxSp= tdlsLinkEstablishCmdInfo->maxSp;        smsLog( pMac, LOGE, "sending TDLS Link Establish Request to PE /n" );    status = tdlsSendMessage(pMac, eWNI_SME_TDLS_LINK_ESTABLISH_REQ,                             (void *)tdlsLinkEstablishReq,                             sizeof(tSirTdlsLinkEstablishReq));    if (!HAL_STATUS_SUCCESS( status ) )    {        smsLog( pMac, LOGE, FL("Failed to send request to MAC/n"));    }    return status;}
开发者ID:qtekfun,项目名称:htcDesire820Kernel,代码行数:45,


示例16: csrTdlsProcessChanSwitchReq

// tdlsoffchaneHalStatus csrTdlsProcessChanSwitchReq( tpAniSirGlobal pMac, tSmeCmd *cmd ){    tTdlsChanSwitchCmdInfo *tdlsChanSwitchCmdInfo = &cmd->u.tdlsCmd.u.tdlsChanSwitchCmdInfo ;    tSirTdlsChanSwitch *tdlsChanSwitch = NULL ;    eHalStatus status = eHAL_STATUS_FAILURE;    tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, cmd->sessionId );    if (NULL == pSession)    {        smsLog( pMac, LOGE, FL("pSession is NULL"));        return eHAL_STATUS_FAILURE;    }    tdlsChanSwitch = vos_mem_malloc(sizeof(tSirTdlsChanSwitch));    if (tdlsChanSwitch == NULL)    {        smsLog( pMac, LOGE, FL("alloc failed /n") );        VOS_ASSERT(0) ;        return status ;    }    tdlsChanSwitch->sessionId = cmd->sessionId;    //Using dialog as transactionId. This can be used to match response with request    tdlsChanSwitch->transactionId = 0;    vos_mem_copy( tdlsChanSwitch->peerMac,                  tdlsChanSwitchCmdInfo->peerMac, sizeof(tSirMacAddr));    vos_mem_copy(tdlsChanSwitch->bssid, pSession->pConnectBssDesc->bssId,                 sizeof (tSirMacAddr));    tdlsChanSwitch->tdlsOffCh = tdlsChanSwitchCmdInfo->tdlsOffCh;    tdlsChanSwitch->tdlsOffChBwOffset = tdlsChanSwitchCmdInfo->tdlsOffChBwOffset;    tdlsChanSwitch->tdlsSwMode = tdlsChanSwitchCmdInfo->tdlsSwMode;    // Send the request to PE.    smsLog( pMac, LOGE, "sending TDLS Channel Switch to PE /n" );    status = tdlsSendMessage(pMac, eWNI_SME_TDLS_CHANNEL_SWITCH_REQ,                             (void *)tdlsChanSwitch,                             sizeof(tSirTdlsChanSwitch));    if (!HAL_STATUS_SUCCESS( status ) )    {        smsLog( pMac, LOGE, FL("Failed to send request to MAC/n"));    }    return status;}
开发者ID:daeiron,项目名称:LG_G3_Kernel,代码行数:44,


示例17: allocateCfgReq

static tCfgReq * allocateCfgReq(tHddHandle hHdd, tANI_U32 type, tANI_S32 length){    tCfgReq *req ;    tANI_S32 alloc_len = sizeof(tCfgReq) ;    if (type == CCM_STRING_TYPE)    {        alloc_len += length ;    }    req = vos_mem_malloc(alloc_len);    if ( NULL == req )    {        return NULL ;    }    req->ccmPtr = (req+1);    return req ;}
开发者ID:fantomlez,项目名称:android_kernel_acer_hemingway,代码行数:20,


示例18: limProcessProbeRspFrame

voidlimProcessProbeRspFrame(tpAniSirGlobal pMac, tANI_U8 *pRxPacketInfo,tpPESession psessionEntry){    tANI_U8                 *pBody;    tANI_U32                frameLen = 0;    tSirMacAddr             currentBssId;    tpSirMacMgmtHdr         pHdr;    tSirProbeRespBeacon    *pProbeRsp;    tANI_U8 qosEnabled =    false;    tANI_U8 wmeEnabled =    false;    if (!psessionEntry)    {        limLog(pMac, LOGE, FL("psessionEntry is NULL") );        return;    }    limLog(pMac,LOG1,"SessionId:%d ProbeRsp Frame is received",                psessionEntry->peSessionId);    pProbeRsp = vos_mem_malloc(sizeof(tSirProbeRespBeacon));    if ( NULL == pProbeRsp )    {        limLog(pMac, LOGE, FL("Unable to allocate memory in limProcessProbeRspFrame") );        return;    }    pProbeRsp->ssId.length              = 0;    pProbeRsp->wpa.length               = 0;    pProbeRsp->propIEinfo.apName.length = 0;    pHdr = WDA_GET_RX_MAC_HEADER(pRxPacketInfo);   PELOG2(limLog(pMac, LOG2,             FL("Received Probe Response frame with length=%d from "),             WDA_GET_RX_MPDU_LEN(pRxPacketInfo));    limPrintMacAddr(pMac, pHdr->sa, LOG2);)   if (!pMac->fScanOffload)
开发者ID:supercairos,项目名称:android_kernel_doro_msm8916_2,代码行数:41,


示例19: sapChanSelInit

/*==========================================================================  FUNCTION    sapChanSelInit  DESCRIPTION     Function sapChanSelInit allocates the memory, intializes the         structures used by the channel selection algorithm  DEPENDENCIES     NA.   PARAMETERS     IN    *pSpectInfoParams  : Pointer to tSapChSelSpectInfo structure     RETURN VALUE    v_BOOL_t:  Success or FAIL    SIDE EFFECTS ============================================================================*/v_BOOL_t sapChanSelInit(tHalHandle halHandle, tSapChSelSpectInfo *pSpectInfoParams){    tSapSpectChInfo *pSpectCh = NULL;    v_U8_t *pChans = NULL;    v_U16_t channelnum = 0;    tpAniSirGlobal pMac = PMAC_STRUCT(halHandle);    VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s", __FUNCTION__);    // Channels for that 2.4GHz band    //Considered only for 2.4GHz need to change in future to support 5GHz support    pSpectInfoParams->numSpectChans = pMac->scan.base20MHzChannels.numChannels;           // Allocate memory for weight computation of 2.4GHz    pSpectCh = (tSapSpectChInfo *)vos_mem_malloc((pSpectInfoParams->numSpectChans) * sizeof(*pSpectCh));    if(pSpectCh == NULL) {        VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_ERROR, "In %s, VOS_MALLOC_ERR", __FUNCTION__);        return eSAP_FALSE;    }    vos_mem_zero(pSpectCh, (pSpectInfoParams->numSpectChans) * sizeof(*pSpectCh));    // Initialize the pointers in the DfsParams to the allocated memory    pSpectInfoParams->pSpectCh = pSpectCh;    pChans = pMac->scan.base20MHzChannels.channelList;    // Fill the channel number in the spectrum in the operating freq band    for (channelnum = 0; channelnum < pSpectInfoParams->numSpectChans; channelnum++) {        if(*pChans == 14 ) //OFDM rates are not supported on channel 14            continue;        pSpectCh->chNum = *pChans;        pSpectCh->valid = eSAP_TRUE;        pSpectCh->rssiAgr = SOFTAP_MIN_RSSI;// Initialise for all channels        pSpectCh++;        pChans++;    }    return eSAP_TRUE;}
开发者ID:ChangYeoun,项目名称:10.1,代码行数:61,


示例20: p2pSetPs

eHalStatus p2pSetPs(tHalHandle hHal, tP2pPsConfig *pNoA){    tpP2pPsConfig pNoAParam;    tSirMsgQ msg;    eHalStatus status = eHAL_STATUS_SUCCESS;    tpAniSirGlobal pMac = PMAC_STRUCT( hHal );    pNoAParam = vos_mem_malloc(sizeof(tP2pPsConfig));    if ( NULL == pNoAParam )       status = eHAL_STATUS_FAILURE;    else    {        vos_mem_set(pNoAParam, sizeof(tP2pPsConfig), 0);        vos_mem_copy(pNoAParam, pNoA, sizeof(tP2pPsConfig));        msg.type = eWNI_SME_UPDATE_NOA;        msg.bodyval = 0;        msg.bodyptr = pNoAParam;        limPostMsgApi(pMac, &msg);    }    return status;}
开发者ID:dianlujitao,项目名称:platform_vendor_qcom-opensource_wlan_qcacld-2.0,代码行数:21,


示例21: sendCfg

/* * CCM_STRING_TYPE                       CCM_INTEGER_TYPE * |<--------  4   ----->|               |<--------  4   ----->|                           * +----------+            <-- msg  -->  +----------+                                  * |type      |                          |type      |            * +----------+                          +----------+            * |msgLen=24 |                          |msgLen=16 |            * +----------+----------+               +----------+----------+ * | cfgId               |               | cfgId               |   * +---------------------+               +---------------------+ * | length=11           |               | length=4            |   * +---------------------+               +---------------------+ * |                     |               | value               |   * |                     |               +---------------------+   * |                     | * |                +----+ * |                |////| <- padding to 4-byte boundary * +----------------+----+ */static eHalStatus sendCfg(tpAniSirGlobal pMac, tHddHandle hHdd, tCfgReq *req, tANI_BOOLEAN fRsp){    tSirMbMsg *msg;    eHalStatus status;    tANI_S16 msgLen = (tANI_U16)(4 +    /* 4 bytes for msg header */                                 CFGOBJ_ID_SIZE +                                 CFGOBJ_LEN_SIZE +                                 CFGOBJ_ALIGN(req->length)) ;    msg = vos_mem_malloc(msgLen);    if ( NULL != msg )    {        if( fRsp )        {            msg->type = pal_cpu_to_be16(WNI_CFG_SET_REQ);        }        else        {            msg->type = pal_cpu_to_be16(WNI_CFG_SET_REQ_NO_RSP);        }        msg->msgLen = pal_cpu_to_be16(msgLen);        (void)encodeCfgReq(hHdd, msg->data, req->cfgId, req->length, req->ccmPtr, req->ccmValue, req->type) ;        status = palSendMBMessage(hHdd, msg) ;        if (status != eHAL_STATUS_SUCCESS)        {            smsLog( pMac, LOGW, FL("palSendMBMessage() failed"));            //No need to free msg. palSendMBMessage frees it.            status = eHAL_STATUS_FAILURE ;        }    }    else    {        smsLog( pMac, LOGW, FL("failed to allocate memory(len=%d)"), msgLen );        status = eHAL_STATUS_FAILURE;    }    return status ;}
开发者ID:fantomlez,项目名称:android_kernel_acer_hemingway,代码行数:58,


示例22: ath_procfs_diag_read

static ssize_t ath_procfs_diag_read(struct file *file, char __user *buf,					size_t count, loff_t *pos){	hif_handle_t            hif_hdl;	int rv;	A_UINT8 *read_buffer = NULL;	read_buffer = (A_UINT8 *)vos_mem_malloc(count);	if (NULL == read_buffer) {		pr_debug("%s: vos_mem_alloc failed/n", __func__);		return -EINVAL;	}	hif_hdl = get_hif_hdl_from_file(file);	pr_debug("rd buff 0x%p cnt %zu offset 0x%x buf 0x%p/n",			read_buffer,count,			(int)*pos, buf);	if ((count == 4) && ((((A_UINT32)(*pos)) & 3) == 0)) {		/* reading a word? */		rv = HIFDiagReadAccess(hif_hdl, (A_UINT32)(*pos),					(A_UINT32 *)read_buffer);	} else {		rv = HIFDiagReadMem(hif_hdl, (A_UINT32)(*pos),					(A_UINT8 *)read_buffer, count);	}	if(copy_to_user(buf, read_buffer, count)) {		vos_mem_free(read_buffer);		return -EFAULT;	} else		vos_mem_free(read_buffer);	if (rv == 0) {		return count;	} else {		return -EIO;	}}
开发者ID:Tkkg1994,项目名称:qcacld-2.0,代码行数:39,


示例23: ath_procfs_diag_write

static ssize_t ath_procfs_diag_write(struct file *file, const char __user *buf,					size_t count, loff_t *pos){	hif_handle_t            hif_hdl;	int rv;	A_UINT8 *write_buffer = NULL;	write_buffer = (A_UINT8 *)vos_mem_malloc(count);	if (NULL == write_buffer) {		pr_debug("%s: vos_mem_alloc failed/n", __func__);		return -EINVAL;	}	if(copy_from_user(write_buffer, buf, count)) {		vos_mem_free(write_buffer);		return -EFAULT;	}	hif_hdl = get_hif_hdl_from_file(file);	pr_debug("wr buff 0x%p buf 0x%p cnt %zu offset 0x%x value 0x%x/n",			write_buffer, buf, count,			(int)*pos, *((A_UINT32 *)write_buffer));	if ((count == 4) && ((((A_UINT32)(*pos)) & 3) == 0)) {		/* reading a word? */		A_UINT32 value = *((A_UINT32 *)write_buffer);		rv = HIFDiagWriteAccess(hif_hdl,					(A_UINT32)(*pos), value);	} else {		rv = HIFDiagWriteMem(hif_hdl, (A_UINT32)(*pos),					(A_UINT8 *)write_buffer, count);	}	vos_mem_free(write_buffer);	if (rv == 0) {		return count;	} else {		return -EIO;	}}
开发者ID:Tkkg1994,项目名称:qcacld-2.0,代码行数:39,


示例24: macOpen

tSirRetStatus macOpen(tHalHandle *pHalHandle, tHddHandle hHdd, tMacOpenParameters *pMacOpenParms){    tpAniSirGlobal pMac = NULL;    if(pHalHandle == NULL)        return eSIR_FAILURE;        pMac = vos_mem_malloc(sizeof(tAniSirGlobal));    if ( NULL == pMac )        return eSIR_FAILURE;        vos_mem_set(pMac, sizeof(tAniSirGlobal), 0);            pMac->hHdd      = hHdd;    pMac->pAdapter  = hHdd;     *pHalHandle     = (tHalHandle)pMac;    {                if( eSIR_SUCCESS != logInit(pMac))           return eSIR_FAILURE;                if( eSIR_SUCCESS != cfgInit(pMac) )            return eSIR_FAILURE;        sysInitGlobals(pMac);    }    return peOpen(pMac, pMacOpenParms);}
开发者ID:Alex-V2,项目名称:One_M8_4.4.3_kernel,代码行数:38,


示例25: macPreStart

tSirRetStatus macPreStart(tHalHandle hHal){   tSirRetStatus status = eSIR_SUCCESS;   tANI_BOOLEAN memAllocFailed = eANI_BOOLEAN_FALSE;   tpAniSirGlobal pMac = (tpAniSirGlobal) hHal;   tANI_U8 i;   for(i=0; i<MAX_DUMP_TABLE_ENTRY; i++)   {      pMac->dumpTableEntry[i] = vos_mem_malloc(sizeof(tDumpModuleEntry));      if ( NULL == pMac->dumpTableEntry[i] )      {         memAllocFailed = eANI_BOOLEAN_TRUE;         break;      }      else      {         vos_mem_set(pMac->dumpTableEntry[i], sizeof(tSirMbMsg), 0);      }   }   if( memAllocFailed )   {      while(i>0)      {         i--;         vos_mem_free(pMac->dumpTableEntry[i]);      }      sysLog(pMac, LOGE, FL("pMac->dumpTableEntry is NULL/n"));      status = eSIR_FAILURE;   }#if defined(ANI_LOGDUMP)   //logDumpInit must be called before any module starts   logDumpInit(pMac);#endif //#if defined(ANI_LOGDUMP)   return status;}
开发者ID:Abhinav1997,项目名称:android_kernel_lge_msm8226,代码行数:38,


示例26: palTimerAlloc_debug

eHalStatus palTimerAlloc_debug( tHddHandle hHdd, tPalTimerHandle *phPalTimer,                           palTimerCallback pCallback, void *pContext, char* fileName, v_U32_t lineNum  ){   eHalStatus halStatus = eHAL_STATUS_FAILURE;   tPalTimer *pPalTimer = NULL;   VOS_STATUS vosStatus;       do   {      // allocate the internal timer structure.      pPalTimer = vos_mem_malloc( sizeof( tPalTimer ) );      if ( NULL == pPalTimer ) break;             // initialize the vos Timer that underlies the pal Timer.      vosStatus = vos_timer_init_debug( &pPalTimer->vosTimer, VOS_TIMER_TYPE_SW,                                    internalTimerCallback, pPalTimer, fileName, lineNum );      if ( !VOS_IS_STATUS_SUCCESS( vosStatus ) )      {         // if fail to init the vos timer, free the memory and bail out.         vos_mem_free( pPalTimer );         break;      }            // initialize the info in the internal palTimer struct so we can       pPalTimer->timerCallback = pCallback;      pPalTimer->pContext      = pContext;      pPalTimer->hHdd          = hHdd;            // return a 'handle' to the caller.      *phPalTimer = pPalTimer;            halStatus = eHAL_STATUS_SUCCESS;         } while( 0 );              return( halStatus );}
开发者ID:supercairos,项目名称:android_kernel_doro_msm8916_2,代码行数:37,


示例27: p2pCancelRemainOnChannel

eHalStatus p2pCancelRemainOnChannel(tHalHandle hHal, tANI_U8 sessionId){    eHalStatus status = eHAL_STATUS_SUCCESS;    tpAniSirGlobal pMac = PMAC_STRUCT(hHal);    tSirMbMsgP2p *pMsg;    tANI_U16 msgLen;    //Need to check session ID to support concurrency    msgLen = (tANI_U16)(sizeof( tSirMbMsg ));    pMsg = vos_mem_malloc(msgLen);    if ( NULL == pMsg )       status = eHAL_STATUS_FAILURE;    else    {        vos_mem_set((void *)pMsg, msgLen, 0);        pMsg->type = pal_cpu_to_be16((tANI_U16)eWNI_SME_ABORT_REMAIN_ON_CHAN_IND);        pMsg->msgLen = pal_cpu_to_be16(msgLen);        pMsg->sessionId = sessionId;        status = palSendMBMessage(pMac->hHdd, pMsg);    }    return( status );}
开发者ID:dianlujitao,项目名称:platform_vendor_qcom-opensource_wlan_qcacld-2.0,代码行数:24,


示例28: sme_NanRequest

/****************************************************************************** * Function: sme_NanRequest * * Description: * This function gets called when HDD receives NAN vendor command * from user space * * Args: * Nan Request structure ptr * * Returns: * VOS_STATUS *****************************************************************************/VOS_STATUS sme_NanRequest(tpNanRequestReq input){	 vos_msg_t msg;	 tpNanRequest data;	 size_t data_len;	 data_len = sizeof(tNanRequest) + input->request_data_len;	 data = vos_mem_malloc(data_len);	 if (data == NULL) {		 VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_ERROR,				FL("Memory allocation failure"));		 return VOS_STATUS_E_FAULT;	 }	 vos_mem_zero(data, data_len);	 data->request_data_len = input->request_data_len;	 if (input->request_data_len) {		 vos_mem_copy(data->request_data,				input->request_data, input->request_data_len);	 }	 msg.type = WDA_NAN_REQUEST;	 msg.reserved = 0;	 msg.bodyptr = data;	 if (VOS_STATUS_SUCCESS != vos_mq_post_message(VOS_MODULE_ID_WDA,					 &msg)) {	 VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_ERROR,		FL("Not able to post WDA_NAN_REQUEST message to WDA"));		vos_mem_free(data);	 return VOS_STATUS_SUCCESS;	 }	 return VOS_STATUS_SUCCESS;}
开发者ID:dianlujitao,项目名称:platform_vendor_qcom-opensource_wlan_qcacld-2.0,代码行数:49,


示例29: limSendBeaconParams

/** * limSendBeaconParams() * *FUNCTION: * This function is called to send beacnon interval, short preamble or other * parameters to WDA, which are changed and indication is received in beacon. * *LOGIC: * *ASSUMPTIONS: * NA * *NOTE: * NA * * @param pMac  pointer to Global Mac structure. * @param tpUpdateBeaconParams pointer to the structure,                which contains the beacon parameters which are changed. * * @return success if message send is ok, else false. */tSirRetStatus limSendBeaconParams(tpAniSirGlobal pMac,                                   tpUpdateBeaconParams pUpdatedBcnParams,                                  tpPESession  psessionEntry ){    tpUpdateBeaconParams pBcnParams = NULL;    tSirRetStatus   retCode = eSIR_SUCCESS;    tSirMsgQ msgQ;    pBcnParams = vos_mem_malloc(sizeof(*pBcnParams));    if ( NULL == pBcnParams )    {        limLog( pMac, LOGP,            FL( "Unable to allocate memory during Update Beacon Params" ));        return eSIR_MEM_ALLOC_FAILED;    }    vos_mem_copy((tANI_U8 *) pBcnParams,  pUpdatedBcnParams, sizeof(*pBcnParams));    msgQ.type = WDA_UPDATE_BEACON_IND;    msgQ.reserved = 0;    msgQ.bodyptr = pBcnParams;    msgQ.bodyval = 0;    PELOG3(limLog( pMac, LOG3,                FL( "Sending WDA_UPDATE_BEACON_IND, paramChangeBitmap in hex = %x" ),                    pUpdatedBcnParams->paramChangeBitmap);)    if(NULL == psessionEntry)
开发者ID:SerenityS,项目名称:msm8916_platform_vendor_qcom-opensource_wlan_prima,代码行数:45,


示例30: limSendCFParams

/** * limSendCFParams() * *FUNCTION: * This function is called to send CFP Parameters to WDA, when they are changed. * *LOGIC: * *ASSUMPTIONS: * NA * *NOTE: * NA * * @param pMac  pointer to Global Mac structure. * @param bssIdx Bss Index of the BSS to which STA is associated. * @param cfpCount CFP Count, if that is changed. * @param cfpPeriod CFP Period if that is changed. * * @return success if message send is ok, else false. */tSirRetStatus limSendCFParams(tpAniSirGlobal pMac, tANI_U8 bssIdx, tANI_U8 cfpCount, tANI_U8 cfpPeriod){    tpUpdateCFParams pCFParams = NULL;    tSirRetStatus   retCode = eSIR_SUCCESS;    tSirMsgQ msgQ;    pCFParams = vos_mem_malloc(sizeof( tUpdateCFParams ));    if ( NULL == pCFParams )      {        limLog( pMac, LOGP,            FL( "Unable to allocate memory during Update CF Params" ));        retCode = eSIR_MEM_ALLOC_FAILED;        goto returnFailure;      }    vos_mem_set( (tANI_U8 *) pCFParams, sizeof(tUpdateCFParams), 0);    pCFParams->cfpCount = cfpCount;    pCFParams->cfpPeriod = cfpPeriod;    pCFParams->bssIdx     = bssIdx;    msgQ.type = WDA_UPDATE_CF_IND;    msgQ.reserved = 0;    msgQ.bodyptr = pCFParams;    msgQ.bodyval = 0;    limLog( pMac, LOG3,                FL( "Sending WDA_UPDATE_CF_IND..." ));    MTRACE(macTraceMsgTx(pMac, NO_SESSION, msgQ.type));    if( eSIR_SUCCESS != (retCode = wdaPostCtrlMsg( pMac, &msgQ )))    {        vos_mem_free(pCFParams);        limLog( pMac, LOGP,                    FL("Posting  WDA_UPDATE_CF_IND to WDA failed, reason=%X"),                    retCode );    }returnFailure:    return retCode;}
开发者ID:SerenityS,项目名称:msm8916_platform_vendor_qcom-opensource_wlan_prima,代码行数:57,



注:本文中的vos_mem_malloc函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ vp函数代码示例
C++ vos_mem_free函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。