- /* L2 optimization for mUe/Tti: Pre-allocated mBuf pointers(macHdr,
- * macCes and MacPad) of harq TB need to be reset to db_base
- */
- tb = &(hqP->tbInfo[idx].tb);
- if (tb->tbPres == TRUE)
- {
- RG_FREE_TB(tb);
- }
-#endif
-
- if((NULLP == dStaInd[rguDlSpId]) && (allocInfo->tbInfo[idx].numSchLch))
- {
- if ((rgAllocShrablSBuf (inst,(Data**)&dStaInd[rguDlSpId], sizeof(RguDStaIndInfo))) != ROK)
- {
- err->errType = RGERR_DHM_SND_STA_IND;
- err->errCause = RG_DHM_MEM_ALLOC_FAIL;
- /* Need to return as memory allocation will fail for other UEs also*/
- RETVALUE(RFAILED);
- }
- dStaInd[rguDlSpId]->nmbOfUeGrantPerTti = 0;
- rguDlSap[rguDlSpId] = ue->rguDlSap;
- activeSapCnt++;
- }
-
- for (lcIdx = 0;
- lcIdx < allocInfo->tbInfo[idx].numSchLch; lcIdx++)
- {
- hqP->tbInfo[idx].schdData[lcIdx].lcId =
- allocInfo->tbInfo[idx].schdDat[lcIdx].lcId;
- if (hqP->tbInfo[idx].schdData[lcIdx].lcId == 0)
- {
- RLOG_ARG2(L_ERROR,DBG_CELLID,cell->cellId,
- "CCCH grant in DStaInd for LCID:%d CRNTI:%d",
- hqP->tbInfo[idx].schdData[lcIdx].lcId,allocInfo->rnti);
- }
- hqP->tbInfo[idx].schdData[lcIdx].schdSz =
- allocInfo->tbInfo[idx].schdDat[lcIdx].numBytes;
- if(dStaInd[rguDlSpId])
- {
- dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].\
- lchStaInd[lcIdx].lcId = allocInfo->tbInfo[idx].\
- schdDat[lcIdx].lcId;
- dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].\
- lchStaInd[lcIdx].totBufSize = allocInfo->tbInfo[idx].\
- schdDat[lcIdx].numBytes;
- }
-
- lchBufSize+=allocInfo->tbInfo[idx].schdDat[lcIdx].numBytes;
- }
- hqP->tbInfo[idx].numSchLch =
- allocInfo->tbInfo[idx].numSchLch;
- if(dStaInd[rguDlSpId])
- {
- dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].nmbLch =
- allocInfo->tbInfo[idx].numSchLch;
+ /* L2 optimization for mUe/Tti: Pre-allocated mBuf pointers(macHdr,
+ * macCes and MacPad) of harq TB need to be reset to db_base
+ */
+ tb = &(hqP->tbInfo[idx].tb);
+ if (tb->tbPres == TRUE)
+ {
+ RG_FREE_TB(tb);
+ }
+#endif
+
+ if((NULLP == dStaInd[rguDlSpId]) && (allocInfo->tbInfo[idx].numSchLch))
+ {
+ if ((rgAllocShrablSBuf (inst,(Data**)&dStaInd[rguDlSpId], sizeof(RguDStaIndInfo))) != ROK)
+ {
+ err->errType = RGERR_DHM_SND_STA_IND;
+ err->errCause = RG_DHM_MEM_ALLOC_FAIL;
+ /* Need to return as memory allocation will fail for other UEs also*/
+ return RFAILED;
+ }
+ dStaInd[rguDlSpId]->nmbOfUeGrantPerTti = 0;
+ rguDlSap[rguDlSpId] = ue->rguDlSap;
+ activeSapCnt++;
+ }
+
+ for (lcIdx = 0;
+ lcIdx < allocInfo->tbInfo[idx].numSchLch; lcIdx++)
+ {
+ hqP->tbInfo[idx].schdData[lcIdx].lcId =
+ allocInfo->tbInfo[idx].schdDat[lcIdx].lcId;
+ if (hqP->tbInfo[idx].schdData[lcIdx].lcId == 0)
+ {
+ DU_LOG("\nERROR --> MAC : CCCH grant in DStaInd for LCID:%d CRNTI:%d",
+ hqP->tbInfo[idx].schdData[lcIdx].lcId,allocInfo->rnti);
+ }
+ hqP->tbInfo[idx].schdData[lcIdx].schdSz =
+ allocInfo->tbInfo[idx].schdDat[lcIdx].numBytes;
+ if(dStaInd[rguDlSpId])
+ {
+ dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].\
+ lchStaInd[lcIdx].lcId = allocInfo->tbInfo[idx].\
+ schdDat[lcIdx].lcId;
+ dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].\
+ lchStaInd[lcIdx].totBufSize = allocInfo->tbInfo[idx].\
+ schdDat[lcIdx].numBytes;
+ }
+
+ lchBufSize+=allocInfo->tbInfo[idx].schdDat[lcIdx].numBytes;
+ }
+ hqP->tbInfo[idx].numSchLch =
+ allocInfo->tbInfo[idx].numSchLch;
+ if(dStaInd[rguDlSpId])
+ {
+ dStaInd[rguDlSpId]->staInd[dStaInd[rguDlSpId]->nmbOfUeGrantPerTti].staIndTb[idx].nmbLch =
+ allocInfo->tbInfo[idx].numSchLch;