X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac_utils.h;h=99b07e442461946673d4d57d003556bf178a14bc;hb=fc7d3ce9647a7da04f5a67fa34419076069defc1;hp=c35bbeb43bdd84fc90dabb6f4328772df2dbf694;hpb=2193e4cf01012809495be026097e8d7eacb9f0ac;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac_utils.h b/src/5gnrmac/mac_utils.h index c35bbeb43..99b07e442 100644 --- a/src/5gnrmac/mac_utils.h +++ b/src/5gnrmac/mac_utils.h @@ -19,18 +19,42 @@ /* Contains common utility definitions to be used at MAC */ #define MAX_SHORT_BSR_TABLE_ENTRIES 32 +#define MAX_LONG_BSR_TABLE_ENTRIES 256 #define MAC_MEM_REGION 4 #define MAC_POOL 1 +/* allocate and zero out a static buffer */ + +#ifdef MEM_SIZE_CHECK +#define MAC_MEMORY_ALLOC_SIZE_LOG(_line, _func, _size) \ +{\ + DU_LOG("\n MAC line = %d, func = %s, _size= %d ", _line, _func, _size); \ +} +#else +#define MAC_MEMORY_ALLOC_SIZE_LOG(_line, _func, _size) {} +#endif + +#ifdef ODU_MEMORY_DEBUG_LOG +#define MAC_MEM_LOG(_macro, _file, _line, _func, _size, _datPtr)\ +{\ + printf("\n%s,=== %s +%d, %s, %lu, %p \n", \ + _macro, _file, _line, _func, (uint64_t)_size, _datPtr); \ +} +#else +#define MAC_MEM_LOG(_macro, _file, _line, _func, _size, _dataPtr) {} +#endif + /* allocate and zero out a MAC static buffer */ #define MAC_ALLOC(_datPtr, _size) \ { \ + MAC_MEMORY_ALLOC_SIZE_LOG(__LINE__, __FUNCTION__, _size); \ uint8_t _ret; \ _ret = SGetSBuf(MAC_MEM_REGION, MAC_POOL, \ - (Data **)&_datPtr, _size); \ + (Data **)&_datPtr, _size); \ if(_ret == ROK) \ { \ - cmMemset((uint8_t *)_datPtr, 0, _size); \ + memset(_datPtr, 0, _size); \ + MAC_MEM_LOG("MAC,ALLOC", __FILE__, __LINE__, __FUNCTION__, _size, _datPtr);\ } \ else \ { \ @@ -43,8 +67,10 @@ { \ if(_datPtr) \ { \ + MAC_MEM_LOG("MAC,FREE", __FILE__, __LINE__, __FUNCTION__, _size, _datPtr);\ SPutSBuf(MAC_MEM_REGION, MAC_POOL, \ - (Data *)_datPtr, _size); \ + (Data *)_datPtr, _size); \ + _datPtr = NULLP; \ } \ } @@ -52,10 +78,12 @@ * during inter-layer communication */ #define MAC_ALLOC_SHRABL_BUF(_buf, _size) \ { \ + MAC_MEMORY_ALLOC_SIZE_LOG(__LINE__, __FUNCTION__, _size); \ if(SGetStaticBuffer(MAC_MEM_REGION, MAC_POOL, \ - (Data **)&_buf, (Size) _size, 0) == ROK) \ + (Data **)&_buf, (Size) _size, 0) == ROK) \ { \ - cmMemset((uint8_t *)(_buf), 0, _size); \ + MAC_MEM_LOG("MAC,ALLOC_SHRABL_BUF", __FILE__, __LINE__, __FUNCTION__, _size, _buf);\ + memset((_buf), 0, _size); \ } \ else \ { \ @@ -68,6 +96,7 @@ { \ if (_buf != NULLP) \ { \ + MAC_MEM_LOG("MAC,FREE_SHRABL_BUF", __FILE__, __LINE__, __FUNCTION__, _size, _buf);\ (Void) SPutStaticBuffer(_region, _pool, \ (Data *) _buf, (Size) _size, 0); \ _buf = NULLP; \ @@ -129,7 +158,8 @@ } /* Function declaration */ -uint16_t getNewCrnti(uint8_t *crntiMap); +extern uint32_t shortBsrBytesTable[MAX_SHORT_BSR_TABLE_ENTRIES]; +extern uint32_t longBsrBytesTable[MAX_LONG_BSR_TABLE_ENTRIES]; /********************************************************************** End of file