Commit 5bcbfeab authored by Manu Agrawal's avatar Manu Agrawal

Fix for incorrect frame number in SYSTEM_IND message

parent b3760474
...@@ -198,6 +198,12 @@ typedef struct ss_paging_identity_s { ...@@ -198,6 +198,12 @@ typedef struct ss_paging_identity_s {
/* Indicates origin of paging */ /* Indicates origin of paging */
cn_domain_t cn_domain; cn_domain_t cn_domain;
}ss_paging_identity_t; }ss_paging_identity_t;
typedef struct subframe_offset_list_s {
uint8_t num;
sub_frame_t subframe_offset[10];
}subframe_offset_list_t;
typedef struct ss_paging_ind_s { typedef struct ss_paging_ind_s {
uint16_t sfn; uint16_t sfn;
uint8_t sf; uint8_t sf;
...@@ -209,6 +215,8 @@ typedef struct ss_paging_ind_s { ...@@ -209,6 +215,8 @@ typedef struct ss_paging_ind_s {
ss_paging_identity_t *paging_recordList; ss_paging_identity_t *paging_recordList;
bool systemInfoModification; bool systemInfoModification;
bool bSubframeOffsetListPresent;
subframe_offset_list_t subframeOffsetList;
} ss_paging_ind_t; } ss_paging_ind_t;
typedef enum VtpCmd_e { typedef enum VtpCmd_e {
...@@ -234,8 +242,8 @@ typedef struct ss_vt_time_out_s { ...@@ -234,8 +242,8 @@ typedef struct ss_vt_time_out_s {
typedef struct ss_system_ind_s typedef struct ss_system_ind_s
{ {
bool bitmask; //Flag for presence of optional parameter repetitionsPerPreambleAttempt bool bitmask; //Flag for presence of optional parameter repetitionsPerPreambleAttempt
uint8_t sfn; frame_t sfn;
uint16_t sf; sub_frame_t sf;
uint8_t ra_PreambleIndex; uint8_t ra_PreambleIndex;
bool prtPower_Type; bool prtPower_Type;
uint32_t repetitionsPerPreambleAttempt; uint32_t repetitionsPerPreambleAttempt;
......
...@@ -1438,7 +1438,8 @@ initiate_ra_proc(module_id_t module_idP, ...@@ -1438,7 +1438,8 @@ initiate_ra_proc(module_id_t module_idP,
SS_SYSTEM_IND(m).prtPower_Type = true; SS_SYSTEM_IND(m).prtPower_Type = true;
SS_SYSTEM_IND(m).repetitionsPerPreambleAttempt = 0; SS_SYSTEM_IND(m).repetitionsPerPreambleAttempt = 0;
itti_send_msg_to_task(TASK_SS_SYSIND, module_idP, m); itti_send_msg_to_task(TASK_SS_SYSIND, module_idP, m);
LOG_A(MAC,"MAC Sending SS_SYSTEM_IND with ra_PreambleIndex=%d to System Simulator\n", SS_SYSTEM_IND(m).ra_PreambleIndex); LOG_A(MAC,"MAC Sending SS_SYSTEM_IND with ra_PreambleIndex=%d prtPower_Type=%d bitmask=%d sfn=%d sf=%d to System Simulator\n", SS_SYSTEM_IND(m).ra_PreambleIndex, SS_SYSTEM_IND(m).prtPower_Type,
SS_SYSTEM_IND(m).bitmask, SS_SYSTEM_IND(m).sfn, SS_SYSTEM_IND(m).sf);
} }
return; return;
} }
......
...@@ -1267,6 +1267,7 @@ static void sys_handle_paging_req(struct PagingTrigger_Type *pagingRequest, ss_s ...@@ -1267,6 +1267,7 @@ static void sys_handle_paging_req(struct PagingTrigger_Type *pagingRequest, ss_s
SS_PAGING_IND(message_p).sf = tinfo.sf; SS_PAGING_IND(message_p).sf = tinfo.sf;
SS_PAGING_IND(message_p).paging_recordList = NULL; SS_PAGING_IND(message_p).paging_recordList = NULL;
SS_PAGING_IND(message_p).systemInfoModification = false; SS_PAGING_IND(message_p).systemInfoModification = false;
SS_PAGING_IND(message_p).bSubframeOffsetListPresent = false;
switch (pagingRequest->Paging.message.d) switch (pagingRequest->Paging.message.d)
{ {
...@@ -1329,6 +1330,17 @@ static void sys_handle_paging_req(struct PagingTrigger_Type *pagingRequest, ss_s ...@@ -1329,6 +1330,17 @@ static void sys_handle_paging_req(struct PagingTrigger_Type *pagingRequest, ss_s
} }
} }
} }
if(pagingRequest->SubframeOffsetList.d)
{
LOG_A(ENB_SS, "[SYS] Subframe Offset List present in Paging request \n");
SS_PAGING_IND(message_p).bSubframeOffsetListPresent=true;
SS_PAGING_IND(message_p).subframeOffsetList.num = 0;
for (int i=0; i < pagingRequest->SubframeOffsetList.v.d; i++)
{
SS_PAGING_IND(message_p).subframeOffsetList.subframe_offset[i] = pagingRequest->SubframeOffsetList.v.v[i];
SS_PAGING_IND(message_p).subframeOffsetList.num++;
}
}
int send_res = itti_send_msg_to_task(TASK_RRC_ENB, 0, message_p); int send_res = itti_send_msg_to_task(TASK_RRC_ENB, 0, message_p);
if (send_res < 0) if (send_res < 0)
......
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