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
57be09ef
Commit
57be09ef
authored
Jun 04, 2023
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Stubs for F1 UE Context Modification Required/Confirm/Refuse
parent
7fbccc70
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
130 additions
and
28 deletions
+130
-28
openair2/COMMON/f1ap_messages_def.h
openair2/COMMON/f1ap_messages_def.h
+3
-0
openair2/COMMON/f1ap_messages_types.h
openair2/COMMON/f1ap_messages_types.h
+25
-0
openair2/F1AP/f1ap_cu_task.c
openair2/F1AP/f1ap_cu_task.c
+10
-0
openair2/F1AP/f1ap_cu_ue_context_management.c
openair2/F1AP/f1ap_cu_ue_context_management.c
+14
-8
openair2/F1AP/f1ap_cu_ue_context_management.h
openair2/F1AP/f1ap_cu_ue_context_management.h
+5
-6
openair2/F1AP/f1ap_du_task.c
openair2/F1AP/f1ap_du_task.c
+4
-0
openair2/F1AP/f1ap_du_ue_context_management.c
openair2/F1AP/f1ap_du_ue_context_management.c
+16
-7
openair2/F1AP/f1ap_du_ue_context_management.h
openair2/F1AP/f1ap_du_ue_context_management.h
+4
-6
openair2/F1AP/f1ap_handlers.c
openair2/F1AP/f1ap_handlers.c
+1
-1
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
+12
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.h
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.h
+2
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul.h
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul.h
+1
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
+6
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
+6
-0
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
+1
-0
openair2/RRC/NR/mac_rrc_dl.h
openair2/RRC/NR/mac_rrc_dl.h
+2
-0
openair2/RRC/NR/mac_rrc_dl_direct.c
openair2/RRC/NR/mac_rrc_dl_direct.c
+2
-0
openair2/RRC/NR/mac_rrc_dl_f1ap.c
openair2/RRC/NR/mac_rrc_dl_f1ap.c
+14
-0
openair2/RRC/NR/nr_rrc_defs.h
openair2/RRC/NR/nr_rrc_defs.h
+2
-0
No files found.
openair2/COMMON/f1ap_messages_def.h
View file @
57be09ef
...
...
@@ -40,6 +40,7 @@ MESSAGE_DEF(F1AP_UL_RRC_MESSAGE , MESSAGE_PRIORITY_MED, f1ap_ul_r
MESSAGE_DEF
(
F1AP_UE_CONTEXT_RELEASE_REQ
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_release_req_t
,
f1ap_ue_context_release_req
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_RELEASE_CMD
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_release_cmd_t
,
f1ap_ue_context_release_cmd
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_RELEASE_COMPLETE
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_release_complete_t
,
f1ap_ue_context_release_complete
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_REQUIRED
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_modif_required_t
,
f1ap_ue_context_modification_required
)
/* RRC -> F1AP messages */
MESSAGE_DEF
(
F1AP_DL_RRC_MESSAGE
,
MESSAGE_PRIORITY_MED
,
f1ap_dl_rrc_message_t
,
f1ap_dl_rrc_message
)
...
...
@@ -48,6 +49,8 @@ MESSAGE_DEF(F1AP_UE_CONTEXT_SETUP_REQ, MESSAGE_PRIORITY_MED, f1ap_ue_context_se
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_modif_req_t
,
f1ap_ue_context_modification_req
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_RESP
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_modif_resp_t
,
f1ap_ue_context_modification_resp
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_CONFIRM
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_modif_confirm_t
,
f1ap_ue_context_modification_confirm
)
MESSAGE_DEF
(
F1AP_UE_CONTEXT_MODIFICATION_REFUSE
,
MESSAGE_PRIORITY_MED
,
f1ap_ue_context_modif_refuse_t
,
f1ap_ue_context_modification_refuse
)
/* 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 @
57be09ef
...
...
@@ -44,6 +44,9 @@
#define F1AP_UE_CONTEXT_MODIFICATION_REQ(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_req
#define F1AP_UE_CONTEXT_MODIFICATION_RESP(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_resp
#define F1AP_UE_CONTEXT_MODIFICATION_FAIL(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_fail
#define F1AP_UE_CONTEXT_MODIFICATION_REQUIRED(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_required
#define F1AP_UE_CONTEXT_MODIFICATION_CONFIRM(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_confirm
#define F1AP_UE_CONTEXT_MODIFICATION_REFUSE(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_modification_refuse
#define F1AP_DL_RRC_MESSAGE(mSGpTR) (mSGpTR)->ittiMsg.f1ap_dl_rrc_message
#define F1AP_UE_CONTEXT_RELEASE_REQ(mSGpTR) (mSGpTR)->ittiMsg.f1ap_ue_context_release_req
...
...
@@ -417,6 +420,28 @@ typedef enum F1ap_Cause_e {
F1AP_CAUSE_MISC
,
}
f1ap_Cause_t
;
typedef
struct
f1ap_ue_context_modif_required_t
{
uint32_t
gNB_CU_ue_id
;
uint32_t
gNB_DU_ue_id
;
du_to_cu_rrc_information_t
*
du_to_cu_rrc_information
;
f1ap_Cause_t
cause
;
long
cause_value
;
}
f1ap_ue_context_modif_required_t
;
typedef
struct
f1ap_ue_context_modif_confirm_t
{
uint32_t
gNB_CU_ue_id
;
uint32_t
gNB_DU_ue_id
;
uint8_t
*
rrc_container
;
int
rrc_container_length
;
}
f1ap_ue_context_modif_confirm_t
;
typedef
struct
f1ap_ue_context_modif_refuse_t
{
uint32_t
gNB_CU_ue_id
;
uint32_t
gNB_DU_ue_id
;
f1ap_Cause_t
cause
;
long
cause_value
;
}
f1ap_ue_context_modif_refuse_t
;
typedef
struct
f1ap_ue_context_release_s
{
uint32_t
gNB_CU_ue_id
;
uint32_t
gNB_DU_ue_id
;
...
...
openair2/F1AP/f1ap_cu_task.c
View file @
57be09ef
...
...
@@ -184,6 +184,16 @@ void *F1AP_CU_task(void *arg) {
&
F1AP_PAGING_IND
(
received_msg
));
break
;
case
F1AP_UE_CONTEXT_MODIFICATION_CONFIRM
:
CU_send_UE_CONTEXT_MODIFICATION_CONFIRM
(
ITTI_MSG_DESTINATION_INSTANCE
(
received_msg
),
&
F1AP_UE_CONTEXT_MODIFICATION_CONFIRM
(
received_msg
));
break
;
case
F1AP_UE_CONTEXT_MODIFICATION_REFUSE
:
CU_send_UE_CONTEXT_MODIFICATION_REFUSE
(
ITTI_MSG_DESTINATION_INSTANCE
(
received_msg
),
&
F1AP_UE_CONTEXT_MODIFICATION_REFUSE
(
received_msg
));
break
;
// case F1AP_SETUP_RESPONSE: // This is from RRC
// CU_send_F1_SETUP_RESPONSE(instance, *f1ap_setup_ind, &(F1AP_SETUP_RESP) f1ap_setup_resp)
// break;
...
...
openair2/F1AP/f1ap_cu_ue_context_management.c
View file @
57be09ef
...
...
@@ -1701,14 +1701,20 @@ int CU_handle_UE_CONTEXT_MODIFICATION_FAILURE(instance_t instance,
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
}
int
CU_handle_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
int
CU_handle_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
int
CU_send_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
F1AP_UEContextModificationConfirm_t
UEContextModificationConfirm_t
)
{
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
int
CU_send_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
f1ap_ue_context_modif_confirm_t
*
confirm
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
int
CU_send_UE_CONTEXT_MODIFICATION_REFUSE
(
instance_t
instance
,
f1ap_ue_context_modif_refuse_t
*
refuse
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
openair2/F1AP/f1ap_cu_ue_context_management.h
View file @
57be09ef
...
...
@@ -85,12 +85,11 @@ int CU_handle_UE_CONTEXT_MODIFICATION_FAILURE(instance_t instance,
/*
* UE Context Modification Required (gNB-DU initiated)
*/
int
CU_handle_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
int
CU_send_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
F1AP_UEContextModificationConfirm_t
UEContextModificationConfirm_t
);
int
CU_handle_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
int
CU_send_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
f1ap_ue_context_modif_confirm_t
*
confirm
);
int
CU_send_UE_CONTEXT_MODIFICATION_REFUSE
(
instance_t
instance
,
f1ap_ue_context_modif_refuse_t
*
refuse
);
/*
* UE Inactivity Notification
...
...
openair2/F1AP/f1ap_du_task.c
View file @
57be09ef
...
...
@@ -169,6 +169,10 @@ void *F1AP_DU_task(void *arg) {
DU_send_UE_CONTEXT_RELEASE_COMPLETE
(
myInstance
,
&
F1AP_UE_CONTEXT_RELEASE_COMPLETE
(
msg
));
break
;
case
F1AP_UE_CONTEXT_MODIFICATION_REQUIRED
:
DU_send_UE_CONTEXT_MODIFICATION_REQUIRED
(
myInstance
,
&
F1AP_UE_CONTEXT_MODIFICATION_REQUIRED
(
msg
));
break
;
case
TERMINATE_MESSAGE
:
LOG_W
(
F1AP
,
" *** Exiting F1AP thread
\n
"
);
itti_exit_task
();
...
...
openair2/F1AP/f1ap_du_ue_context_management.c
View file @
57be09ef
...
...
@@ -1285,12 +1285,21 @@ int DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance, f1ap_ue_contex
int
DU_send_UE_CONTEXT_MODIFICATION_FAILURE
(
instance_t
instance
)
{
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
}
int
DU_send_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
)
{
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
int
DU_send_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
f1ap_ue_context_modif_required_t
*
required
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
int
DU_handle_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
AssertFatal
(
1
==
0
,
"Not implemented yet
\n
"
);
int
DU_handle_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
int
DU_handle_UE_CONTEXT_MODIFICATION_REFUSE
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
return
0
;
}
openair2/F1AP/f1ap_du_ue_context_management.h
View file @
57be09ef
...
...
@@ -79,13 +79,11 @@ int DU_send_UE_CONTEXT_MODIFICATION_FAILURE(instance_t instance);
/*
* UE Context Modification Required (gNB-DU initiated)
*/
int
DU_send_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
);
int
DU_handle_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
int
DU_send_UE_CONTEXT_MODIFICATION_REQUIRED
(
instance_t
instance
,
f1ap_ue_context_modif_required_t
*
required
);
int
DU_send_UE_CONTEXT_SETUP_RESPONSE
(
instance_t
instance
,
f1ap_ue_context_setup_t
*
req
);
int
DU_handle_UE_CONTEXT_MODIFICATION_CONFIRM
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
int
DU_handle_UE_CONTEXT_MODIFICATION_REFUSE
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
);
/*
* UE Inactivity Notification
...
...
openair2/F1AP/f1ap_handlers.c
View file @
57be09ef
...
...
@@ -52,7 +52,7 @@ static const f1ap_message_processing_t f1ap_messages_processing[][3] = {
{
DU_handle_UE_CONTEXT_SETUP_REQUEST
,
CU_handle_UE_CONTEXT_SETUP_RESPONSE
,
0
},
/* UEContextSetup */
{
DU_handle_UE_CONTEXT_RELEASE_COMMAND
,
CU_handle_UE_CONTEXT_RELEASE_COMPLETE
,
0
},
/* UEContextRelease */
{
DU_handle_UE_CONTEXT_MODIFICATION_REQUEST
,
CU_handle_UE_CONTEXT_MODIFICATION_RESPONSE
,
0
},
/* UEContextModification */
{
0
,
0
,
0
},
/* UEContextModificationRequired */
{
CU_handle_UE_CONTEXT_MODIFICATION_REQUIRED
,
DU_handle_UE_CONTEXT_MODIFICATION_CONFIRM
,
DU_handle_UE_CONTEXT_MODIFICATION_REFUSE
},
/* UEContextModificationRequired */
{
0
,
0
,
0
},
/* UEMobilityCommand */
{
CU_handle_UE_CONTEXT_RELEASE_REQUEST
,
0
,
0
},
/* UEContextReleaseRequest */
{
CU_handle_INITIAL_UL_RRC_MESSAGE_TRANSFER
,
0
,
0
},
/* InitialULRRCMessageTransfer */
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
View file @
57be09ef
...
...
@@ -243,6 +243,18 @@ void ue_context_modification_request(const f1ap_ue_context_modif_req_t *req)
}
}
void
ue_context_modification_confirm
(
const
f1ap_ue_context_modif_confirm_t
*
confirm
)
{
(
void
)
confirm
;
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
void
ue_context_modification_refuse
(
const
f1ap_ue_context_modif_refuse_t
*
refuse
)
{
(
void
)
refuse
;
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
void
ue_context_release_command
(
const
f1ap_ue_context_release_cmd_t
*
cmd
)
{
/* mark UE as to be deleted after PUSCH failure */
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.h
View file @
57be09ef
...
...
@@ -27,6 +27,8 @@
void
ue_context_setup_request
(
const
f1ap_ue_context_setup_t
*
req
);
void
ue_context_modification_request
(
const
f1ap_ue_context_modif_req_t
*
req
);
void
ue_context_modification_confirm
(
const
f1ap_ue_context_modif_confirm_t
*
confirm
);
void
ue_context_modification_refuse
(
const
f1ap_ue_context_modif_refuse_t
*
refuse
);
void
ue_context_release_command
(
const
f1ap_ue_context_release_cmd_t
*
cmd
);
void
dl_rrc_message_transfer
(
const
f1ap_dl_rrc_message_t
*
dl_rrc
);
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul.h
View file @
57be09ef
...
...
@@ -28,6 +28,7 @@
typedef
void
(
*
ue_context_setup_response_func_t
)(
const
f1ap_ue_context_setup_t
*
req
,
const
f1ap_ue_context_setup_t
*
resp
);
typedef
void
(
*
ue_context_modification_response_func_t
)(
const
f1ap_ue_context_modif_req_t
*
req
,
const
f1ap_ue_context_modif_resp_t
*
resp
);
typedef
void
(
*
ue_context_modification_required_func_t
)(
const
f1ap_ue_context_modif_required_t
*
t
);
typedef
void
(
*
ue_context_release_request_func_t
)(
const
f1ap_ue_context_release_req_t
*
req
);
typedef
void
(
*
ue_context_release_complete_func_t
)(
const
f1ap_ue_context_release_complete_t
*
complete
);
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
View file @
57be09ef
...
...
@@ -111,6 +111,11 @@ static void ue_context_modification_response_direct(const f1ap_ue_context_modif_
itti_send_msg_to_task
(
TASK_RRC_GNB
,
0
,
msg
);
}
static
void
ue_context_modification_required_direct
(
const
f1ap_ue_context_modif_required_t
*
required
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
static
void
ue_context_release_request_direct
(
const
f1ap_ue_context_release_req_t
*
req
)
{
MessageDef
*
msg
=
itti_alloc_new_message
(
TASK_MAC_GNB
,
0
,
F1AP_UE_CONTEXT_RELEASE_REQ
);
...
...
@@ -151,6 +156,7 @@ void mac_rrc_ul_direct_init(struct nr_mac_rrc_ul_if_s *mac_rrc)
{
mac_rrc
->
ue_context_setup_response
=
ue_context_setup_response_direct
;
mac_rrc
->
ue_context_modification_response
=
ue_context_modification_response_direct
;
mac_rrc
->
ue_context_modification_required
=
ue_context_modification_required_direct
;
mac_rrc
->
ue_context_release_request
=
ue_context_release_request_direct
;
mac_rrc
->
ue_context_release_complete
=
ue_context_release_complete_direct
;
mac_rrc
->
initial_ul_rrc_message_transfer
=
initial_ul_rrc_message_transfer_direct
;
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
View file @
57be09ef
...
...
@@ -96,6 +96,11 @@ static void ue_context_modification_response_f1ap(const f1ap_ue_context_modif_re
itti_send_msg_to_task
(
TASK_DU_F1
,
0
,
msg
);
}
static
void
ue_context_modification_required_f1ap
(
const
f1ap_ue_context_modif_required_t
*
required
)
{
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
static
void
ue_context_release_request_f1ap
(
const
f1ap_ue_context_release_req_t
*
req
)
{
MessageDef
*
msg
=
itti_alloc_new_message
(
TASK_MAC_GNB
,
0
,
F1AP_UE_CONTEXT_RELEASE_REQ
);
...
...
@@ -138,6 +143,7 @@ void mac_rrc_ul_f1ap_init(struct nr_mac_rrc_ul_if_s *mac_rrc)
{
mac_rrc
->
ue_context_setup_response
=
ue_context_setup_response_f1ap
;
mac_rrc
->
ue_context_modification_response
=
ue_context_modification_response_f1ap
;
mac_rrc
->
ue_context_modification_required
=
ue_context_modification_required_f1ap
;
mac_rrc
->
ue_context_release_request
=
ue_context_release_request_f1ap
;
mac_rrc
->
ue_context_release_complete
=
ue_context_release_complete_f1ap
;
mac_rrc
->
initial_ul_rrc_message_transfer
=
initial_ul_rrc_message_transfer_f1ap
;
...
...
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
57be09ef
...
...
@@ -660,6 +660,7 @@ typedef struct NR_bler_options {
typedef
struct
nr_mac_rrc_ul_if_s
{
ue_context_setup_response_func_t
ue_context_setup_response
;
ue_context_modification_response_func_t
ue_context_modification_response
;
ue_context_modification_required_func_t
ue_context_modification_required
;
ue_context_release_request_func_t
ue_context_release_request
;
ue_context_release_complete_func_t
ue_context_release_complete
;
initial_ul_rrc_message_transfer_func_t
initial_ul_rrc_message_transfer
;
...
...
openair2/RRC/NR/mac_rrc_dl.h
View file @
57be09ef
...
...
@@ -27,6 +27,8 @@
typedef
void
(
*
ue_context_setup_request_func_t
)(
const
f1ap_ue_context_setup_t
*
req
);
typedef
void
(
*
ue_context_modification_request_func_t
)(
const
f1ap_ue_context_modif_req_t
*
req
);
typedef
void
(
*
ue_context_modification_confirm_func_t
)(
const
f1ap_ue_context_modif_confirm_t
*
confirm
);
typedef
void
(
*
ue_context_modification_refuse_func_t
)(
const
f1ap_ue_context_modif_refuse_t
*
refuse
);
typedef
void
(
*
ue_context_release_command_func_t
)(
const
f1ap_ue_context_release_cmd_t
*
cmd
);
typedef
void
(
*
dl_rrc_message_transfer_func_t
)(
const
f1ap_dl_rrc_message_t
*
dl_rrc
);
...
...
openair2/RRC/NR/mac_rrc_dl_direct.c
View file @
57be09ef
...
...
@@ -28,6 +28,8 @@ void mac_rrc_dl_direct_init(nr_mac_rrc_dl_if_t *mac_rrc)
{
mac_rrc
->
ue_context_setup_request
=
ue_context_setup_request
;
mac_rrc
->
ue_context_modification_request
=
ue_context_modification_request
;
mac_rrc
->
ue_context_modification_confirm
=
ue_context_modification_confirm
;
mac_rrc
->
ue_context_modification_refuse
=
ue_context_modification_refuse
;
mac_rrc
->
ue_context_release_command
=
ue_context_release_command
;
mac_rrc
->
dl_rrc_message_transfer
=
dl_rrc_message_transfer
;
}
openair2/RRC/NR/mac_rrc_dl_f1ap.c
View file @
57be09ef
...
...
@@ -71,6 +71,18 @@ static void ue_context_modification_request_f1ap(const f1ap_ue_context_modif_req
itti_send_msg_to_task
(
TASK_CU_F1
,
0
,
msg
);
}
static
void
ue_context_modification_confirm_f1ap
(
const
f1ap_ue_context_modif_confirm_t
*
confirm
)
{
(
void
)
confirm
;
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
static
void
ue_context_modification_refuse_f1ap
(
const
f1ap_ue_context_modif_refuse_t
*
refuse
)
{
(
void
)
refuse
;
AssertFatal
(
false
,
"%s() not implemented yet
\n
"
,
__func__
);
}
static
void
ue_context_release_command_f1ap
(
const
f1ap_ue_context_release_cmd_t
*
cmd
)
{
MessageDef
*
message_p
=
itti_alloc_new_message
(
TASK_RRC_GNB
,
0
,
F1AP_UE_CONTEXT_RELEASE_CMD
);
...
...
@@ -110,6 +122,8 @@ void mac_rrc_dl_f1ap_init(nr_mac_rrc_dl_if_t *mac_rrc)
{
mac_rrc
->
ue_context_setup_request
=
ue_context_setup_request_f1ap
;
mac_rrc
->
ue_context_modification_request
=
ue_context_modification_request_f1ap
;
mac_rrc
->
ue_context_modification_confirm
=
ue_context_modification_confirm_f1ap
;
mac_rrc
->
ue_context_modification_refuse
=
ue_context_modification_refuse_f1ap
;
mac_rrc
->
ue_context_release_command
=
ue_context_release_command_f1ap
;
mac_rrc
->
dl_rrc_message_transfer
=
dl_rrc_message_transfer_f1ap
;
}
openair2/RRC/NR/nr_rrc_defs.h
View file @
57be09ef
...
...
@@ -365,6 +365,8 @@ typedef struct {
typedef
struct
nr_mac_rrc_dl_if_s
{
ue_context_setup_request_func_t
ue_context_setup_request
;
ue_context_modification_request_func_t
ue_context_modification_request
;
ue_context_modification_confirm_func_t
ue_context_modification_confirm
;
ue_context_modification_refuse_func_t
ue_context_modification_refuse
;
ue_context_release_command_func_t
ue_context_release_command
;
dl_rrc_message_transfer_func_t
dl_rrc_message_transfer
;
}
nr_mac_rrc_dl_if_t
;
...
...
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