Commit 8a6027df authored by Siddharth Rana's avatar Siddharth Rana Committed by Vijay Chadachan

Rebasing from 3GPP_TTCN_System_Simulator Commit...

Rebasing from 3GPP_TTCN_System_Simulator Commit a958012317ab8f2c5829eaebd277698e6cdb7738 to c52a980dd220c187b88a83379e218accf11b36a1
parent 1c3d9eb3
......@@ -639,6 +639,8 @@ void evaluate_rsrp_report(NR_UE_info_t *UE,
}
csi_report->nb_of_csi_ssb_report++;
int strongest_ssb_rsrp = get_measured_rsrp(sched_ctrl->CSI_report.ssb_cri_report.RSRP);
UE_info->rsrpReportStatus = true;
UE_info->ssb_rsrp = strongest_ssb_rsrp;
NR_mac_stats_t *stats = &UE->mac_stats;
// including ssb rsrp in mac stats
stats->cumul_rsrp += strongest_ssb_rsrp;
......
......@@ -682,6 +682,8 @@ typedef struct {
// last element always NULL
pthread_mutex_t mutex;
NR_UE_info_t *list[MAX_MOBILES_PER_GNB+1];
bool rsrpReportStatus;
int ssb_rsrp;
bool sched_csirs;
uid_allocator_t uid_allocator;
} NR_UEs_t;
......
......@@ -391,7 +391,7 @@ uint8_t do_MIB(rrc_eNB_carrier_data_t *carrier, uint32_t N_RB_DL, uint32_t phich
(void *)mib,
carrier->MIB,
24);
LOG_P(OAILOG_INFO, "BCCH_BCH_Message", (uint8_t *)carrier->MIB, 24);
LOG_P(OAILOG_INFO, "BCCH_BCH_Message", (uint8_t *)carrier->MIB, (enc_rval.encoded+7)/8);
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
......@@ -1374,11 +1374,11 @@ uint8_t do_SIB1(rrc_eNB_carrier_data_t *carrier,
(void *)bcch_message,
buffer,
100);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, 100);
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
LOG_D(RRC,"[eNB] SystemInformationBlockType1 Encoded %zd bits (%zd bytes)\n",enc_rval.encoded,(enc_rval.encoded+7)/8);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, ((enc_rval.encoded+7)/8));
if (enc_rval.encoded==-1) {
return(-1);
......@@ -2334,7 +2334,7 @@ uint8_t do_SIB23(uint8_t Mod_id,
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
LOG_D(RRC,"[eNB] SystemInformation Encoded %zd bits (%zd bytes)\n",enc_rval.encoded,(enc_rval.encoded+7)/8);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, 900);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, ((enc_rval.encoded+7)/8));
if (enc_rval.encoded==-1) {
msg("[RRC] ASN1 : SI encoding failed for SIB23\n");
......@@ -2408,7 +2408,7 @@ uint8_t do_SIB4(uint8_t Mod_id,
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
LOG_D(RRC,"[eNB] SystemInformation4 Encoded %zd bits (%zd bytes)\n",enc_rval.encoded,(enc_rval.encoded+7)/8);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, 900);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, (enc_rval.encoded+7)/8);
if (enc_rval.encoded==-1) {
msg("[RRC] ASN1 : SI encoding failed for SIB4\n");
......@@ -2538,7 +2538,7 @@ uint8_t do_SIB5(uint8_t Mod_id,
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
LOG_D(RRC,"[eNB] SystemInformation5 Encoded %zd bits (%zd bytes)\n",enc_rval.encoded,(enc_rval.encoded+7)/8);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, 900);
LOG_P(OAILOG_INFO, "BCCH_DL_SCH_Message", (uint8_t *)buffer, (enc_rval.encoded+7)/8);
if (enc_rval.encoded==-1) {
msg("[RRC] ASN1 : SI encoding failed for SIB5\n");
......@@ -3246,7 +3246,7 @@ do_RRCConnectionSetup(
(void *)&dl_ccch_msg,
buffer,
100);
LOG_P(OAILOG_DEBUG, "DL_CCCH_Message", buffer, 100);
LOG_P(OAILOG_DEBUG, "DL_CCCH_Message", buffer, (enc_rval.encoded+7)/8);
if(enc_rval.encoded == -1) {
LOG_I(RRC, "[eNB AssertFatal]ASN1 message encoding failed (%s, %lu)!\n",
enc_rval.failed_type->name, enc_rval.encoded);
......
......@@ -201,7 +201,7 @@ static void
ss_eNB_read_from_drb_socket(acpCtx_t ctx){
size_t msgSize = size; //2
int cell_index;
int cell_index = 0;
LOG_A(ENB_SS, "Entry in fxn:%s\n", __FUNCTION__);
while (1)
......
......@@ -302,7 +302,7 @@ static inline void
ss_eNB_read_from_srb_socket(acpCtx_t ctx)
{
size_t msgSize = size; //2
int cell_index;
int cell_index = 0;
while (1)
{
......
......@@ -52,21 +52,54 @@ static void ss_dumpReqMsg(struct NR_SYSTEM_CTRL_REQ *msg)
LOG_A(GNB_APP, "\tRequest=%d\n", msg->Request.d);
}
void ss_nr_port_man_send_cnf(struct NR_SYSTEM_CTRL_CNF* recvCnf)
void ss_nr_port_man_send_cnf(struct NR_SYSTEM_CTRL_CNF recvCnf)
{
struct NR_SYSTEM_CTRL_CNF cnf;
const size_t size = 16 * 1024;
uint32_t status;
unsigned char *buffer = (unsigned char *)acpMalloc(size);
size_t msgSize = size;
recvCnf->Common.RoutingInfo.d = RoutingInfo_Type_None;
recvCnf->Common.RoutingInfo.v.None = true;
recvCnf->Common.TimingInfo.d = TimingInfo_Type_None;
recvCnf->Common.TimingInfo.v.None = true;
memset(&cnf, 0, sizeof(cnf));
cnf.Common.CellId = recvCnf.Common.CellId;
cnf.Common.RoutingInfo.d = RoutingInfo_Type_None;
cnf.Common.RoutingInfo.v.None = true;
cnf.Common.TimingInfo.d = TimingInfo_Type_Now;
cnf.Common.TimingInfo.v.Now = true;
cnf.Common.Result.d = recvCnf.Common.Result.d;
cnf.Common.Result.v.Success = recvCnf.Common.Result.v.Success;
cnf.Confirm.d = recvCnf.Confirm.d;
LOG_A(GNB_APP, "[SS-PORTMAN] Attn CNF received cellId %d result %d type %d \n",
cnf.Common.CellId,cnf.Common.Result.d, recvCnf.Confirm.d);
switch (recvCnf.Confirm.d)
{
case NR_SystemConfirm_Type_Cell:
cnf.Confirm.v.Cell = true;
break;
case NR_SystemConfirm_Type_RadioBearerList:
cnf.Confirm.v.RadioBearerList= true;
break;
case NR_SystemConfirm_Type_CellAttenuationList:
cnf.Confirm.v.CellAttenuationList= true;
break;
case NR_SystemConfirm_Type_PdcpCount:
cnf.Confirm.v.PdcpCount.d = recvCnf.Confirm.v.PdcpCount.d;
cnf.Confirm.v.PdcpCount.v = recvCnf.Confirm.v.PdcpCount.v;
break;
case NR_SystemConfirm_Type_AS_Security:
cnf.Confirm.v.AS_Security = true;
break;
case NR_SystemConfirm_Type_DeltaValues:
memcpy(&cnf.Confirm.v.DeltaValues, &recvCnf.Confirm.v.DeltaValues, sizeof(struct UE_NR_DeltaValues_Type));
break;
default:
LOG_A(GNB_APP, "[SYS] Error not handled CNF TYPE to [SS-PORTMAN] %d \n", recvCnf.Confirm.d);
}
/* Encode message
*/
if (acpNrSysProcessEncSrv(nrctx_g, buffer, &msgSize, recvCnf) != 0)
if (acpNrSysProcessEncSrv(nrctx_g, buffer, &msgSize, &cnf) != 0)
{
acpFree(buffer);
return;
......@@ -248,7 +281,7 @@ static inline void ss_gNB_read_from_socket(acpCtx_t ctx)
// No message (timeout on socket)
if (RC.ss.mode >= SS_SOFTMODEM && RC.ss.State >= SS_STATE_CELL_ACTIVE)
{
LOG_A(ENB_SS,"[SS-PORTMAN] Sending Wake up signal/SS_NRRRC_PDU_IND (msg_Id:%d) to TASK_SS_SRB_GNB task \n", SS_NRRRC_PDU_IND);
LOG_A(ENB_SS,"[SS-PORTMAN] Sending Wake up signal/SS_NRRRC_PDU_IND (msg_Id:%d) to TASK_SS_SRB task \n", SS_NRRRC_PDU_IND);
MessageDef *message_p = itti_alloc_new_message(TASK_SS_PORTMAN, 0, SS_NRRRC_PDU_IND);
if (message_p)
{
......@@ -322,7 +355,7 @@ void *ss_port_man_5G_NR_process_itti_msg(void *notUsed)
case SS_NR_SYS_PORT_MSG_CNF:
{
LOG_A(GNB_APP, "[SS-PORTMAN-GNB] Received SS_NR_SYS_PORT_MSG_CNF \n");
ss_nr_port_man_send_cnf((SS_NR_SYS_PORT_MSG_CNF(received_msg).cnf));
ss_nr_port_man_send_cnf(*(SS_NR_SYS_PORT_MSG_CNF(received_msg).cnf));
result = itti_free(ITTI_MSG_ORIGIN_ID(received_msg), received_msg);
}
break;
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment