X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Frlc_cfg_ul.c;h=bfd0c778fd1eebeeaf2802ac67543df452372f4e;hb=959944c4b572d2027bceb7bb474a8fc40f85ec1c;hp=ea54ed5fad9a4c021edd45fec64460c47fceed05;hpb=743103e6bd7d291c71a3ffaa77166a2a3a13c6b4;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/rlc_cfg_ul.c b/src/5gnrrlc/rlc_cfg_ul.c index ea54ed5fa..bfd0c778f 100755 --- a/src/5gnrrlc/rlc_cfg_ul.c +++ b/src/5gnrrlc/rlc_cfg_ul.c @@ -323,7 +323,6 @@ static S16 rlcCfgFillUlRbCb(RlcCb *gCb,RlcUlRbCb *rbCb,RlcUlUeCb *ueCb,RlcEntCfg { rbCb->lch.lChId = entCfg->lCh[0].lChId; rbCb->lch.lChType = entCfg->lCh[0].type; - rbCb->dir = entCfg->dir; rbCb->m.umUl.snLen = entCfg->m.umInfo.ul.snLen; @@ -376,6 +375,26 @@ static S16 rlcCfgFillUlRbCb(RlcCb *gCb,RlcUlRbCb *rbCb,RlcUlUeCb *ueCb,RlcEntCfg return RFAILED; } } + + if(entCfg->snssai) + { + if(!rbCb->snssai) + { + RLC_ALLOC(gCb, rbCb->snssai, sizeof(Snssai)); + if(rbCb->snssai == NULLP) + { + DU_LOG("\nERROR --> RLC_UL : rlcCfgFillUlRbCb(): Failed to allocate memory for snssai "); + return RFAILED; + } + } + memcpy(rbCb->snssai, entCfg->snssai, sizeof(Snssai)); + + /*Create the entry of this SNSSAI if not exist in Snssai Tput list*/ + if(rlcHandleSnssaiTputlist(gCb, rbCb->snssai, CREATE, DIR_UL) == NULLP) + { + DU_LOG("\nERROR --> RLC_UL : rlcCfgFillUlRbCb(): SNSSAI insertion in Tput list failed"); + } + } rbCb->mode = entCfg->entMode; return ROK; @@ -405,7 +424,6 @@ static S16 rlcCfgUpdateUlRb(RlcCb *gCb,RlcUlRbCb *rbCb,void *ptr,RlcEntCfgInfo * rbCb->dir = entCfg->dir; rbCb->lch.lChId = entCfg->lCh[0].lChId; rbCb->lch.lChType = entCfg->lCh[0].type; - cellCb->lCh[rbCb->lch.lChId - 1].ulRbCb = rbCb; break; } @@ -430,6 +448,21 @@ static S16 rlcCfgUpdateUlRb(RlcCb *gCb,RlcUlRbCb *rbCb,void *ptr,RlcEntCfgInfo * break; } } + + if(entCfg->snssai) + { + if(!rbCb->snssai) + { + RLC_ALLOC(gCb, rbCb->snssai, sizeof(Snssai)); + if(rbCb->snssai == NULLP) + { + DU_LOG("\nERROR --> RLC_UL : rlcCfgUpdateUlRb(): Failed to allocate memory for snssai "); + return RFAILED; + } + } + memcpy(rbCb->snssai,entCfg->snssai,sizeof(Snssai)); + } + return (CKW_CFG_REAS_NONE); }