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
Michael Black
OpenXG-RAN
Commits
10b996f5
Commit
10b996f5
authored
Apr 11, 2023
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Stubs for F1 UE Context Setup Req+Resp messages
parent
31a10033
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
47 additions
and
6 deletions
+47
-6
openair2/F1AP/f1ap_du_ue_context_management.c
openair2/F1AP/f1ap_du_ue_context_management.c
+6
-6
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
+8
-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
+2
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
+7
-0
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
+8
-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
+1
-0
openair2/RRC/NR/mac_rrc_dl_f1ap.c
openair2/RRC/NR/mac_rrc_dl_f1ap.c
+9
-0
openair2/RRC/NR/nr_rrc_defs.h
openair2/RRC/NR/nr_rrc_defs.h
+1
-0
No files found.
openair2/F1AP/f1ap_du_ue_context_management.c
View file @
10b996f5
...
...
@@ -35,6 +35,7 @@
#include "f1ap_decoder.h"
#include "f1ap_itti_messaging.h"
#include "f1ap_du_ue_context_management.h"
#include "openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.h"
#include "rrc_extern.h"
#include "openair2/RRC/NR/rrc_gNB_UE_context.h"
...
...
@@ -65,13 +66,13 @@ bool lteDURecvCb(protocol_ctxt_t *ctxt_pP,
int
DU_handle_UE_CONTEXT_SETUP_REQUEST
(
instance_t
instance
,
uint32_t
assoc_id
,
uint32_t
stream
,
F1AP_F1AP_PDU_t
*
pdu
)
{
MessageDef
*
msg_p
;
// message to RRC
F1AP_F1AP_PDU_t
*
pdu
)
{
F1AP_UEContextSetupRequest_t
*
container
;
int
i
;
DevAssert
(
pdu
);
msg_p
=
itti_alloc_new_message
(
TASK_DU_F1
,
0
,
F1AP_UE_CONTEXT_SETUP_REQ
)
;
f1ap_ue_context_setup_t
*
f1ap_ue_context_setup_req
=
&
F1AP_UE_CONTEXT_SETUP_REQ
(
msg_p
)
;
f1ap_ue_context_setup_t
ue_context_setup
=
{
0
}
;
f1ap_ue_context_setup_t
*
f1ap_ue_context_setup_req
=
&
ue_context_setup
;
container
=
&
pdu
->
choice
.
initiatingMessage
->
value
.
choice
.
UEContextSetupRequest
;
/* GNB_CU_UE_F1AP_ID */
F1AP_UEContextSetupRequestIEs_t
*
ieCU
;
...
...
@@ -224,8 +225,7 @@ int DU_handle_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
LOG_W
(
F1AP
,
"can't find RRCContainer in UEContextSetupRequestIEs by id %ld
\n
"
,
F1AP_ProtocolIE_ID_id_RRCContainer
);
}
itti_send_msg_to_task
(
TASK_RRC_GNB
,
instance
,
msg_p
);
ue_context_setup_request
(
f1ap_ue_context_setup_req
);
return
0
;
}
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.c
View file @
10b996f5
...
...
@@ -19,6 +19,8 @@
* contact@openairinterface.org
*/
#include <stdlib.h>
#include "mac_rrc_dl_handler.h"
#include "mac_proto.h"
...
...
@@ -29,6 +31,12 @@
#include "NR_DL-CCCH-Message.h"
#include "NR_CellGroupConfig.h"
void
ue_context_setup_request
(
const
f1ap_ue_context_setup_t
*
req
)
{
(
void
)
req
;
abort
();
}
int
dl_rrc_message
(
module_id_t
module_id
,
const
f1ap_dl_rrc_message_t
*
dl_rrc
)
{
LOG_I
(
NR_MAC
,
"DL RRC Message Transfer with %d bytes for RNTI %04x SRB %d
\n
"
,
dl_rrc
->
rrc_container_length
,
dl_rrc
->
rnti
,
dl_rrc
->
srb_id
);
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_dl_handler.h
View file @
10b996f5
...
...
@@ -25,6 +25,8 @@
#include "platform_types.h"
#include "f1ap_messages_types.h"
void
ue_context_setup_request
(
const
f1ap_ue_context_setup_t
*
req
);
int
dl_rrc_message
(
module_id_t
module_id
,
const
f1ap_dl_rrc_message_t
*
dl_rrc
);
#endif
/* MAC_RRC_DL_HANDLER_H */
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul.h
View file @
10b996f5
...
...
@@ -25,6 +25,8 @@
#include "platform_types.h"
#include "f1ap_messages_types.h"
typedef
void
(
*
ue_context_setup_response_func_t
)(
const
f1ap_ue_context_setup_t
*
req
,
const
f1ap_ue_context_setup_t
*
resp
);
typedef
void
(
*
initial_ul_rrc_message_transfer_func_t
)(
module_id_t
module_id
,
const
f1ap_initial_ul_rrc_message_t
*
ul_rrc
);
struct
nr_mac_rrc_ul_if_s
;
...
...
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_direct.c
View file @
10b996f5
...
...
@@ -24,6 +24,12 @@
#include "mac_rrc_ul.h"
static
void
ue_context_setup_response_direct
(
const
f1ap_ue_context_setup_t
*
req
,
const
f1ap_ue_context_setup_t
*
resp
)
{
(
void
)
req
;
/* we don't need the request -- it is to set up GTP in F1 case */
AssertFatal
(
false
,
"not implemented
\n
"
);
}
static
void
initial_ul_rrc_message_transfer_direct
(
module_id_t
module_id
,
const
f1ap_initial_ul_rrc_message_t
*
ul_rrc
)
{
MessageDef
*
msg
=
itti_alloc_new_message
(
TASK_MAC_GNB
,
0
,
F1AP_INITIAL_UL_RRC_MESSAGE
);
...
...
@@ -46,5 +52,6 @@ static void initial_ul_rrc_message_transfer_direct(module_id_t module_id, const
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
->
initial_ul_rrc_message_transfer
=
initial_ul_rrc_message_transfer_direct
;
}
openair2/LAYER2/NR_MAC_gNB/mac_rrc_ul_f1ap.c
View file @
10b996f5
...
...
@@ -24,6 +24,13 @@
#include "mac_rrc_ul.h"
static
void
ue_context_setup_response_f1ap
(
const
f1ap_ue_context_setup_t
*
req
,
const
f1ap_ue_context_setup_t
*
resp
)
{
AssertFatal
(
false
,
"not implemented
\n
"
);
/* TODO: set up GTP tunnel for DL, and fill UL TEID in resp */
}
static
void
initial_ul_rrc_message_transfer_f1ap
(
module_id_t
module_id
,
const
f1ap_initial_ul_rrc_message_t
*
ul_rrc
)
{
MessageDef
*
msg
=
itti_alloc_new_message
(
TASK_MAC_GNB
,
0
,
F1AP_INITIAL_UL_RRC_MESSAGE
);
...
...
@@ -46,6 +53,7 @@ static void initial_ul_rrc_message_transfer_f1ap(module_id_t module_id, const f1
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
->
initial_ul_rrc_message_transfer
=
initial_ul_rrc_message_transfer_f1ap
;
}
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
10b996f5
...
...
@@ -660,6 +660,7 @@ typedef struct NR_bler_options {
typedef
struct
nr_mac_rrc_ul_if_s
{
/* TODO add other message types as necessary */
ue_context_setup_response_func_t
ue_context_setup_response
;
initial_ul_rrc_message_transfer_func_t
initial_ul_rrc_message_transfer
;
}
nr_mac_rrc_ul_if_t
;
...
...
openair2/RRC/NR/mac_rrc_dl.h
View file @
10b996f5
...
...
@@ -25,6 +25,8 @@
#include "platform_types.h"
#include "f1ap_messages_types.h"
typedef
void
(
*
ue_context_setup_request_func_t
)(
const
f1ap_ue_context_setup_t
*
req
);
typedef
void
(
*
dl_rrc_message_transfer_func_t
)(
module_id_t
module_id
,
const
f1ap_dl_rrc_message_t
*
dl_rrc
);
struct
nr_mac_rrc_dl_if_s
;
...
...
openair2/RRC/NR/mac_rrc_dl_direct.c
View file @
10b996f5
...
...
@@ -33,5 +33,6 @@ static void dl_rrc_message_transfer_direct(module_id_t module_id, const f1ap_dl_
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
->
dl_rrc_message_transfer
=
dl_rrc_message_transfer_direct
;
}
openair2/RRC/NR/mac_rrc_dl_f1ap.c
View file @
10b996f5
...
...
@@ -19,9 +19,17 @@
* conmnc_digit_lengtht@openairinterface.org
*/
#include <stdlib.h>
#include "mac_rrc_dl.h"
#include "nr_rrc_defs.h"
static
void
ue_context_setup_request_f1ap
(
const
f1ap_ue_context_setup_t
*
req
)
{
(
void
)
req
;
abort
();
}
static
void
dl_rrc_message_transfer_f1ap
(
module_id_t
module_id
,
const
f1ap_dl_rrc_message_t
*
dl_rrc
)
{
/* TODO call F1AP function directly? no real-time constraint here */
...
...
@@ -40,5 +48,6 @@ static void dl_rrc_message_transfer_f1ap(module_id_t module_id, const f1ap_dl_rr
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
->
dl_rrc_message_transfer
=
dl_rrc_message_transfer_f1ap
;
}
openair2/RRC/NR/nr_rrc_defs.h
View file @
10b996f5
...
...
@@ -481,6 +481,7 @@ typedef struct {
typedef
struct
nr_mac_rrc_dl_if_s
{
/* TODO add other message types as necessary */
ue_context_setup_request_func_t
ue_context_setup_request
;
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