Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lizhongxiao
OpenXG-RAN
Commits
225ec717
Commit
225ec717
authored
Jun 23, 2022
by
Vijay Chadachan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Initialize instance for RRC_PDU_REQ processing
parent
84327a1f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
86 additions
and
109 deletions
+86
-109
openair2/RRC/LTE/rrc_eNB.c
openair2/RRC/LTE/rrc_eNB.c
+81
-78
openair3/SS/ss_eNB_srb_task.c
openair3/SS/ss_eNB_srb_task.c
+5
-31
No files found.
openair2/RRC/LTE/rrc_eNB.c
View file @
225ec717
...
@@ -8120,6 +8120,7 @@ rrc_eNB_decode_ccch(
...
@@ -8120,6 +8120,7 @@ rrc_eNB_decode_ccch(
memcpy
(
&
ue_context_p
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
1
],
memcpy
(
&
ue_context_p
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
1
],
&
DCCH_LCHAN_DESC
,
&
DCCH_LCHAN_DESC
,
LCHAN_DESC_SIZE
);
LCHAN_DESC_SIZE
);
printf
(
"RRC connection Request for rnti %d
\n
"
,
ue_context_p
->
ue_context
.
rnti
);
if
((
RC
.
ss
.
mode
==
SS_ENB
)
||
(
true
==
RRCConnSetup_PDU_Present
))
if
((
RC
.
ss
.
mode
==
SS_ENB
)
||
(
true
==
RRCConnSetup_PDU_Present
))
{
{
rrc_eNB_generate_RRCConnectionSetup
(
ctxt_pP
,
ue_context_p
,
CC_id
);
rrc_eNB_generate_RRCConnectionSetup
(
ctxt_pP
,
ue_context_p
,
CC_id
);
...
@@ -10295,7 +10296,8 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10295,7 +10296,8 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
uint8_t
rb_idx
=
0
;
uint8_t
rb_idx
=
0
;
uint8_t
rbid_
;
uint8_t
rbid_
;
ss_get_pdcp_cnt_t
pc
;
ss_get_pdcp_cnt_t
pc
;
LOG_A
(
RRC
,
"RRC received SS_RRC_PDU_REQ SRB_ID:%d SDU_SIZE:%d
\n
"
,
SS_RRC_PDU_REQ
(
msg_p
).
srb_id
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
);
LOG_A
(
RRC
,
"RRC received SS_RRC_PDU_REQ SRB_ID:%d SDU_SIZE:%d rnti %d intance %u
\n
"
,
SS_RRC_PDU_REQ
(
msg_p
).
srb_id
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
,
SS_RRC_PDU_REQ
(
msg_p
).
rnti
,
instance
);
PROTOCOL_CTXT_SET_BY_INSTANCE
(
&
ctxt
,
PROTOCOL_CTXT_SET_BY_INSTANCE
(
&
ctxt
,
instance
,
instance
,
...
@@ -10304,25 +10306,25 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10304,25 +10306,25 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
msg_p
->
ittiMsgHeader
.
lte_time
.
frame
,
msg_p
->
ittiMsgHeader
.
lte_time
.
frame
,
msg_p
->
ittiMsgHeader
.
lte_time
.
slot
);
msg_p
->
ittiMsgHeader
.
lte_time
.
slot
);
if
((
SS_RRC_PDU_REQ
(
msg_p
).
srb_id
)
!=
0
)
if
((
SS_RRC_PDU_REQ
(
msg_p
).
srb_id
)
!=
0
)
{
{
LTE_DL_DCCH_Message_t
*
dl_dcch_msg
=
NULL
;
LTE_DL_DCCH_Message_t
*
dl_dcch_msg
=
NULL
;
LOG_A
(
RRC
,
"Sending RRC PDU by rrc_data_req function
\n
"
);
LOG_A
(
RRC
,
"Sending RRC PDU by rrc_data_req function
\n
"
);
uper_decode
(
NULL
,
uper_decode
(
NULL
,
&
asn_DEF_LTE_DL_DCCH_Message
,
&
asn_DEF_LTE_DL_DCCH_Message
,
(
void
**
)
&
dl_dcch_msg
,
(
void
**
)
&
dl_dcch_msg
,
(
uint8_t
*
)
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
(
uint8_t
*
)
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
,
0
,
0
);
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
,
0
,
0
);
{
{
LOG_A
(
RRC
,
"DL-DCCH: "
);
LOG_A
(
RRC
,
"DL-DCCH: "
);
for
(
int
i
=
0
;
i
<
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
;
i
++
)
{
for
(
int
i
=
0
;
i
<
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
;
i
++
)
LOG_A
(
RRC
,
"%x."
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
[
i
]);
{
}
LOG_A
(
RRC
,
"%x."
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
[
i
]);
}
LOG_A
(
RRC
,
"
\n
"
);
LOG_A
(
RRC
,
"
\n
"
);
}
}
LOG_A
(
RRC
,
"DL DCCH:"
,
(
uint8_t
*
)
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
);
LOG_A
(
RRC
,
"DL DCCH:"
,
(
uint8_t
*
)
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
);
if
(
LOG_DEBUGFLAG
(
DEBUG_ASN1
))
if
(
LOG_DEBUGFLAG
(
DEBUG_ASN1
))
{
{
...
@@ -10381,12 +10383,12 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10381,12 +10383,12 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
}
}
}
}
rrc_data_req
(
&
ctxt
,
rrc_data_req
(
&
ctxt
,
DCCH
,
DCCH
,
rrc_eNB_mui
++
,
rrc_eNB_mui
++
,
SDU_CONFIRM_NO
,
SDU_CONFIRM_NO
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
PDCP_TRANSMISSION_MODE_CONTROL
);
PDCP_TRANSMISSION_MODE_CONTROL
);
/* TTCN triggered release, need to clean up the eNB's UE context
/* TTCN triggered release, need to clean up the eNB's UE context
* the lower layer UE state , setting the UE release timer 10 SF
* the lower layer UE state , setting the UE release timer 10 SF
* rrc_subframe_process function will check each SF about the UE
* rrc_subframe_process function will check each SF about the UE
...
@@ -10401,7 +10403,7 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10401,7 +10403,7 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
struct
rrc_eNB_ue_context_s
*
ue_context_pP
=
NULL
;
struct
rrc_eNB_ue_context_s
*
ue_context_pP
=
NULL
;
int
release_num
;
int
release_num
;
ue_context_pP
=
rrc_eNB_get_ue_context
(
RC
.
rrc
[
instance
],
SS_RRC_PDU_REQ
(
msg_p
).
rnti
);
ue_context_pP
=
rrc_eNB_get_ue_context
(
RC
.
rrc
[
instance
],
SS_RRC_PDU_REQ
(
msg_p
).
rnti
);
LOG_A
(
RRC
,
"RRC Connection Release message received
\n
"
);
LOG_A
(
RRC
,
"RRC Connection Release message received
\n
"
);
ue_context_pP
->
ue_context
.
ue_reestablishment_timer
=
0
;
ue_context_pP
->
ue_context
.
ue_reestablishment_timer
=
0
;
ue_context_pP
->
ue_context
.
ue_release_timer
=
1
;
ue_context_pP
->
ue_context
.
ue_release_timer
=
1
;
...
@@ -10409,7 +10411,7 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10409,7 +10411,7 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
ue_context_pP
->
ue_context
.
ue_rrc_inactivity_timer
=
0
;
ue_context_pP
->
ue_context
.
ue_rrc_inactivity_timer
=
0
;
ue_context_pP
->
ue_context
.
ue_release_timer_rrc
=
0
;
ue_context_pP
->
ue_context
.
ue_release_timer_rrc
=
0
;
ue_context_pP
->
ue_context
.
ue_release_timer_thres_rrc
=
0
;
ue_context_pP
->
ue_context
.
ue_release_timer_thres_rrc
=
0
;
security_mode_command_send
=
TRUE
;
security_mode_command_send
=
TRUE
;
as_security_conf_ciphering
=
FALSE
;
as_security_conf_ciphering
=
FALSE
;
if
(
RC
.
ss
.
CBRA_flag
)
if
(
RC
.
ss
.
CBRA_flag
)
{
{
...
@@ -10418,65 +10420,66 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
...
@@ -10418,65 +10420,66 @@ void *rrc_enb_process_itti_msg(void *notUsed) {
}
}
}
}
}
}
else
{
else
struct
rrc_eNB_ue_context_s
*
ue_context_pP
=
NULL
;
{
ue_context_pP
=
rrc_eNB_get_ue_context
(
RC
.
rrc
[
ctxt
.
module_id
],
SS_RRC_PDU_REQ
(
msg_p
).
rnti
);
struct
rrc_eNB_ue_context_s
*
ue_context_pP
=
NULL
;
LOG_A
(
RRC
,
"Genreating RRC-CS from TTCN message RRC_PDU_REQ
\n
"
);
ue_context_pP
=
rrc_eNB_get_ue_context
(
RC
.
rrc
[
instance
],
SS_RRC_PDU_REQ
(
msg_p
).
rnti
);
module_id_t
Idx
;
LOG_A
(
RRC
,
"Genreating RRC-CS from TTCN message RRC_PDU_REQ
\n
"
);
LOG_A
(
RRC
,
"Received data on SRB0 from SS, module id: %d, Frame: %d, instance: %d
\n
"
,
module_id_t
Idx
;
ctxt
.
module_id
,
msg_p
->
ittiMsgHeader
.
lte_time
.
frame
,
instance
);
LOG_A
(
RRC
,
"Received data on SRB0 from SS, module id: %d, Frame: %d, instance: %lu
\n
"
,
eNB_RRC_UE_t
*
ue_p
=
&
ue_context_pP
->
ue_context
;
ctxt
.
module_id
,
msg_p
->
ittiMsgHeader
.
lte_time
.
frame
,
instance
);
eNB_RRC_UE_t
*
ue_p
=
&
ue_context_pP
->
ue_context
;
RRCConnSetup_PDU_Present
=
true
;
RRCConnSetup_PDUSize
=
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
;
RRCConnSetup_PDU_Present
=
true
;
memcpy
(
RRCConnSetup_PDU
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
);
RRCConnSetup_PDUSize
=
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
;
memcpy
(
RRCConnSetup_PDU
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu
,
SS_RRC_PDU_REQ
(
msg_p
).
sdu_size
);
Idx
=
DCCH
;
// SRB1
Idx
=
DCCH
;
ue_context_pP
->
ue_context
.
Srb1
.
Active
=
1
;
// SRB1
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Srb_id
=
Idx
;
ue_context_pP
->
ue_context
.
Srb1
.
Active
=
1
;
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Lchan_desc
[
0
],
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Srb_id
=
Idx
;
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Lchan_desc
[
0
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Lchan_desc
[
1
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb1
.
Srb_info
.
Lchan_desc
[
1
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
// SRB2: set it to go through SRB1 with id 1 (DCCH)
LCHAN_DESC_SIZE
);
ue_context_pP
->
ue_context
.
Srb2
.
Active
=
1
;
// SRB2: set it to go through SRB1 with id 1 (DCCH)
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Srb_id
=
Idx
;
ue_context_pP
->
ue_context
.
Srb2
.
Active
=
1
;
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
0
],
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Srb_id
=
Idx
;
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
0
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
1
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
memcpy
(
&
ue_context_pP
->
ue_context
.
Srb2
.
Srb_info
.
Lchan_desc
[
1
],
LCHAN_DESC_SIZE
);
&
DCCH_LCHAN_DESC
,
LCHAN_DESC_SIZE
);
rrc_eNB_generate_RRCConnectionSetup
(
&
ctxt
,
ue_context_pP
,
0
);
rrc_eNB_generate_RRCConnectionSetup
(
&
ctxt
,
ue_context_pP
,
0
);
LOG_I
(
RRC
,
PROTOCOL_RRC_CTXT_UE_FMT
"CALLING RLC CONFIG SRB1 (rbid %d)
\n
"
,
PROTOCOL_RRC_CTXT_UE_ARGS
(
&
ctxt
),
LOG_I
(
RRC
,
PROTOCOL_RRC_CTXT_UE_FMT
"CALLING RLC CONFIG SRB1 (rbid %d)
\n
"
,
Idx
);
PROTOCOL_RRC_CTXT_UE_ARGS
(
&
ctxt
),
rrc_pdcp_config_asn1_req
(
&
ctxt
,
Idx
);
ue_context_pP
->
ue_context
.
SRB_configList
,
rrc_pdcp_config_asn1_req
(
&
ctxt
,
(
LTE_DRB_ToAddModList_t
*
)
NULL
,
ue_context_pP
->
ue_context
.
SRB_configList
,
(
LTE_DRB_ToReleaseList_t
*
)
NULL
,
(
LTE_DRB_ToAddModList_t
*
)
NULL
,
0xff
,
(
LTE_DRB_ToReleaseList_t
*
)
NULL
,
NULL
,
0xff
,
NULL
,
NULL
,
NULL
,
NULL
,
(
LTE_PMCH_InfoList_r9_t
*
)
NULL
,
NULL
);
NULL
,
(
LTE_PMCH_InfoList_r9_t
*
)
NULL
,
NULL
);
if
(
!
NODE_IS_CU
(
RC
.
rrc
[
ctxt
.
module_id
]
->
node_type
))
{
rrc_rlc_config_asn1_req
(
&
ctxt
,
if
(
!
NODE_IS_CU
(
RC
.
rrc
[
ctxt
.
module_id
]
->
node_type
))
ue_context_pP
->
ue_context
.
SRB_configList
,
{
(
LTE_DRB_ToAddModList_t
*
)
NULL
,
rrc_rlc_config_asn1_req
(
&
ctxt
,
(
LTE_DRB_ToReleaseList_t
*
)
NULL
,
ue_context_pP
->
ue_context
.
SRB_configList
,
(
LTE_PMCH_InfoList_r9_t
*
)
NULL
,
0
,
0
(
LTE_DRB_ToAddModList_t
*
)
NULL
,
);
(
LTE_DRB_ToReleaseList_t
*
)
NULL
,
}
(
LTE_PMCH_InfoList_r9_t
*
)
NULL
,
0
,
0
);
}
}
}
}
}
break
;
break
;
//#endif
//#endif
...
...
openair3/SS/ss_eNB_srb_task.c
View file @
225ec717
...
@@ -62,7 +62,6 @@ static acpCtx_t ctx_srb_g = NULL;
...
@@ -62,7 +62,6 @@ static acpCtx_t ctx_srb_g = NULL;
static
uint16_t
rnti_g
=
0
;
static
uint16_t
rnti_g
=
0
;
static
instance_t
instance_g
=
0
;
static
instance_t
instance_g
=
0
;
uint16_t
ss_rnti_g
=
0
;
uint16_t
ss_rnti_g
=
0
;
bool
rrcConnectionSetupSent
=
0
;
enum
MsgUserId
enum
MsgUserId
{
{
...
@@ -100,8 +99,7 @@ static void ss_send_srb_data(ss_rrc_pdu_ind_t *pdu_ind)
...
@@ -100,8 +99,7 @@ static void ss_send_srb_data(ss_rrc_pdu_ind_t *pdu_ind)
LTE_UL_DCCH_Message_t
*
ul_dcch_msg
=
NULL
;
LTE_UL_DCCH_Message_t
*
ul_dcch_msg
=
NULL
;
LTE_UL_CCCH_Message_t
*
ul_ccch_msg
=
NULL
;
LTE_UL_CCCH_Message_t
*
ul_ccch_msg
=
NULL
;
LOG_A
(
ENB_SS
,
"[SS_SRB] Reported rrc sdu_size:%d
\t
srb_id %d
\n
"
,
pdu_ind
->
sdu_size
,
pdu_ind
->
srb_id
);
LOG_A
(
ENB_SS
,
"[SS_SRB] Reported rrc sdu_size:%d
\t
srb_id %d rnti %d
\n
"
,
pdu_ind
->
sdu_size
,
pdu_ind
->
srb_id
,
pdu_ind
->
rnti
);
DevAssert
(
pdu_ind
!=
NULL
);
DevAssert
(
pdu_ind
!=
NULL
);
DevAssert
(
pdu_ind
->
sdu_size
>=
0
);
DevAssert
(
pdu_ind
->
sdu_size
>=
0
);
DevAssert
(
pdu_ind
->
srb_id
>=
0
);
DevAssert
(
pdu_ind
->
srb_id
>=
0
);
...
@@ -169,15 +167,7 @@ static void ss_send_srb_data(ss_rrc_pdu_ind_t *pdu_ind)
...
@@ -169,15 +167,7 @@ static void ss_send_srb_data(ss_rrc_pdu_ind_t *pdu_ind)
ind
.
RrcPdu
.
d
=
RRC_MSG_Indication_Type_Dcch
;
ind
.
RrcPdu
.
d
=
RRC_MSG_Indication_Type_Dcch
;
ind
.
RrcPdu
.
v
.
Dcch
.
d
=
pdu_ind
->
sdu_size
;
ind
.
RrcPdu
.
v
.
Dcch
.
d
=
pdu_ind
->
sdu_size
;
ind
.
RrcPdu
.
v
.
Dcch
.
v
=
pdu_ind
->
sdu
;
ind
.
RrcPdu
.
v
.
Dcch
.
v
=
pdu_ind
->
sdu
;
/*TODO: Work around fix for passing TC 9_3_2_1 with TTCN , shall be removed
* once the handling of rrcConnectionSetup from TTCN is implemented in eNB
*/
if
(
ul_dcch_msg
->
message
.
choice
.
c1
.
present
==
LTE_UL_DCCH_MessageType__c1_PR_rrcConnectionSetupComplete
&&
rrcConnectionSetupSent
==
0
)
{
printf
(
"rcConnectionSetupComplete to be sent to TTCN- Sleeping for rrcConnectionSetup to be received as its not yet received by TTCN
\n
"
);
usleep
(
500
);
}
}
}
/* Encode message
/* Encode message
...
@@ -220,6 +210,7 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
...
@@ -220,6 +210,7 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
LTE_DL_CCCH_Message_t
*
dl_ccch_msg
=
NULL
;
LTE_DL_CCCH_Message_t
*
dl_ccch_msg
=
NULL
;
MessageDef
*
message_p
=
itti_alloc_new_message
(
TASK_RRC_ENB
,
instance_g
,
SS_RRC_PDU_REQ
);
MessageDef
*
message_p
=
itti_alloc_new_message
(
TASK_RRC_ENB
,
instance_g
,
SS_RRC_PDU_REQ
);
assert
(
message_p
);
assert
(
message_p
);
instance_g
=
0
;
if
(
message_p
)
if
(
message_p
)
{
{
/* Populate the message and send to SS */
/* Populate the message and send to SS */
...
@@ -236,15 +227,6 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
...
@@ -236,15 +227,6 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
,
0
,
0
);
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
,
0
,
0
);
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_CCCH_Message
,(
void
*
)
dl_ccch_msg
);
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_CCCH_Message
,(
void
*
)
dl_ccch_msg
);
/*TODO: Work around fix for passing TC 9_3_2_1 with TTCN , shall be removed
* once the handling of rrcConnectionSetup from TTCN is implemented in eNB
*/
if
(
dl_ccch_msg
->
message
.
choice
.
c1
.
present
==
LTE_DL_CCCH_MessageType__c1_PR_rrcConnectionSetup
)
{
rrcConnectionSetupSent
=
1
;
printf
(
"rcConnectionSetup received from TTCN- setting the flag rrcConnectionSetupSent =, 1
\n
"
);
}
}
}
else
else
{
{
...
@@ -257,19 +239,11 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
...
@@ -257,19 +239,11 @@ static void ss_task_handle_rrc_pdu_req(struct EUTRA_RRC_PDU_REQ *req)
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
,
0
,
0
);
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
,
0
,
0
);
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_DCCH_Message
,(
void
*
)
dl_dcch_msg
);
xer_fprint
(
stdout
,
&
asn_DEF_LTE_DL_DCCH_Message
,(
void
*
)
dl_dcch_msg
);
/*TODO: Work around fix for passing TC 9_3_2_1 with TTCN , shall be removed
* once the handling of rrcConnectionSetup from TTCN is implemented in eNB
*/
if
(
dl_dcch_msg
->
message
.
choice
.
c1
.
present
==
LTE_DL_DCCH_MessageType__c1_PR_rrcConnectionRelease
)
{
rrcConnectionSetupSent
=
0
;
printf
(
"rcConnectionRelease received from TTCN- setting the flag rrcConnectionSetupSent = 0
\n
"
);
}
}
}
LOG_A
(
ENB_SS
,
"[SS_SRB][EUTRA_RRC_PDU_REQ] sending to TASK_RRC_ENB: {srb: %d, ch: %s, qty: %d
}
"
,
LOG_A
(
ENB_SS
,
"[SS_SRB][EUTRA_RRC_PDU_REQ] sending to TASK_RRC_ENB: {srb: %d, ch: %s, qty: %d
rnti %d}
\n
"
,
SS_RRC_PDU_REQ
(
message_p
).
srb_id
,
SS_RRC_PDU_REQ
(
message_p
).
srb_id
,
req
->
RrcPdu
.
d
==
RRC_MSG_Request_Type_Ccch
?
"CCCH"
:
"DCCH"
,
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
);
req
->
RrcPdu
.
d
==
RRC_MSG_Request_Type_Ccch
?
"CCCH"
:
"DCCH"
,
SS_RRC_PDU_REQ
(
message_p
).
sdu_size
,
rnti_g
);
SS_RRC_PDU_REQ
(
message_p
).
rnti
=
rnti_g
;
SS_RRC_PDU_REQ
(
message_p
).
rnti
=
rnti_g
;
uint8_t
msg_queued
=
0
;
uint8_t
msg_queued
=
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment