X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Flwr_mac_phy.h;h=7c4fdb26498a48166bd6369bf834592e1af1b433;hb=e54c2aae19e97065def9e5ab2d1488477b1ea209;hp=68d81f2a097394e7de468e8af35564dcb20a9654;hpb=def50dc175cebc67238db5f1acd5ff322a2279bd;p=o-du%2Fl2.git diff --git a/src/5gnrmac/lwr_mac_phy.h b/src/5gnrmac/lwr_mac_phy.h index 68d81f2a0..7c4fdb264 100644 --- a/src/5gnrmac/lwr_mac_phy.h +++ b/src/5gnrmac/lwr_mac_phy.h @@ -32,9 +32,21 @@ typedef enum MSG_TX_ERR }ErrorCode; -#ifdef INTEL_WLS -#define WLS_MEM_FREE_PRD 10 /* Free memory after 10 slot ind */ -#define LWR_MAC_WLS_BUF_SIZE 8192 /* Size of WLS memory block */ +#ifdef ODU_MEMORY_DEBUG_LOG +#define WLS_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 WLS_MEM_LOG(_macro, _file, _line, _func, _size, _datPtr) \ +{\ +} +#endif + +#ifdef INTEL_WLS_MEM +#define LWR_MAC_WLS_BUF_SIZE 32000 /* Size of WLS memory block */ +#define EVT_START_WLS_RCVR 1 /* allocate static buffer from WLS memory */ #define WLS_MEM_ALLOC(_datPtr, _size) \ @@ -42,7 +54,10 @@ typedef enum uint8_t _ret; \ _ret = SGetSBufWls(0, 0, (Data **)&_datPtr, _size); \ if(_ret == ROK) \ - memset(_datPtr, 0, _size); \ + {\ + WLS_MEM_LOG("WLSMEM_ALLOC", __FILE__, __LINE__, __FUNCTION__, _size, _datPtr);\ + memset(_datPtr, 0, _size); \ + }\ else \ _datPtr = NULLP; \ } @@ -50,7 +65,11 @@ typedef enum /* free a static buffer from WLS memory*/ #define WLS_MEM_FREE(_datPtr, _size) \ if(_datPtr) \ - SPutSBufWls(0, 0, (Data *)_datPtr, _size); + { \ + WLS_MEM_LOG("WLSMEM_FREE", __FILE__, __LINE__, __FUNCTION__, _size, _datPtr);\ + SPutSBufWls(0, 0, (Data *)_datPtr, _size); \ + _datPtr = NULLP; \ + } typedef struct wlsBlockToFree { @@ -58,14 +77,16 @@ typedef struct wlsBlockToFree uint32_t size; }WlsBlockToFree; -CmLListCp wlsBlockToFreeList[WLS_MEM_FREE_PRD]; -extern uint8_t slotIndIdx; +extern CmLListCp wlsBlockToFreeList[WLS_MEM_FREE_PRD]; +void addWlsBlockToFree(void *msg, uint32_t msgLen, uint8_t idx); void freeWlsBlockList(uint8_t idx); void LwrMacEnqueueWlsBlock(); -#endif /* INTEL_WLS */ +void LwrMacRecvPhyMsg(); +void LwrMacStartWlsRcvr(); +#endif /* INTEL_WLS_MEM */ -uint8_t LwrMacSendToPhy(uint8_t msgType, uint32_t msgLen, void *msg); +uint8_t LwrMacSendToL1(void *msg); #endif /**********************************************************************