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
820ec995
Commit
820ec995
authored
May 25, 2023
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Introduce separate F1AP types f1ap_ue_context_modif_req_t and f1ap_ue_context_modif_resp_t
parent
87c82e8a
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
18 additions
and
17 deletions
+18
-17
openair2/COMMON/f1ap_messages_def.h
openair2/COMMON/f1ap_messages_def.h
+2
-2
openair2/COMMON/f1ap_messages_types.h
openair2/COMMON/f1ap_messages_types.h
+1
-1
openair2/F1AP/f1ap_cu_task.c
openair2/F1AP/f1ap_cu_task.c
+1
-1
openair2/F1AP/f1ap_cu_ue_context_management.c
openair2/F1AP/f1ap_cu_ue_context_management.c
+4
-3
openair2/F1AP/f1ap_cu_ue_context_management.h
openair2/F1AP/f1ap_cu_ue_context_management.h
+1
-2
openair2/F1AP/f1ap_du_ue_context_management.c
openair2/F1AP/f1ap_du_ue_context_management.c
+3
-2
openair2/F1AP/f1ap_du_ue_context_management.h
openair2/F1AP/f1ap_du_ue_context_management.h
+1
-1
openair2/RRC/NR/rrc_gNB.c
openair2/RRC/NR/rrc_gNB.c
+5
-5
No files found.
openair2/COMMON/f1ap_messages_def.h
View file @
820ec995
...
...
@@ -46,8 +46,8 @@ MESSAGE_DEF(F1AP_DL_RRC_MESSAGE , MESSAGE_PRIORITY_MED, f1ap_dl_rrc
//MESSAGE_DEF(F1AP_INITIAL_CONTEXT_SETUP_REQ , MESSAGE_PRIORITY_MED, f1ap_initial_context_setup_req_t , f1ap_initial_context_setup_req )
MESSAGE_DEF
(
F1AP_UE_CONTEXT_SETUP_REQ
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_setup_t
,
f1ap_ue_context_setup_req
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_SETUP_RESP
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_setup_t
,
f1ap_ue_context_setup_resp
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_REQ
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_setup
_t
,
f1ap_ue_context_modification_req
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_RESP
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_
setu
p_t
,
f1ap_ue_context_modification_resp
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_REQ
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_modif_req
_t
,
f1ap_ue_context_modification_req
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_RESP
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_
modif_res
p_t
,
f1ap_ue_context_modification_resp
)
/* CU -> DU*/
MESSAGE_DEF
(
F1AP_PAGING_IND
,
MESSAGE_PRIORITY_MED
,
f1ap_paging_ind_t
,
f1ap_paging_ind
)
openair2/COMMON/f1ap_messages_types.h
View file @
820ec995
...
...
@@ -409,7 +409,7 @@ typedef struct f1ap_ue_context_setup_s {
ReconfigurationCompl_t
ReconfigComplOutcome
;
uint8_t
*
rrc_container
;
int
rrc_container_length
;
}
f1ap_ue_context_setup_t
;
}
f1ap_ue_context_setup_t
,
f1ap_ue_context_modif_req_t
,
f1ap_ue_context_modif_resp_t
;
typedef
enum
F1ap_Cause_e
{
F1AP_CAUSE_NOTHING
,
/* No components present */
...
...
openair2/F1AP/f1ap_cu_task.c
View file @
820ec995
...
...
@@ -171,7 +171,7 @@ void *F1AP_CU_task(void *arg) {
case
F1AP_UE_CONTEXT_MODIFICATION_REQ
:
CU_send_UE_CONTEXT_MODIFICATION_REQUEST
(
ITTI_MSG_DESTINATION_INSTANCE
(
received_msg
),
&
F1AP_UE_CONTEXT_
SETUP
_REQ
(
received_msg
));
&
F1AP_UE_CONTEXT_
MODIFICATION
_REQ
(
received_msg
));
break
;
case
F1AP_UE_CONTEXT_RELEASE_CMD
:
// from rrc
...
...
openair2/F1AP/f1ap_cu_ue_context_management.c
View file @
820ec995
...
...
@@ -981,7 +981,8 @@ int CU_handle_UE_CONTEXT_RELEASE_COMPLETE(instance_t instance,
return
0
;
}
int
CU_send_UE_CONTEXT_MODIFICATION_REQUEST
(
instance_t
instance
,
f1ap_ue_context_setup_t
*
f1ap_ue_context_modification_req
)
{
int
CU_send_UE_CONTEXT_MODIFICATION_REQUEST
(
instance_t
instance
,
f1ap_ue_context_modif_req_t
*
f1ap_ue_context_modification_req
)
{
F1AP_F1AP_PDU_t
pdu
=
{
0
};
F1AP_UEContextModificationRequest_t
*
out
;
uint8_t
*
buffer
=
NULL
;
...
...
@@ -1600,7 +1601,7 @@ int CU_handle_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance,
F1AP_UEContextModificationResponseIEs_t
*
ie
;
DevAssert
(
pdu
);
msg_p
=
itti_alloc_new_message
(
TASK_DU_F1
,
0
,
F1AP_UE_CONTEXT_MODIFICATION_RESP
);
f1ap_ue_context_
setu
p_t
*
f1ap_ue_context_modification_resp
=
&
F1AP_UE_CONTEXT_MODIFICATION_RESP
(
msg_p
);
f1ap_ue_context_
modif_res
p_t
*
f1ap_ue_context_modification_resp
=
&
F1AP_UE_CONTEXT_MODIFICATION_RESP
(
msg_p
);
container
=
&
pdu
->
choice
.
successfulOutcome
->
value
.
choice
.
UEContextModificationResponse
;
int
i
;
...
...
@@ -1609,7 +1610,7 @@ int CU_handle_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance,
F1AP_ProtocolIE_ID_id_gNB_CU_UE_F1AP_ID
,
true
);
f1ap_ue_context_modification_resp
->
gNB_CU_ue_id
=
ie
->
value
.
choice
.
GNB_CU_UE_F1AP_ID
;
LOG_D
(
F1AP
,
"f1ap_ue_context_
setup
_resp->gNB_CU_ue_id is: %d
\n
"
,
f1ap_ue_context_modification_resp
->
gNB_CU_ue_id
);
LOG_D
(
F1AP
,
"f1ap_ue_context_
modif
_resp->gNB_CU_ue_id is: %d
\n
"
,
f1ap_ue_context_modification_resp
->
gNB_CU_ue_id
);
/* GNB_DU_UE_F1AP_ID */
F1AP_FIND_PROTOCOLIE_BY_ID
(
F1AP_UEContextModificationResponseIEs_t
,
ie
,
container
,
...
...
openair2/F1AP/f1ap_cu_ue_context_management.h
View file @
820ec995
...
...
@@ -72,8 +72,7 @@ int CU_handle_UE_CONTEXT_RELEASE_COMPLETE(instance_t instance,
/*
* UE Context Modification (gNB-CU initiated)
*/
int
CU_send_UE_CONTEXT_MODIFICATION_REQUEST
(
instance_t
instance
,
f1ap_ue_context_setup_t
*
f1ap_ue_context_modification_req
);
int
CU_send_UE_CONTEXT_MODIFICATION_REQUEST
(
instance_t
instance
,
f1ap_ue_context_modif_req_t
*
f1ap_ue_context_modification_req
);
int
CU_handle_UE_CONTEXT_MODIFICATION_RESPONSE
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
...
...
openair2/F1AP/f1ap_du_ue_context_management.c
View file @
820ec995
...
...
@@ -820,7 +820,7 @@ int DU_handle_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance,
int
i
;
DevAssert
(
pdu
);
msg_p
=
itti_alloc_new_message
(
TASK_DU_F1
,
0
,
F1AP_UE_CONTEXT_MODIFICATION_REQ
);
f1ap_ue_context_
setup
_t
*
f1ap_ue_context_modification_req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
msg_p
);
f1ap_ue_context_
modif_req
_t
*
f1ap_ue_context_modification_req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
msg_p
);
container
=
&
pdu
->
choice
.
initiatingMessage
->
value
.
choice
.
UEContextModificationRequest
;
/* mandatory */
...
...
@@ -975,7 +975,8 @@ int DU_handle_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance,
}
//void DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(F1AP_UEContextModificationResponse_t *UEContextModificationResponse) {
int
DU_send_UE_CONTEXT_MODIFICATION_RESPONSE
(
instance_t
instance
,
f1ap_ue_context_setup_t
*
resp
)
{
int
DU_send_UE_CONTEXT_MODIFICATION_RESPONSE
(
instance_t
instance
,
f1ap_ue_context_modif_resp_t
*
resp
)
{
F1AP_F1AP_PDU_t
pdu
=
{
0
};
F1AP_UEContextModificationResponse_t
*
out
;
uint8_t
*
buffer
=
NULL
;
...
...
openair2/F1AP/f1ap_du_ue_context_management.h
View file @
820ec995
...
...
@@ -72,7 +72,7 @@ int DU_handle_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
int
DU_send_UE_CONTEXT_MODIFICATION_RESPONSE
(
instance_t
instance
,
f1ap_ue_context_
setu
p_t
*
resp
);
int
DU_send_UE_CONTEXT_MODIFICATION_RESPONSE
(
instance_t
instance
,
f1ap_ue_context_
modif_res
p_t
*
resp
);
int
DU_send_UE_CONTEXT_MODIFICATION_FAILURE
(
instance_t
instance
);
...
...
openair2/RRC/NR/rrc_gNB.c
View file @
820ec995
...
...
@@ -2359,7 +2359,7 @@ void rrc_gNB_process_dc_overall_timeout(const module_id_t gnb_mod_idP, x2ap_ENDC
static
void
rrc_DU_process_ue_context_modification_request
(
MessageDef
*
msg_p
,
instance_t
instance
)
{
f1ap_ue_context_
setup_t
*
req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
msg_p
);
f1ap_ue_context_
modif_req_t
*
req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
msg_p
);
protocol_ctxt_t
ctxt
=
{.
rntiMaybeUEid
=
req
->
rnti
,
.
module_id
=
instance
,
.
instance
=
instance
,
.
enb_flag
=
1
,
.
eNB_index
=
instance
};
gNB_RRC_INST
*
rrc
=
RC
.
nrrrc
[
ctxt
.
module_id
];
gNB_MAC_INST
*
mac
=
RC
.
nrmac
[
ctxt
.
module_id
];
...
...
@@ -2367,7 +2367,7 @@ static void rrc_DU_process_ue_context_modification_request(MessageDef *msg_p, in
gNB_RRC_UE_t
*
UE
=
&
ue_context_p
->
ue_context
;
MessageDef
*
message_p
;
message_p
=
itti_alloc_new_message
(
TASK_RRC_GNB
,
0
,
F1AP_UE_CONTEXT_MODIFICATION_RESP
);
f1ap_ue_context_
setup_t
*
resp
=
&
F1AP_UE_CONTEXT_MODIFICATION_RESP
(
message_p
);
f1ap_ue_context_
modif_resp_t
*
resp
=
&
F1AP_UE_CONTEXT_MODIFICATION_RESP
(
message_p
);
uint32_t
incoming_teid
=
0
;
NR_CellGroupConfig_t
*
cellGroupConfig
=
NULL
;
...
...
@@ -2508,7 +2508,7 @@ static void rrc_DU_process_ue_context_modification_request(MessageDef *msg_p, in
static
void
rrc_CU_process_ue_context_setup_response
(
MessageDef
*
msg_p
,
instance_t
instance
)
{
f1ap_ue_context_setup_t
*
resp
=
&
F1AP_UE_CONTEXT_SETUP_RESP
(
msg_p
);
f1ap_ue_context_setup_t
*
resp
=
&
F1AP_UE_CONTEXT_SETUP_RESP
(
msg_p
);
gNB_RRC_INST
*
rrc
=
RC
.
nrrrc
[
instance
];
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context_by_rnti
(
rrc
,
resp
->
rnti
);
gNB_RRC_UE_t
*
UE
=
&
ue_context_p
->
ue_context
;
...
...
@@ -2566,7 +2566,7 @@ static void rrc_CU_process_ue_context_release_complete(MessageDef *msg_p)
static
void
rrc_CU_process_ue_context_modification_response
(
MessageDef
*
msg_p
,
instance_t
instance
)
{
f1ap_ue_context_
setup_t
*
resp
=&
F1AP_UE_CONTEXT_SETUP
_RESP
(
msg_p
);
f1ap_ue_context_
modif_resp_t
*
resp
=
&
F1AP_UE_CONTEXT_MODIFICATION
_RESP
(
msg_p
);
protocol_ctxt_t
ctxt
=
{.
rntiMaybeUEid
=
resp
->
rnti
,
.
module_id
=
instance
,
.
instance
=
instance
,
.
enb_flag
=
1
,
.
eNB_index
=
instance
};
gNB_RRC_INST
*
rrc
=
RC
.
nrrrc
[
ctxt
.
module_id
];
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context_by_rnti
(
rrc
,
resp
->
rnti
);
...
...
@@ -2829,7 +2829,7 @@ void prepare_and_send_ue_context_modification_f1(rrc_gNB_ue_context_t *ue_contex
// TODO: So many hard codings
MessageDef
*
message_p
;
message_p
=
itti_alloc_new_message
(
TASK_RRC_GNB
,
0
,
F1AP_UE_CONTEXT_MODIFICATION_REQ
);
f1ap_ue_context_
setup_t
*
req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
message_p
);
f1ap_ue_context_
modif_req_t
*
req
=
&
F1AP_UE_CONTEXT_MODIFICATION_REQ
(
message_p
);
req
->
rnti
=
UE
->
rnti
;
req
->
mcc
=
RC
.
nrrrc
[
ctxt
.
module_id
]
->
configuration
.
mcc
[
0
];
req
->
mnc
=
RC
.
nrrrc
[
ctxt
.
module_id
]
->
configuration
.
mnc
[
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