Functions
BCP LLD Functions
BCP LLD Data Structures & APIs

Functions

int32_t Bcp_addGlobalHeader (Bcp_GlobalHdrCfg *pGlobalHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addTMHeader (Bcp_TmHdrCfg *pTmHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addCRCHeader (Bcp_CrcHdrCfg *pCrcHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addxCdma_RMHeader (Bcp_RmHdr_xCdmaCfg *pRmHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addLte_RMHeader (Bcp_RmHdr_LteCfg *pRmHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addWiMax_RMHeader (Bcp_RmHdr_WiMaxCfg *pRmHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addEncoderHeader (Bcp_EncHdrCfg *pEncHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addModulatorHeader (Bcp_ModHdrCfg *pModHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addInterleaverHeader (Bcp_IntHdrCfg *pIntHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addCorrelationHeader (Bcp_CorHdrCfg *pCorHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addLTE_SSLHeader (Bcp_SslHdr_LteCfg *pSslHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addWCDMAFDD_SSLHeader (Bcp_SslHdr_WcdmaFddCfg *pSslHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addWCDMATDSCDMA_SSLHeader (Bcp_SslHdr_WcdmaTdScdmaCfg *pSslHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addWiMax_SSLHeader (Bcp_SslHdr_WiMaxCfg *pSslHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addDeinterleaverHeader (Bcp_DntHdrCfg *pDntHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addLTE_RDHeader (Bcp_RdHdr_LteCfg *pRdHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addxCdma_RDHeader (Bcp_RdHdr_xCdmaCfg *pRdHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_addDIOHeader (Bcp_DioHdrCfg *pDioHdrCfg, uint8_t *pData, uint32_t *pLen)
int32_t Bcp_lldOpen (uint8_t instNum, uint32_t cfgRegsBaseAddress, Bcp_LldObj *pBcpLldObj)
int32_t Bcp_lldClose (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_getEncPolyCoef1Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncPolyCoef1Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyCoefVal)
static int32_t Bcp_getEncPolyCoef2Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncPolyCoef2Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyCoefVal)
static int32_t Bcp_getEncPolyCoef3Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncPolyCoef3Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyCoefVal)
static int32_t Bcp_getEncScrInit0Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrInit0Reg (Bcp_LldObj *pBcpLldObj, uint32_t initVal)
static int32_t Bcp_getEncScrPoly0Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrPoly0Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyVal)
static int32_t Bcp_getEncCrc24Init0Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncCrc24Init0Reg (Bcp_LldObj *pBcpLldObj, uint32_t initVal)
static int32_t Bcp_getEncCrc24Poly0Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncCrc24Poly0Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyVal)
static int32_t Bcp_getEncScrInit1Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrInit1Reg (Bcp_LldObj *pBcpLldObj, uint32_t initVal)
static int32_t Bcp_getEncScrPoly1Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrPoly1Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyVal)
static int32_t Bcp_getEncCrc16Init1Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncCrc16Init1Reg (Bcp_LldObj *pBcpLldObj, uint32_t initVal)
static int32_t Bcp_getEncCrc16Poly1Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncCrc16Poly1Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyVal)
static int32_t Bcp_getEncScrInit2Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrInit2Reg (Bcp_LldObj *pBcpLldObj, uint32_t initVal)
static int32_t Bcp_getEncScrPoly2Reg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setEncScrPoly2Reg (Bcp_LldObj *pBcpLldObj, uint32_t polyVal)
static int32_t Bcp_getCorReedMullerTableColumn (Bcp_LldObj *pBcpLldObj, uint32_t colNum)
static int32_t Bcp_setCorReedMullerTableColumn (Bcp_LldObj *pBcpLldObj, uint32_t colNum, uint32_t mVal)
static int32_t Bcp_getCorControlReg (Bcp_LldObj *pBcpLldObj, uint8_t *pQpskMap00, uint8_t *pQpskMap01, uint8_t *pQpskMap10, uint8_t *pQpskMap11)
static int32_t Bcp_setCorControlReg (Bcp_LldObj *pBcpLldObj, uint8_t qpskMap00, uint8_t qpskMap01, uint8_t qpskMap10, uint8_t qpskMap11)
static int32_t Bcp_getPIDReg (Bcp_LldObj *pBcpLldObj, Bcp_PeripheralIdParams *pPIDParams)
static int32_t Bcp_doSoftwareReset (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_doSoftResetRxTeardown (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_doSoftResetTxTeardown (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_doSoftResetClockGateDisable (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_clearTMHalt (Bcp_LldObj *pBcpLldObj, Bcp_QueueId txQNum)
static int32_t Bcp_getTMHaltStatus (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_getEmulationClockStopStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleIdleStatus *pIdleStatus)
static int32_t Bcp_getEmulationClockStopControlReg (Bcp_LldObj *pBcpLldObj, uint8_t *pEmuRtSel, uint8_t *pEmuFreeRun)
static int32_t Bcp_setEmulationClockStopControlReg (Bcp_LldObj *pBcpLldObj, uint8_t emuRtSel, uint8_t emuFreeRun)
static int32_t Bcp_getDlgSwTimeStampReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setDlgSwTimeStampReg (Bcp_LldObj *pBcpLldObj, uint32_t tsVal)
static int32_t Bcp_getDlgHwTimeStampReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_resetDlgHwTimeStampReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setDlgHold (Bcp_LldObj *pBcpLldObj, Bcp_ModuleCfg *pDlgHoldCfg)
static int32_t Bcp_getDlgHoldStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleCfg *pDlgHoldStatus)
static int32_t Bcp_setDlgIdle (Bcp_LldObj *pBcpLldObj, Bcp_ModuleCfg *pDlgIdleCfg)
static int32_t Bcp_getDlgIdleStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleCfg *pDlgIdleStatus)
static int32_t Bcp_setDlgHoldResetReg (Bcp_LldObj *pBcpLldObj, uint32_t holdResetVal)
static int32_t Bcp_getDlgHoldResetReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setCdmaHpSrcId (Bcp_LldObj *pBcpLldObj, uint8_t srcId)
static int32_t Bcp_getCdmaHpSrcId (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_enableCdmaHp (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_disableCdmaHp (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_isCdmaHpEnabled (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_enableForcePayloadEndian (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_disableForcePayloadEndian (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_isForcePayloadEndianEnabled (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_enableTxCdmaHpReadArbPrio (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_disableTxCdmaHpReadArbPrio (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_isTxCdmaHpReadArbPrioEnabled (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setTMControlReg (Bcp_LldObj *pBcpLldObj, uint8_t srcId, uint8_t bCdmaDisable, uint8_t bFrcPayloadEndianDisable, uint8_t bTxRdArbPrioEnable)
static int32_t Bcp_getTMControlReg (Bcp_LldObj *pBcpLldObj, uint8_t *pSrcId, uint8_t *pIsCdmaDisabled, uint8_t *pIsFrcPayloadEndianDisabled, uint8_t *pIsTxRdArbPrioEnabled)
static int32_t Bcp_setTxCdmaHpReadPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[8])
static int32_t Bcp_getTxCdmaHpReadPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[8])
static int32_t Bcp_setTxQfifoReadDestSelReg (Bcp_LldObj *pBcpLldObj, uint8_t destSel[8], uint8_t prioVal[8])
static int32_t Bcp_getTxQfifoReadDestSelReg (Bcp_LldObj *pBcpLldObj, uint8_t destSel[8], uint8_t prioVal[8])
static int32_t Bcp_setRxQFifoWriteArbPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[4][8])
static int32_t Bcp_getRxQFifoWriteArbPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[4][8])
static int32_t Bcp_setRxCdmaWriteArbPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[8])
static int32_t Bcp_getRxCdmaWriteArbPrioReg (Bcp_LldObj *pBcpLldObj, uint8_t prioVal[8])
static int32_t Bcp_getCdmaDescStarveStatus (Bcp_LldObj *pBcpLldObj, uint8_t rxChNum)
static int32_t Bcp_setCdmaDescStarveClear (Bcp_LldObj *pBcpLldObj, uint8_t rxChNum)
static int32_t Bcp_setCdmaDescStarveSet (Bcp_LldObj *pBcpLldObj, uint8_t rxChNum)
static int32_t Bcp_setCdmaDescStarveInterruptSelect (Bcp_LldObj *pBcpLldObj, uint8_t rxChNum, uint8_t dspNum)
static int32_t Bcp_setHaltOnErrorReg (Bcp_LldObj *pBcpLldObj, uint8_t index, Bcp_ModuleCfg *pHaltCfg, uint8_t bForceHalt)
static int32_t Bcp_getHaltOnErrorReg (Bcp_LldObj *pBcpLldObj, uint8_t index, Bcp_ModuleCfg *pHaltCfg, uint8_t *pForceHaltEnabled)
static int32_t Bcp_getInterruptStatusReg (Bcp_LldObj *pBcpLldObj, uint8_t index, Bcp_ModuleCfg *pIntStatus)
static int32_t Bcp_setEoiReg (Bcp_LldObj *pBcpLldObj, uint8_t eoiVal)
static int32_t Bcp_getEoiReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_getTmFlowEntry (Bcp_LldObj *pBcpLldObj, uint8_t flow_index, Bcp_TmFlowEntry *pFlowEntry)
static int32_t Bcp_setTmFlowEntry (Bcp_LldObj *pBcpLldObj, uint8_t flow_index, Bcp_TmFlowEntry *pFlowEntry)
static int32_t Bcp_getDioVbusMPriorityReg (Bcp_LldObj *pBcpLldObj)
static int32_t Bcp_setDioVbusMPriorityReg (Bcp_LldObj *pBcpLldObj, uint32_t prioVal)
static int32_t Bcp_getModuleIntRawStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t *pEngErrStatus, uint8_t *pDlgDoneStatus, uint8_t *pPpbErrStatus)
static int32_t Bcp_setModuleIntRawStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t engErrStatus, uint8_t dlgDoneStatus, uint8_t ppbErrStatus)
static int32_t Bcp_clearModuleIntRawStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t engErrClrMask, uint8_t dlgDoneClrMask, uint8_t ppbErrClrMask)
static int32_t Bcp_getModuleIntEnable (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t *pEngErrEnable, uint8_t *pDlgDoneEnable, uint8_t *pPpbErrEnable)
static int32_t Bcp_setModuleIntEnable (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t engErrEnable, uint8_t dlgDoneEnable, uint8_t ppbErrEnable)
static int32_t Bcp_clearModuleIntEnable (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t engErrClrMask, uint8_t dlgDoneClrMask, uint8_t ppbErrClrMask)
static int32_t Bcp_getModuleIntEnableStatus (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint32_t index, uint8_t *pEngErrEnable, uint8_t *pDlgDoneEnable, uint8_t *pPpbErrEnable)
static int32_t Bcp_getModuleDlgControlReg (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, Bcp_DlgCtrlMode *pDlgCtlVal, uint16_t *pDlgErrMaskVal)
static int32_t Bcp_setModuleDlgControlReg (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, Bcp_DlgCtrlMode dlgCtlVal, uint16_t dlgErrMaskVal)
static int32_t Bcp_getModuleDlgStatusReg (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint8_t *pDlgRunningStatus, uint8_t *pDlgMemErrorStatus, uint8_t *pDlgWrWrapCount, uint8_t *pDlgWrPtr)
static int32_t Bcp_getModuleDlgGlobalHeaderReg (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId)
static int32_t Bcp_getModuleDlgRAMEntry (Bcp_LldObj *pBcpLldObj, Bcp_ModuleId moduleId, uint8_t entry_index, Bcp_DlgRamEntry *pRamEntry)

Function Documentation

int32_t Bcp_addCorrelationHeader ( Bcp_CorHdrCfg pCorHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addCorrelationHeader

brief
This API translates the Correlation (COR) engine header settings specified in the 'pCorHdrCfg' input parameter to a format that the correlation engine in BCP would understand. It appends the COR header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the COR header length added.

Parameters:
[in]pCorHdrCfgCorrelation header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the Correlation config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient correlation configuration provided.
  • 0 - Successfully added correlation header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addCRCHeader ( Bcp_CrcHdrCfg pCrcHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addCRCHeader

brief
This API translates the CRC header settings specified in the 'pCrcHdrCfg' input parameter to a format that the CRC engine in BCP would understand. It appends the CRC header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the CRC header length added.

Parameters:
[in]pCrcHdrCfgCRC header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the CRC config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient CRC configuration provided.
  • 0 - Successfully added CRC header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addDeinterleaverHeader ( Bcp_DntHdrCfg pDntHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addDeinterleaverHeader

brief
This API translates the De-interleaver (DNT) engine header settings specified in the 'pDntHdrCfg' input parameter to a format that the DNT engine in BCP would understand. It appends the DNT header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the DNT header length added.

Parameters:
[in]pDntHdrCfgDNT header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the DNT config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added DNT header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addDIOHeader ( Bcp_DioHdrCfg pDioHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addDIOHeader

brief
This API translates the DIO header settings specified in the 'pDioHdrCfg' input parameter to a format that the BCP would understand. It appends the DIO header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the DIO header length added.

Parameters:
[in]pDioHdrCfgDIO header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the DIO header config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added DIO header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addEncoderHeader ( Bcp_EncHdrCfg pEncHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addEncoderHeader

brief
This API translates the Encoder (ENC) submodule header settings specified in the 'pEncHdrCfg' input parameter to a format that the encoder engine in BCP would understand. It appends the ENC header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the ENC header length added.

Parameters:
[in]pEncHdrCfgEncoder header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the Encoder config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient encoder configuration provided.
  • 0 - Successfully added encoder header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addGlobalHeader ( Bcp_GlobalHdrCfg pGlobalHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addGlobalHeader

brief
This API translates the Global header settings specified in the 'pGlobalHdrCfg' input parameter to a format that the BCP would understand. It appends the Global header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the Global header length added.

Parameters:
[in]pGlobalHdrCfgGlobal header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the Global header config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added global header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addInterleaverHeader ( Bcp_IntHdrCfg pIntHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addInterleaverHeader

brief
This API translates the Interleaver (INT) submodule header settings specified in the 'pIntHdrCfg' input parameter to a format that the interleaver engine in BCP would understand. It appends the INT header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the INT header length added.

Parameters:
[in]pIntHdrCfgInterleaver header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the Interleaver config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient interleaver configuration provided.
  • 0 - Successfully added interleaver header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addLTE_RDHeader ( Bcp_RdHdr_LteCfg pRdHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addLTE_RDHeader

brief
This API translates the LTE Rate-dematcher (RD) engine header settings specified in the 'pRdHdrCfg' input parameter to a format that the RD engine in BCP would understand. It appends the RD header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the RD header length added.

Parameters:
[in]pRdHdrCfgRD header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the RD config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added RD header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addLte_RMHeader ( Bcp_RmHdr_LteCfg pRmHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addLte_RMHeader

brief
This API translates the LTE Rate Modulation (RM) header settings specified in the 'pRmHdrCfg' input parameter to a format that the RM engine in BCP would understand. It appends the RM header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the RM header length added.

Parameters:
[in]pRmHdrCfgLTE RM header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the LTE RM config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient LTE RM configuration provided.
  • 0 - Successfully added LTE RM header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addLTE_SSLHeader ( Bcp_SslHdr_LteCfg pSslHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addLTE_SSLHeader

brief
This API translates the LTE Soft Slicer (SSL) engine header settings specified in the 'pSslHdrCfg' input parameter to a format that the SSL engine in BCP would understand. It appends the SSL header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the SSL header length added.

Parameters:
[in]pSslHdrCfgLTE SSL header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the SSL config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added SSL header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addModulatorHeader ( Bcp_ModHdrCfg pModHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addModulatorHeader

brief
This API translates the Modulator (MOD) submodule header settings specified in the 'pModHdrCfg' input parameter to a format that the modulator engine in BCP would understand. It appends the MOD header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the MOD header length added.

Parameters:
[in]pModHdrCfgModulator header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the Modulator config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient modulator configuration provided.
  • 0 - Successfully added modulator header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addTMHeader ( Bcp_TmHdrCfg pTmHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addTMHeader

brief
This API translates the TM header settings specified in the 'pTmHdrCfg' input parameter to a format that the TM in BCP would understand. It appends the TM header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the TM header length added.

Parameters:
[in]pTmHdrCfgTM header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the TM config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient TM configuration provided.
  • 0 - Successfully added TM header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addWCDMAFDD_SSLHeader ( Bcp_SslHdr_WcdmaFddCfg pSslHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addWCDMAFDD_SSLHeader

brief
This API translates the WCDMA FDD Soft Slicer (SSL) engine header settings specified in the 'pSslHdrCfg' input parameter to a format that the SSL engine in BCP would understand. It appends the SSL header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the SSL header length added.

Parameters:
[in]pSslHdrCfgWCDMA FDD SSL header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the SSL config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added SSL header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addWCDMATDSCDMA_SSLHeader ( Bcp_SslHdr_WcdmaTdScdmaCfg pSslHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addWCDMATDSCDMA_SSLHeader

brief
This API translates the WCDMA TD-SCDMA Soft Slicer (SSL) engine header settings specified in the 'pSslHdrCfg' input parameter to a format that the SSL engine in BCP would understand. It appends the SSL header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the SSL header length added.

Parameters:
[in]pSslHdrCfgWCDMA TD-SCDMA SSL header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the SSL config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added SSL header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addWiMax_RMHeader ( Bcp_RmHdr_WiMaxCfg pRmHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addWiMax_RMHeader

brief
This API translates the WiMax Rate Modulation (RM) header settings specified in the 'pRmHdrCfg' input parameter to a format that the RM engine in BCP would understand. It appends the RM header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the RM header length added.

Parameters:
[in]pRmHdrCfgWiMax RM header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the WiMax RM config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient WiMax RM configuration provided.
  • 0 - Successfully added WiMax RM header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addWiMax_SSLHeader ( Bcp_SslHdr_WiMaxCfg pSslHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addWiMax_SSLHeader

brief
This API translates the WiMAX TD-SCDMA Soft Slicer (SSL) engine header settings specified in the 'pSslHdrCfg' input parameter to a format that the SSL engine in BCP would understand. It appends the SSL header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the SSL header length added.

Parameters:
[in]pSslHdrCfgWiMAX TD-SCDMA SSL header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the SSL config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added SSL header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addxCdma_RDHeader ( Bcp_RdHdr_xCdmaCfg pRdHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addxCdma_RDHeader

brief
This API translates the xCDMA (TD_SCDMA/WCDMA) Rate-dematcher (RD) engine header settings specified in the 'pRdHdrCfg' input parameter to a format that the RD engine in BCP would understand. It appends the RD header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the RD header length added.

Parameters:
[in]pRdHdrCfgRD header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the RD config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient configuration provided.
  • 0 - Successfully added RD header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
int32_t Bcp_addxCdma_RMHeader ( Bcp_RmHdr_xCdmaCfg pRmHdrCfg,
uint8_t *  pData,
uint32_t *  pLen 
)

============================================================================
Bcp_addxCdma_RMHeader

brief
This API translates the WCDMA/TD-SCDMA Rate Modulation (RM) header settings specified in the 'pRmHdrCfg' input parameter to a format that the RM engine in BCP would understand. It appends the RM header thus built to the data buffer passed to this API in 'pData' and increments the data buffer length by the RM header length added.

Parameters:
[in]pRmHdrCfgWCDMA/TD-SCDMA RM header input that needs to be formatted and added to the data buffer.
[out]pDataData buffer filled in as a result of successful translation of the xCDMA RM config provided as input to this function.
[out]pLenData buffer length pointer that will be incremented by the number of bytes configured by this API. This parameter will be updated only if the API was successful.
Returns:
int32_t
  • -1 - Invalid/Insufficient xCDMA RM configuration provided.
  • 0 - Successfully added xCDMA RM header to the data buffer.
Precondition:

The Data buffer pointer 'pData' must have been allocated memory before passing to this API. Also 'pLen' pointer passed to this API must be a valid pointer.
Postcondition:

The output params structure pData is populated accordingly and pLen parameter is updated with the number of bytes of configuration data filled in by this API. ============================================================================
static int32_t Bcp_clearModuleIntEnable ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t  engErrClrMask,
uint8_t  dlgDoneClrMask,
uint8_t  ppbErrClrMask 
) [inline, static]

============================================================================
Bcp_clearModuleIntEnable

brief
This API clears the contents of Interrupt Enable register for a given BCP submodule by writing to the interrupt enable clear register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be cleared.
[in]indexInterrupt enable register index to clear.
[in]engErrClrMaskEngine error clear mask.
[in]dlgDoneClrMaskDLG done clear bit.
[in]ppbErrClrMaskPPB error clear bit.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

INTR_EN_CLR register configured. Corresponding INTR_EN register cleared. ============================================================================
static int32_t Bcp_clearModuleIntRawStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t  engErrClrMask,
uint8_t  dlgDoneClrMask,
uint8_t  ppbErrClrMask 
) [inline, static]

============================================================================
Bcp_clearModuleIntRawStatus

brief
This API clears the contents of Interrupt Raw status register for any given BCP submodule by writing to the interrupt raw status clear register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be cleared.
[in]indexRaw status register index to clear.
[in]engErrClrMaskEngine error clear mask.
[in]dlgDoneClrMaskDLG done clear bit.
[in]ppbErrClrMaskPPB error clear bit.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

INTR_IRS_CLR register configured. Corresponding INTR_IRS register cleared. ============================================================================
static int32_t Bcp_clearTMHalt ( Bcp_LldObj *  pBcpLldObj,
Bcp_QueueId  txQNum 
) [inline, static]

============================================================================
Bcp_clearTMHalt

brief
Given a BCP Tx Queue Number, this API sets the "clear_halt" bit corresponding to it in the TM_HALT_CTRL register. This in turn clears the halt for the corresponding queue.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]txQNumBCP Tx Queue Number for which the TM halt bit must be cleared.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP TM Halt Control Register's 'clear_halt' bit set to initiate a clear operation. ============================================================================
static int32_t Bcp_disableCdmaHp ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_disableCdmaHp

brief
This API disables BCP CDMAHP, i.e., all signals from CDMAHP are masked off. Suitable for using the BCP CDMAHP in loopback mode.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. BCP CDMAHP turned off. ============================================================================
static int32_t Bcp_disableForcePayloadEndian ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_disableForcePayloadEndian

brief
This API clears forcing the payliod to follow the endian swapping settings regardless if it is in big or little endian.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_disableTxCdmaHpReadArbPrio ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_disableTxCdmaHpReadArbPrio

brief
This API disables raising priority of Tx CDMAHP paths with active packets.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_doSoftResetClockGateDisable ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_doSoftResetClockGateDisable

brief
This API configures the BCP Soft Reset Register element "clkgate_disable" to disable the clock gating done by PPBs when the engines are idle.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Clock Gate disable succesfully initiated.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP Soft Reset Register's bits configured as passed. ============================================================================
static int32_t Bcp_doSoftResetRxTeardown ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_doSoftResetRxTeardown

brief
This API configures the BCP Soft Reset Register element "Rx_teardown" to stop processing any packets in Rx path. If a port had an active packet it will send an EOP word to the QFIFO to finish off the packet to the CDMAHP.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Rx Teardown succesfully initiated.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP Soft Reset Register's bits configured as passed. ============================================================================
static int32_t Bcp_doSoftResetTxTeardown ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_doSoftResetTxTeardown

brief
This API configures the BCP Soft Reset Register element "Tx_teardown" to stop passing CDMAHP data to the QFIFOs in Tx path. Any CDMAHP Tx queue that has data will be read with the data dropped so the CDMAHP can process the full packet.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Tx Teardown succesfully initiated.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP Soft Reset Register's bits configured as passed. ============================================================================
static int32_t Bcp_doSoftwareReset ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_doSoftwareReset

brief
This API configures the BCP Soft Reset Register element "soft_rst" to perform a software reset on the entire BCP engine other than the CDMAHP and VBUSM interfaces.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Software reset succesfully initiated.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP Soft Reset Register's 'software reset' bit configured ============================================================================
static int32_t Bcp_enableCdmaHp ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_enableCdmaHp

brief
This API enables BCP CDMAHP.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. BCP CDMAHP turned on. ============================================================================
static int32_t Bcp_enableForcePayloadEndian ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_enableForcePayloadEndian

brief
This API enables forcing the payliod to follow the endian swapping settings regardless if it is in big or little endian.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_enableTxCdmaHpReadArbPrio ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_enableTxCdmaHpReadArbPrio

brief
This API enables raising priority of Tx CDMAHP paths with active packets.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_getCdmaDescStarveStatus ( Bcp_LldObj *  pBcpLldObj,
uint8_t  rxChNum 
) [inline, static]

============================================================================
Bcp_getCdmaDescStarveStatus

brief
This API returns the contents of Starve_Status field from the register CDMA_DESC_STARVE_STATUS.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]rxChNumRx Channel number for which the descriptor starvation status. Takes values from 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getCdmaHpSrcId ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getCdmaHpSrcId

brief
This API returns the Source Id setup for BCP CDMAHP.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Source Id read from TM_CONTROL register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getCorControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t *  pQpskMap00,
uint8_t *  pQpskMap01,
uint8_t *  pQpskMap10,
uint8_t *  pQpskMap11 
) [inline, static]

============================================================================
Bcp_getCorControlReg

brief
This API returns the contents of Correlation engine control register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]pQpskMap00Value read from QPSK Map 00 field.
[out]pQpskMap01Value read from QPSK Map 01 field.
[out]pQpskMap10Value read from QPSK Map 10 field.
[out]pQpskMap11Value read from QPSK Map 11 field.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success. Correlation engine control contents loaded into the output params passed.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getCorReedMullerTableColumn ( Bcp_LldObj *  pBcpLldObj,
uint32_t  colNum 
) [inline, static]

============================================================================
Bcp_getCorReedMullerTableColumn

brief
This API returns the contents of M register. Each of the M register corresponds to a Reed Muller Table column.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]colNumColumn number to be read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of M register corresponding to the column number specified.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDioVbusMPriorityReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getDioVbusMPriorityReg

brief
This API returns the contents of DIO VBUSM Priority register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of VBUSM_PRIORITY register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDlgHoldResetReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getDlgHoldResetReg

brief
This API returns the contents of BCP_DLG_HOLD_RST register. This API can be used to retrieve the hold and idle status of all BCP modules at once.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of BCP_DLG_HOLD_RST register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDlgHoldStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleCfg pDlgHoldStatus 
) [inline, static]

============================================================================
Bcp_getDlgHoldStatus

brief
This API returns the data logger hold status for all BCP submodules by reading the 'hold' bits from the BCP_DLG_HOLD_RST register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]pDlgHoldStatusHold bit configuration read from H/w for BCP submodules.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed/Invalid DLG configuration handle passed.
  • =0 - Success. Data logger hold status passed back in the handle specified.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDlgHwTimeStampReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getDlgHwTimeStampReg

brief
This API returns the contents of BCP Data logger Hardware time stamp register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of BCP_DLG_HW_TIMESTAMP register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDlgIdleStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleCfg pDlgIdleStatus 
) [inline, static]

============================================================================
Bcp_getDlgIdleStatus

brief
This API returns the data logger idle status for all BCP submodules by reading the 'reset' bit from the BCP_DLG_HOLD_RST register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]pDlgIdleStatusReset/Idle bit configuration read from H/w for all BCP submodules.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed/Invalid DLG Idle status handle passed.
  • =0 - Data logger idle status returned in the handle passed.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getDlgSwTimeStampReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getDlgSwTimeStampReg

brief
This API returns the contents of BCP Data logger Software time stamp register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of BCP_DLG_SW_TIMESTAMP register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP_DLG_SW_TIMESTAMP register configured. ============================================================================
static int32_t Bcp_getEmulationClockStopControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t *  pEmuRtSel,
uint8_t *  pEmuFreeRun 
) [inline, static]

============================================================================
Bcp_getEmulationClockStopControlReg

brief
This API returns the contents of BCP Emulation clock control stop register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]pEmuRtSelHolds emulation suspend signal selection bit.
[out]pEmuFreeRunIndicates if the hardware responds to/ignores the emulation suspend signal.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEmulationClockStopStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleIdleStatus pIdleStatus 
) [inline, static]

============================================================================
Bcp_getEmulationClockStopStatus

brief
This API returns the contents of BCP Emulation clock stop status register. The contents of register indicate the idle status of each of the BCP sub-modules.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]pIdleStatusStructure to be filled with the Idle status read from H/w.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncCrc16Init1Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncCrc16Init1Reg

brief
This API returns the contents of CRC16_INIT_1 register. The CRC16_INIT_1 register contains the CRC-16 initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of CRC16_INIT_1 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncCrc16Poly1Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncCrc16Poly1Reg

brief
This API returns the contents of CRC16_POLY_1 register. The CRC16_POLY_1 register contains the CRC-16 polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of CRC16_POLY_1 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncCrc24Init0Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncCrc24Init0Reg

brief
This API returns the contents of CRC24_INIT_0 register. The CRC24_INIT_0 register contains the CRC-24 initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of CRC24_INIT_0 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncCrc24Poly0Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncCrc24Poly0Reg

brief
This API returns the contents of CRC24_POLY_0 register. The CRC24_POLY_0 register contains the CRC-24 polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of CRC24_POLY_0 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncPolyCoef1Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncPolyCoef1Reg

brief
This API returns the contents of POLY_COEF1 register. The POLY_COEF1 register contains the convolutional encoder coefficient for WCDMA Code Rate 1/2.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of POLY_COEF1 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncPolyCoef2Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncPolyCoef2Reg

brief
This API returns the contents of POLY_COEF2 register. The POLY_COEF2 register contains the convolutional encoder coefficient for WCDMA Code Rate 1/3.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of POLY_COEF2 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncPolyCoef3Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncPolyCoef3Reg

brief
This API returns the contents of POLY_COEF3 register. The POLY_COEF3 register contains the convolutional encoder coefficient for LTE Code Rate 1/3.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of POLY_COEF3 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrInit0Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrInit0Reg

brief
This API returns the contents of SCR_INIT_0 register. The SCR_INIT_0 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_INIT_0 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrInit1Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrInit1Reg

brief
This API returns the contents of SCR_INIT_1 register. The SCR_INIT_1 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_INIT_1 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrInit2Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrInit2Reg

brief
This API returns the contents of SCR_INIT_2 register. The SCR_INIT_2 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_INIT_2 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrPoly0Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrPoly0Reg

brief
This API returns the contents of SCR_POLY_0 register. The SCR_POLY_0 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_POLY_0 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrPoly1Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrPoly1Reg

brief
This API returns the contents of SCR_POLY_1 register. The SCR_POLY_1 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_POLY_1 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEncScrPoly2Reg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEncScrPoly2Reg

brief
This API returns the contents of SCR_POLY_2 register. The SCR_POLY_2 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of SCR_POLY_2 register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getEoiReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getEoiReg

brief
This API returns the contents of BCP_EOI register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Success.BCP_EOI register contents returned.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getHaltOnErrorReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  index,
Bcp_ModuleCfg pHaltCfg,
uint8_t *  pForceHaltEnabled 
) [inline, static]

============================================================================
Bcp_getHaltOnErrorReg

brief
This API returns the contents of BCP_HALT_ON_ERROR register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]indexIndicates which of the 4 Halt on error registers to read.
[out]pHaltCfgHalt on error settings for all BCP submodules
[out]pForceHaltEnabled1 indicates Forced halt is enabled and 0 indicates otherwise.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getInterruptStatusReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  index,
Bcp_ModuleCfg pIntStatus 
) [inline, static]

============================================================================
Bcp_getInterruptStatusReg

brief
This API returns the contents of BCP_INTERRUPT_STATUS register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]indexIndicates which of the 4 Interrupt status registers to read.
[out]pIntStatusInterrupt status for all BCP submodules
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleDlgControlReg ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
Bcp_DlgCtrlMode pDlgCtlVal,
uint16_t *  pDlgErrMaskVal 
) [inline, static]

============================================================================
Bcp_getModuleDlgControlReg

brief
This API returns the contents of Data logger control register for any given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP submodule for which the DLG registers must be read.
[out]pDlgCtlValDLG control mode value read.
[out]pDlgErrMaskValDLG error mask value read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • =0 - Contents of DLG_CONTROL register returned in output parameters.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleDlgGlobalHeaderReg ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId 
) [inline, static]

============================================================================
Bcp_getModuleDlgGlobalHeaderReg

brief
This API returns the contents of Data logger global header register for any given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP submodule for which the DLG register must be read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of Data logger DLG_GLOBAL_HDR register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleDlgRAMEntry ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint8_t  entry_index,
Bcp_DlgRamEntry pRamEntry 
) [inline, static]

============================================================================
Bcp_getModuleDlgRAMEntry

brief
Given a BCP Submodule Id and a Data Logger RAM entry index, this API returns the contents of RAM entry corresponding to it from the submodule's Data logger RAM memory.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP submodule Id for which the RAM entry must be read.
[in]entry_indexRAM entry index to read.
[out]pRamEntryRAM entry contents corresponding to index passed.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleDlgStatusReg ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint8_t *  pDlgRunningStatus,
uint8_t *  pDlgMemErrorStatus,
uint8_t *  pDlgWrWrapCount,
uint8_t *  pDlgWrPtr 
) [inline, static]

============================================================================
Bcp_getModuleDlgStatusReg

brief
This API returns the contents of Data logger status register for any given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP submodule for which the DLG register must be read.
[out]pDlgRunningStatusSet while data is being captured by DLG. Cleared when the last location of memory is written if selected mode stops capturing when memory is full.
[out]pDlgMemErrorStatusWhen set, indicates there is atleast one error currently stored in DLG RAM.
[out]pDlgWrWrapCountNumber of times writing to memory wrapped to 0.
[out]pDlgWrPtrCurrent RAM Write Pointer.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • =0 - Contents of DLG_STATUS register returned succesfully in the output params.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleIntEnable ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t *  pEngErrEnable,
uint8_t *  pDlgDoneEnable,
uint8_t *  pPpbErrEnable 
) [inline, static]

============================================================================
Bcp_getModuleIntEnable

brief
This API returns the contents of Interrupt enable register for a given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be read.
[in]indexInterrupt enable register index to read.
[out]pEngErrEnableEngine error enable value read.
[out]pDlgDoneEnableData logger enable bit read.
[out]pPpbErrEnablePPB error enable bit read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • =0 - Contents of INTR_EN register returned succesfully in the output params.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleIntEnableStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t *  pEngErrEnable,
uint8_t *  pDlgDoneEnable,
uint8_t *  pPpbErrEnable 
) [inline, static]

============================================================================
Bcp_getModuleIntEnableStatus

brief
This API returns the contents of Interrupt enable status register for a given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be read.
[in]indexInterrupt enable status register index to read.
[out]pEngErrEnableEngine error enable value read.
[out]pDlgDoneEnableData logger enable bit read.
[out]pPpbErrEnablePPB error enable bit read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • =0 - Contents of INTR_EN_STS register succesfully returned in output params.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getModuleIntRawStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t *  pEngErrStatus,
uint8_t *  pDlgDoneStatus,
uint8_t *  pPpbErrStatus 
) [inline, static]

============================================================================
Bcp_getModuleIntRawStatus

brief
This API returns the contents of Interrupt raw status register for a given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be read.
[in]indexRaw status register index to read.
[out]pEngErrStatusEngine error raw status read.
[out]pDlgDoneStatusData logger raw status read.
[out]pPpbErrStatusPPB error raw status read.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Contents of INTR_IRS register returned in output parameters.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getPIDReg ( Bcp_LldObj *  pBcpLldObj,
Bcp_PeripheralIdParams pPIDParams 
) [inline, static]

============================================================================
Bcp_getPIDReg

brief
This API returns the contents of BCP PID Register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]pPIDParamsBCP PID Params object handle.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of BCP PID register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getRxCdmaWriteArbPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_getRxCdmaWriteArbPrioReg

brief
This API returns the contents of TM_RX_CDMAHP_WR_ARB_PRIORITY register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]prioValPriority values for writing CDMAHP for Tx queues 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getRxQFifoWriteArbPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[4][8] 
) [inline, static]

============================================================================
Bcp_getRxQFifoWriteArbPrioReg

brief
This API returns the contents of TM_RX_QFIFO_WR_ARB_PRIORITY_3_0 and TM_RX_QFIFO_WR_ARB_PRIORITY_7_4 registers. This API retrieves priorities configured for data from each PPB to the 8 BCP Tx queues.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]prioValPriority values for writing QFIFO 0...7 from PPB 0..3
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getTMControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t *  pSrcId,
uint8_t *  pIsCdmaDisabled,
uint8_t *  pIsFrcPayloadEndianDisabled,
uint8_t *  pIsTxRdArbPrioEnabled 
) [inline, static]

============================================================================
Bcp_getTMControlReg

brief
This API returns the contents of the TM_CONTROL register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]pSrcIdBCP CDMAHP Source Id.
[out]pIsCdmaDisabledCDMAHP disable status. 0 returned when CDMAHP enabled and 1 otherwise.
[out]pIsFrcPayloadEndianDisabledIndicates if Rx priority raise is enabled.
[out]pIsTxRdArbPrioEnabledIndicates if Tx priority raise is enabled.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Succesfully populated output params.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getTmFlowEntry ( Bcp_LldObj *  pBcpLldObj,
uint8_t  flow_index,
Bcp_TmFlowEntry pFlowEntry 
) [inline, static]

============================================================================
Bcp_getTmFlowEntry

brief
Given a TM Flow table index, this API returns the contents of Flow entry corresponding to it.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]flow_indexFlow table index to be read.
[out]pFlowEntryFlow entry contents corresponding to index passed.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getTMHaltStatus ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_getTMHaltStatus

brief
This API returns the contents of BCP TM Halt Status register (TM_HALT_STATUS).

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • >=0 - Contents of TM_HALT_STATUS register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getTxCdmaHpReadPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_getTxCdmaHpReadPrioReg

brief
This API returns the contents of TM_TX_CDMAHP_READ_PRIORITY register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]prioValCDMAHP read priorities for QFIFOs 0..7 returned from hardware.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_getTxQfifoReadDestSelReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  destSel[8],
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_getTxQfifoReadDestSelReg

brief
This API returns the contents of TM_TX_QFIFO_RD_DEST_SEL register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]destSelDestination select values for QFIFOs 0..7
[out]prioValPriority values for reading QFIFOs 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_isCdmaHpEnabled ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_isCdmaHpEnabled

brief
This API returns 1 if BCP CDMA HP is enabled, 0 otherwise.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0/1 - Reads CDMAHP enable status from TM_CONTROL register. Returns 0 to indicate CDMAHP is disabled and 1 to indicate it is enabled.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_isForcePayloadEndianEnabled ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_isForcePayloadEndianEnabled

brief
This API returns the value read from the "frc_payload_enable" field in the TM_CONTROL registration.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0/1 - Value read from register field.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_isTxCdmaHpReadArbPrioEnabled ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_isTxCdmaHpReadArbPrioEnabled

brief
This API returns 1 if BCP Tx CDMAHP read arbitration priority is enabled.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0/1 - Reads Tx CDMAHP read arbitration priority enable status from TM_CONTROL register. Returns 0 to indicate priority raise disabled and 1 to indicate it is enabled.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
int32_t Bcp_lldClose ( Bcp_LldObj *  pBcpLldObj)

============================================================================
Bcp_lldClose

brief
This API resets the contents of the BCP LLD Object handle passed to this function. The BCP Object handle is no longer valid for use with any of the BCP LLD MMR access APIs.

Parameters:
[out]pBcpLldObjPointer to BCP LLD Object structure that needs to be de-initialized.
Returns:
int32_t
  • -1 - Invalid LLD object handle provided.
  • 0 - Successfully de-initialized the LLD object provided.
Precondition:

The output BCP LLD object structure 'pBcpLldObj' passed must be a valid pointer.
Postcondition:

The BCP LLD object pointer's contents are all de-initialized. This object pointer is no longer valid for use with any of the BCP LLD MMR access APIs.
        Bcp_LldObj                 bcpLldObj;

        if (Bcp_lldClose (&bcpLldObj) != 0)
        {
            // Error closing BCP LLD for instance specified
            ...
        }
        else
        {
            // Successfully closed BCP LLD for instance specified
            ...
        }

============================================================================

int32_t Bcp_lldOpen ( uint8_t  instNum,
uint32_t  cfgRegsBaseAddress,
Bcp_LldObj *  pBcpLldObj 
)

============================================================================
Bcp_lldOpen

brief
This API initializes the output param 'pBcpLldObj' with the configuration register address for the peripheral instance corresponding to the instance number passed in 'instNum' parameter. This API MUST be called to initialize the BCP LLD object corresponding to a specific BCP peripheral instance before any of the BCP LLD APIs are invoked to configure that instance MMR.

Parameters:
[in]instNumBCP peripheral instance number for which the LLD object needs to be initialized.
[in]cfgRegsBaseAddressConfiguration registers (MMR) base address for this BCP instance.
[out]pBcpLldObjPointer to BCP LLD Object structure that needs to be initialized with the instance's configuration register overlay base address.
Returns:
int32_t
  • -1 - Invalid LLD object handle/ invalid instance number provided.
  • 0 - Successfully initialized the LLD object with the appropriate base address for the instance number provided.
Precondition:

The output BCP LLD object structure 'pBcpLldObj' passed must be a valid pointer.
Postcondition:

The BCP LLD object pointer passed is populated with appropriate base address for the configuration registers for the corresponding instance number.
        Bcp_LldObj                 bcpLldObj;

        if (Bcp_lldOpen (0, 0x35200000, &bcpLldObj) != 0)
        {
            // Error opening BCP LLD for 0 instance
            ...
        }
        else
        {
            // Successfully opened BCP LLD for instance specified
            ...
        }

============================================================================

static int32_t Bcp_resetDlgHwTimeStampReg ( Bcp_LldObj *  pBcpLldObj) [inline, static]

============================================================================
Bcp_resetDlgHwTimeStampReg

brief
This API initiates a reset on the Hardware timestamp control register by writing 1 to the BCP_DLG_HW_TIMESTAMP_CTRL register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success. Hardware timestamp register contents reset to 0.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

Hardware timestamp register BCP_DLG_HW_TIMESTAMP reset to 0. ============================================================================
static int32_t Bcp_setCdmaDescStarveClear ( Bcp_LldObj *  pBcpLldObj,
uint8_t  rxChNum 
) [inline, static]

============================================================================
Bcp_setCdmaDescStarveClear

brief
This API force clear the specified RX channel description starvation in "Starve_Status" field in the register CDMA_DESC_STARVE_STATUS.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]rxChNumRx Channel number for which the descriptor starvation status. Takes values from 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_setCdmaDescStarveInterruptSelect ( Bcp_LldObj *  pBcpLldObj,
uint8_t  rxChNum,
uint8_t  dspNum 
) [inline, static]

============================================================================
Bcp_setCdmaDescStarveInterruptSelect

brief
This API force set the specified RX channel description starvation in "Starve_Status" field in the register CDMA_DESC_STARVE_INTR_SEL.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]rxChNumRx Channel number selection from 0..7.
[in]dspNumDSP number from 0..3.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_setCdmaDescStarveSet ( Bcp_LldObj *  pBcpLldObj,
uint8_t  rxChNum 
) [inline, static]

============================================================================
Bcp_setCdmaDescStarveSet

brief
This API force set the specified RX channel description starvation in "Starve_Status" field in the register CDMA_DESC_STARVE_STATUS.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]rxChNumRx Channel number for which the descriptor starvation status. Takes values from 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_setCdmaHpSrcId ( Bcp_LldObj *  pBcpLldObj,
uint8_t  srcId 
) [inline, static]

============================================================================
Bcp_setCdmaHpSrcId

brief
This API sets up the Source Id for CDMAHP Info word.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]srcIdSource Id to use for BCP CDMAHP.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_setCorControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  qpskMap00,
uint8_t  qpskMap01,
uint8_t  qpskMap10,
uint8_t  qpskMap11 
) [inline, static]

============================================================================
Bcp_setCorControlReg

brief
This API populates the contents of Correlation engine control register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[out]qpskMap00Value to be written to QPSK Map 00 field.
[out]qpskMap01Value to be written to QPSK Map 01 field.
[out]qpskMap10Value to be written to QPSK Map 10 field.
[out]qpskMap11Value to be written to QPSK Map 11 field.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Correlation engine Control register succesfully configured.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

Correlation engine control register CONTROL configured. ============================================================================
static int32_t Bcp_setCorReedMullerTableColumn ( Bcp_LldObj *  pBcpLldObj,
uint32_t  colNum,
uint32_t  mVal 
) [inline, static]

============================================================================
Bcp_setCorReedMullerTableColumn

brief
This API populates the contents of M register. Each of the M register corresponds to a Reed Muller Table column.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]colNumColumn number to be updated.
[in]mValValue to configure in the register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

M register corresponding to column number specified configured. ============================================================================
static int32_t Bcp_setDioVbusMPriorityReg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  prioVal 
) [inline, static]

============================================================================
Bcp_setDioVbusMPriorityReg

brief
This API sets up the contents of DIO VBUSM Priority register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]prioValPriority value to configure. Value 0 is highest priority and 7 is considered lowest.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • =0 - Succesfully configured VBUSM_PRIORITY register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

VBUSM_PRIORITY register configured. ============================================================================
static int32_t Bcp_setDlgHold ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleCfg pDlgHoldCfg 
) [inline, static]

============================================================================
Bcp_setDlgHold

brief
This API puts data logger in hold state (DLG_HOLD) for all the BCP sub modules specified. It does so by writing 1 to the 'hold' bit in the BCP_DLG_HOLD_RST register corresponding to each of the modules that need to be put in hold.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]pDlgHoldCfgHold bit configuration for all the modules. To put a specific module in hold, set its corresponding bit in the structure to 1 and set to 0 otherwise.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed/Hold configuration handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

'hold' bits set to 1 in BCP_DLG_HOLD_RST register according to configuration specified. ============================================================================
static int32_t Bcp_setDlgHoldResetReg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  holdResetVal 
) [inline, static]

============================================================================
Bcp_setDlgHoldResetReg

brief
This API can be used to configure the hold and reset/idle settings in BCP_DLG_HOLD_RST register for all BCP modules at once.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]holdResetVal32-bit value to configure to the BCP Data logger Hold Reset register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP_DLG_HOLD_RST register configured with the value passed. ============================================================================
static int32_t Bcp_setDlgIdle ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleCfg pDlgIdleCfg 
) [inline, static]

============================================================================
Bcp_setDlgIdle

brief
This API sets up data logger in idle state (DLG_IDLE) as per the Idle configuration specified for all BCP submodules. It does so by writing 1 to the 'reset' bit in the BCP_DLG_HOLD_RST register corresponding to each of the modules that need to be put in idle state.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]pDlgIdleCfgIdle bit configuration for all the modules. To put a specific module in idle state, set its corresponding bit in the structure to 1 and set to 0 otherwise.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed/DLG Idle state configuration handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

Corresponding 'reset' bit set to 1 in BCP_DLG_HOLD_RST register. ============================================================================
static int32_t Bcp_setDlgSwTimeStampReg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  tsVal 
) [inline, static]

============================================================================
Bcp_setDlgSwTimeStampReg

brief
This API populates the contents of BCP Data logger Software time stamp register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]tsValSoftware timestamp value to configure in BCP_DLG_SW_TIMESTAMP register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_setEmulationClockStopControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  emuRtSel,
uint8_t  emuFreeRun 
) [inline, static]

============================================================================
Bcp_setEmulationClockStopControlReg

brief
This API sets up the contents of BCP Emulation clock control stop register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]emuRtSelEmulation suspend signal selection to configure. Set to 0 for BCP to monitor "emu_dbgsusp" signal and 1 for BCP to monitor "emu_dbgsusp_rt" signal.
[in]emuFreeRunSet to 0 for BCP to act upon the emulation suspend signal and to 1 for BCP to ignore the signal and run normally.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

None. ============================================================================
static int32_t Bcp_setEncCrc16Init1Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  initVal 
) [inline, static]

============================================================================
Bcp_setEncCrc16Init1Reg

brief
This API populates the contents of CRC16_INIT_1 register. The CRC16_INIT_1 register contains the CRC-16 initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]initValValue to configure in CRC16_INIT_1 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

CRC16_INIT_1 register configured. ============================================================================
static int32_t Bcp_setEncCrc16Poly1Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyVal 
) [inline, static]

============================================================================
Bcp_setEncCrc16Poly1Reg

brief
This API populates the contents of CRC16_POLY_1 register. The CRC16_POLY_1 register contains the CRC-16 polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyValValue to configure in CRC16_POLY_1 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

CRC16_POLY_1 register configured. ============================================================================
static int32_t Bcp_setEncCrc24Init0Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  initVal 
) [inline, static]

============================================================================
Bcp_setEncCrc24Init0Reg

brief
This API populates the contents of CRC24_INIT_0 register. The CRC24_INIT_0 register contains the CRC-24 initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]initValValue to configure in CRC24_INIT_0 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

CRC24_INIT_0 register configured. ============================================================================
static int32_t Bcp_setEncCrc24Poly0Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyVal 
) [inline, static]

============================================================================
Bcp_setEncCrc24Poly0Reg

brief
This API populates the contents of CRC24_POLY_0 register. The CRC24_POLY_0 register contains the CRC-24 polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyValValue to configure in CRC24_POLY_0 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

CRC24_POLY_0 register configured. ============================================================================
static int32_t Bcp_setEncPolyCoef1Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyCoefVal 
) [inline, static]

============================================================================
Bcp_setEncPolyCoef1Reg

brief
This API populates the contents of POLY_COEF1 register. The POLY_COEF1 register contains the convolutional encoder coefficient for WCDMA Code Rate 1/2.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyCoefValValue to configure in POLY_COEF1 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Encoder engine's POLY_COEF1 register successfully configured.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

POLY_COEF1 register configured. ============================================================================
static int32_t Bcp_setEncPolyCoef2Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyCoefVal 
) [inline, static]

============================================================================
Bcp_setEncPolyCoef2Reg

brief
This API populates the contents of POLY_COEF2 register. The POLY_COEF2 register contains the convolutional encoder coefficient for WCDMA Code Rate 1/3.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyCoefValValue to configure in POLY_COEF2 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

POLY_COEF2 register configured. ============================================================================
static int32_t Bcp_setEncPolyCoef3Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyCoefVal 
) [inline, static]

============================================================================
Bcp_setEncPolyCoef3Reg

brief
This API populates the contents of POLY_COEF3 register. The POLY_COEF3 register contains the convolutional encoder coefficient for LTE Code Rate 1/3.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyCoefValValue to configure in POLY_COEF3 register.
Returns:
void
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

POLY_COEF3 register configured. ============================================================================
static int32_t Bcp_setEncScrInit0Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  initVal 
) [inline, static]

============================================================================
Bcp_setEncScrInit0Reg

brief
This API populates the contents of SCR_INIT_0 register. The SCR_INIT_0 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]initValValue to configure in SCR_INIT_0 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_INIT_0 register configured. ============================================================================
static int32_t Bcp_setEncScrInit1Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  initVal 
) [inline, static]

============================================================================
Bcp_setEncScrInit1Reg

brief
This API populates the contents of SCR_INIT_1 register. The SCR_INIT_1 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]initValValue to configure in SCR_INIT_1 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_INIT_1 register configured. ============================================================================
static int32_t Bcp_setEncScrInit2Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  initVal 
) [inline, static]

============================================================================
Bcp_setEncScrInit2Reg

brief
This API populates the contents of SCR_INIT_2 register. The SCR_INIT_2 register contains the WiMax randomizer initialization value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]initValValue to configure in SCR_INIT_2 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_INIT_2 register configured. ============================================================================
static int32_t Bcp_setEncScrPoly0Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyVal 
) [inline, static]

============================================================================
Bcp_setEncScrPoly0Reg

brief
This API populates the contents of SCR_POLY_0 register. The SCR_POLY_0 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyValValue to configure in SCR_POLY_0 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_POLY_0 register configured. ============================================================================
static int32_t Bcp_setEncScrPoly1Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyVal 
) [inline, static]

============================================================================
Bcp_setEncScrPoly1Reg

brief
This API populates the contents of SCR_POLY_1 register. The SCR_POLY_1 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyValValue to configure in SCR_POLY_1 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_POLY_1 register configured. ============================================================================
static int32_t Bcp_setEncScrPoly2Reg ( Bcp_LldObj *  pBcpLldObj,
uint32_t  polyVal 
) [inline, static]

============================================================================
Bcp_setEncScrPoly2Reg

brief
This API populates the contents of SCR_POLY_2 register. The SCR_POLY_2 register contains the WiMax randomizer polynomial value.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]polyValValue to configure in SCR_POLY_2 register.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

SCR_POLY_2 register configured. ============================================================================
static int32_t Bcp_setEoiReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  eoiVal 
) [inline, static]

============================================================================
Bcp_setEoiReg

brief
This API sets up the contents of BCP_EOI register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]eoiValInterrupt vector to acknowledge.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP_EOI register configured with the values passed. ============================================================================
static int32_t Bcp_setHaltOnErrorReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  index,
Bcp_ModuleCfg pHaltCfg,
uint8_t  bForceHalt 
) [inline, static]

============================================================================
Bcp_setHaltOnErrorReg

brief
This API sets up the contents of BCP_HALT_ON_ERROR register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]indexIndicates which of the 4 Halt on error registers to configure.
[in]pHaltCfgHalt on error settings for all BCP submodules
[in]bForceHaltBoolean flag that indicates if a forced halt must be initiated.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

BCP_HALT_ON_ERROR register configured with the values passed. ============================================================================
static int32_t Bcp_setModuleDlgControlReg ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
Bcp_DlgCtrlMode  dlgCtlVal,
uint16_t  dlgErrMaskVal 
) [inline, static]

============================================================================
Bcp_setModuleDlgControlReg

brief
This API populates the contents of Data logger control register for any given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP submodule for which the DLG registers must be configured.
[out]dlgCtlValDLG control mode value to configure.
[out]dlgErrMaskValDLG error mask value to configure.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Succesfully configured the register.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

DLG_CONTROL register configured. ============================================================================
static int32_t Bcp_setModuleIntEnable ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t  engErrEnable,
uint8_t  dlgDoneEnable,
uint8_t  ppbErrEnable 
) [inline, static]

============================================================================
Bcp_setModuleIntEnable

brief
This API populates the contents of Interrupt Enable Set register for a given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be set.
[in]indexInterrupt enable register index.
[in]engErrEnableEngine error enable value to configure
[in]dlgDoneEnableDLG done enable bit value.
[in]ppbErrEnablePPB error enable bit value.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

INTR_EN_SET register configured. ============================================================================
static int32_t Bcp_setModuleIntRawStatus ( Bcp_LldObj *  pBcpLldObj,
Bcp_ModuleId  moduleId,
uint32_t  index,
uint8_t  engErrStatus,
uint8_t  dlgDoneStatus,
uint8_t  ppbErrStatus 
) [inline, static]

============================================================================
Bcp_setModuleIntRawStatus

brief
This API populates the contents of Interrupt Raw status set register for any given BCP submodule.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]moduleIdBCP Submodule for which the register must be set.
[in]indexRaw status register index to set.
[in]engErrStatusEngine error status value to configure
[in]dlgDoneStatusDLG done status value to configure
[in]ppbErrStatusPPB error status value to configure
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

INTR_IRS_SET register configured. ============================================================================
static int32_t Bcp_setRxCdmaWriteArbPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_setRxCdmaWriteArbPrioReg

brief
This API sets up the contents of TM_RX_CDMAHP_WR_ARB_PRIORITY register. This API sets up priorities for cdmahp_wr_arb writes to the CDMAHPs.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]prioValPriority values to configure for writing CDMAHP for BCP Tx queues 0..7
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_RX_CDMAHP_WR_ARB_PRIORITY register configured with the values passed. ============================================================================
static int32_t Bcp_setRxQFifoWriteArbPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[4][8] 
) [inline, static]

============================================================================
Bcp_setRxQFifoWriteArbPrioReg

brief
This API sets up the contents of TM_RX_QFIFO_WR_ARB_PRIORITY_3_0 and TM_RX_QFIFO_WR_ARB_PRIORITY_7_4 registers. This API sets priority for data from each PPB to the 8 BCP Tx queues.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]prioValPriority values for writing QFIFO 0...7 from PPB 0..3
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_RX_QFIFO_WR_ARB_PRIORITY_3_0 and TM_RX_QFIFO_WR_ARB_PRIORITY_7_4 registers configured with the values passed. ============================================================================
static int32_t Bcp_setTMControlReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  srcId,
uint8_t  bCdmaDisable,
uint8_t  bFrcPayloadEndianDisable,
uint8_t  bTxRdArbPrioEnable 
) [inline, static]

============================================================================
Bcp_setTMControlReg

brief
This API sets up the contents of TM_CONTROL register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]srcIdSource Id to use for BCP CDMAHP.
[in]bCdmaDisableSet to 1 to disable BCP CDMAHP and 0 otherwise.
[in]bFrcPayloadEndianDisableSet to 1 to enable raising priority of Rx QFIFO and 0 otherwise.
[in]bTxRdArbPrioEnableSet to 1 to enable raising priority of Tx CDMAHP paths and 0 otherwise.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_CONTROL register configured with the value passed. ============================================================================
static int32_t Bcp_setTmFlowEntry ( Bcp_LldObj *  pBcpLldObj,
uint8_t  flow_index,
Bcp_TmFlowEntry pFlowEntry 
) [inline, static]

============================================================================
Bcp_setTmFlowEntry

brief
Given a TM Flow table index, this API populates the contents of Flow entry corresponding to it.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]flow_indexFlow table index to be read.
[in]pFlowEntryFlow entry settings to be configured.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

FLOW_ID_TABLE register corresponding to flow_index specified configured. ============================================================================
static int32_t Bcp_setTxCdmaHpReadPrioReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_setTxCdmaHpReadPrioReg

brief
This API sets up the contents of TM_TX_CDMAHP_READ_PRIORITY register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]prioValArray of priority values to configure for reading CDMAHP for QFIFOs 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_TX_CDMAHP_READ_PRIORITY register configured with the values passed. ============================================================================
static int32_t Bcp_setTxQfifoReadDestSelReg ( Bcp_LldObj *  pBcpLldObj,
uint8_t  destSel[8],
uint8_t  prioVal[8] 
) [inline, static]

============================================================================
Bcp_setTxQfifoReadDestSelReg

brief
This API sets up the contents of TM_TX_QFIFO_RD_DEST_SEL register.

Parameters:
[in]pBcpLldObjBCP LLD instance object.
[in]destSelDestination select values for QFIFOs 0..7
[in]prioValPriority values to configure for reading QFIFOs 0..7.
Returns:
int32_t
  • -1 - Invalid BCP instance handle passed.
  • 0 - Success.
Precondition:

Bcp_lldOpen () must be called to obtain the register overlay handle for BCP instance before calling this API.
Postcondition:

TM_TX_QFIFO_RD_DEST_SEL register configured with the values passed. ============================================================================

Copyright 2014, Texas Instruments Incorporated