X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fmt%2Fmt_ss.c;h=cb1ad0b8762a881500e306c62c461ba72fe19003;hb=f73456bd55152c329601f8286ae67fe9875025bc;hp=a6a5410913c31beb302214ccb954ad395989c051;hpb=0bdf00d1edf579ee8b5841e1a80d48d9bb91c7e8;p=o-du%2Fl2.git diff --git a/src/mt/mt_ss.c b/src/mt/mt_ss.c index a6a541091..cb1ad0b87 100644 --- a/src/mt/mt_ss.c +++ b/src/mt/mt_ss.c @@ -164,18 +164,6 @@ #include #endif -#if defined(SPLIT_RLC_DL_TASK) && defined(RLC_MAC_STA_RSP_RBUF) -S16 rgBatchProc (Void); -#endif -#ifdef RLC_MAC_DAT_REQ_RBUF -S16 rgDlDatReqBatchProc ARGS(( - Void)); -#endif -#if defined(SPLIT_RLC_DL_TASK) && defined(RLC_MAC_STA_RSP_RBUF) -S16 rgBatchProc ARGS(( - Void)); -#endif - #ifdef TENB_T2K3K_SPECIFIC_CHANGES /* general purpose debug zone */ char my_buffer2[4096 * 4] = { 0 }; @@ -183,7 +171,6 @@ char my_buffer[4096] = { 0 }; int my_buffer_idx = 0; - #define sigsegv_print(x, ...) my_buffer_idx += sprintf(&my_buffer[my_buffer_idx], x "\n", ##__VA_ARGS__) struct sigcontext my_uc_mcontext = { 0 }; @@ -514,7 +501,33 @@ SsRegCfg cfgRegInfo[SS_MAX_REGS] = { SS_POOL_DYNAMIC, MT_POOL_4_DSIZE }, { SS_POOL_STATIC, 0 } } + }, + { + SS_DFLT_REGION + 7, SS_MAX_POOLS_PER_REG - 1, + { + { SS_POOL_DYNAMIC, MT_POOL_0_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_1_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_2_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_3_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_4_DSIZE }, + { SS_POOL_STATIC, 0 } + } + } + +#ifndef INTEL_WLS_MEM + , + { + SS_DFLT_REGION + 8, SS_MAX_POOLS_PER_REG - 1, + { + { SS_POOL_DYNAMIC, MT_POOL_0_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_1_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_2_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_3_DSIZE }, + { SS_POOL_DYNAMIC, MT_POOL_4_DSIZE }, + { SS_POOL_STATIC, 0 } + } } +#endif #endif /* SS_LOCKLESS_MEMORY */ }; @@ -610,7 +623,34 @@ MtDynMemCfg mtDynMemoCfg = {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD} } + }, + { + SS_DFLT_REGION + 7, /* region id */ + MT_MAX_BKTS, /* number of buckets */ + { + /* block size, no. of blocks, Upper threshold, lower threshold */ + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD} + } } +#ifndef INTEL_WLS_MEM + , + { + SS_DFLT_REGION + 8, /* region id */ + MT_MAX_BKTS, /* number of buckets */ + { + /* block size, no. of blocks, Upper threshold, lower threshold */ + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD}, + {SS_BLK_RELEASE_THRESHOLD, SS_BLK_ACQUIRE_THRESHOLD} + } + } +#endif #if ((defined (SPLIT_RLC_DL_TASK)) && (!defined (L2_L3_SPLIT))) , { @@ -766,7 +806,7 @@ MtMemCfg mtMemoCfg = } }, { - SS_DFLT_REGION + 5, /* region id */ + SS_DFLT_REGION + 6, /* region id */ MT_MAX_BKTS, /* number of buckets */ MT_HEAP_SIZE, /* heap size */ { @@ -776,7 +816,35 @@ MtMemCfg mtMemoCfg = {MT_BKT_3_DSIZE, MT_BKT_3_STATIC_NUMBLKS}, /* block size, no. of blocks */ {MT_BKT_4_DSIZE, MT_BKT_4_STATIC_NUMBLKS} /* block size, no. of blocks */ } + }, + { + SS_DFLT_REGION + 7, /* region id */ + MT_MAX_BKTS, /* number of buckets */ + MT_HEAP_SIZE, /* heap size */ + { + {MT_BKT_0_DSIZE, MT_BKT_0_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_1_DSIZE, MT_BKT_1_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_2_DSIZE, MT_BKT_2_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_3_DSIZE, MT_BKT_3_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_4_DSIZE, MT_BKT_4_STATIC_NUMBLKS} /* block size, no. of blocks */ + } } + +#ifndef INTEL_WLS_MEM + , + { + SS_DFLT_REGION + 8, /* region id */ + MT_MAX_BKTS, /* number of buckets */ + MT_HEAP_SIZE, /* heap size */ + { + {MT_BKT_0_DSIZE, MT_BKT_0_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_1_DSIZE, MT_BKT_1_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_2_DSIZE, MT_BKT_2_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_3_DSIZE, MT_BKT_3_STATIC_NUMBLKS}, /* block size, no. of blocks */ + {MT_BKT_4_DSIZE, MT_BKT_4_STATIC_NUMBLKS} /* block size, no. of blocks */ + } + } +#endif #endif /* SS_LOCKLESS_MEMORY */ STATIC_MEM_CFG } @@ -844,13 +912,19 @@ S8 gWrWlsDeviceName[MAX_WLS_DEVICE_NAME_LEN]; S16 smWrReadWlsConfigParams (Void); #endif +/*WLS Memory Size variables*/ +#ifdef INTEL_L1_V20_03_ONWARDS +uint64_t nWlsMacMemorySize = 0; +uint64_t nWlsPhyMemorySize = 0; +#endif + static int SOpenWlsIntf() { uint8_t i; - void *hdl; + void *hdl = NULLP; #define WLS_DEVICE_NAME "wls0" - char *my_argv[] = {"gnodeb", "-c3", "--proc-type=auto", "--file-prefix", WLS_DEVICE_NAME, "--iova-mode=pa"}; + char *my_argv[] = {"gnodeb", "-c3", "--proc-type=auto", "--file-prefix", "gnb0", "--iova-mode=pa"}; printf("\nCalling rte_eal_init: "); for (i = 0; i < RTE_DIM(my_argv); i++) { @@ -868,8 +942,18 @@ static int SOpenWlsIntf() #else hdl = WLS_Open(WLS_DEVICE_NAME, 1); #endif +#else + +#ifdef INTEL_L1_V20_03_ONWARDS + hdl = WLS_Open(WLS_DEVICE_NAME, WLS_MASTER_CLIENT, &nWlsMacMemorySize, &nWlsPhyMemorySize); + if(hdl == NULL) + { + printf("\nERROR: WLS_Open > DEVICE_NAME mismatch. WLS Device Name should be same as 'wls_dev_name' parameter in 'phycfg_xran.xml' file"); + } #else hdl = WLS_Open(WLS_DEVICE_NAME, WLS_MASTER_CLIENT, WLS_MEM_SIZE); +#endif /*INTEL_L1_V20_03_ONWARDS*/ + #endif osCp.wls.intf = hdl; @@ -1538,7 +1622,9 @@ static S16 SAllocateWlsDynMem() mtDynMemSz[i].reqdSz += (mtGlobMemoCfg.bkt[i].blkSize * mtGlobMemoCfg.bkt[i].numBlks); } osCp.wls.allocAddr = WLS_Alloc(osCp.wls.intf, -#ifdef INTEL_L1_V19_10 +#ifdef INTEL_L1_V20_03_ONWARDS + nWlsMacMemorySize+nWlsPhyMemorySize); +#elif INTEL_L1_V19_10 WLS_MEMORY_SIZE); #else (reqdMemSz + (4 * 1024 * 1024))); @@ -4594,9 +4680,6 @@ Void YsPhyRecvMsg(); #endif /* get a message from the demand queue */ /* RT Processing */ -#ifdef RLC_MAC_DAT_REQ_RBUF - rgDlDatReqBatchProc(); -#endif ret = mtTskHdlMsg(sTsk); if (ret != ROK) @@ -4604,9 +4687,6 @@ Void YsPhyRecvMsg(); /* exit the for loop here */ break; } -#if defined(SPLIT_RLC_DL_TASK) && defined(RLC_MAC_STA_RSP_RBUF) - rgBatchProc(); -#endif } return (NULLP);