Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG UE
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 UE
Commits
68893841
Commit
68893841
authored
Apr 25, 2019
by
Raphael Defosseux
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/fix-cudu' into develop_integration_2019_w17
parents
6ef26e55
e7d7e141
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
58 additions
and
48 deletions
+58
-48
openair2/ENB_APP/enb_config.c
openair2/ENB_APP/enb_config.c
+0
-8
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
+4
-5
openair2/LAYER2/PDCP_v10.1.0/pdcp.h
openair2/LAYER2/PDCP_v10.1.0/pdcp.h
+2
-2
openair2/LAYER2/PROTO_AGENT/proto_agent.c
openair2/LAYER2/PROTO_AGENT/proto_agent.c
+5
-5
openair2/LAYER2/PROTO_AGENT/proto_agent.h
openair2/LAYER2/PROTO_AGENT/proto_agent.h
+1
-1
openair2/LAYER2/RLC/rlc.c
openair2/LAYER2/RLC/rlc.c
+0
-4
targets/RT/USER/lte-softmodem.c
targets/RT/USER/lte-softmodem.c
+29
-15
targets/RT/USER/lte-softmodem.h
targets/RT/USER/lte-softmodem.h
+1
-0
targets/RT/USER/lte-uesoftmodem.c
targets/RT/USER/lte-uesoftmodem.c
+16
-8
No files found.
openair2/ENB_APP/enb_config.c
View file @
68893841
...
...
@@ -2871,12 +2871,4 @@ void read_config_and_init(void) {
memset
((
void
*
)
RC
.
rrc
[
enb_id
],
0
,
sizeof
(
eNB_RRC_INST
));
RCconfig_RRC
(
enb_id
,
RC
.
rrc
[
enb_id
],
macrlc_has_f1
[
enb_id
]);
}
if
(
!
NODE_IS_DU
(
RC
.
rrc
[
0
]
->
node_type
))
{
pdcp_layer_init
();
if
(
NODE_IS_CU
(
RC
.
rrc
[
0
]
->
node_type
)
)
{
pdcp_set_rlc_funcptr
((
send_rlc_data_req_func_t
)
proto_agent_send_rlc_data_req
,
(
pdcp_data_ind_func_t
)
proto_agent_send_pdcp_data_ind
);
}
}
}
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
View file @
68893841
...
...
@@ -2140,9 +2140,11 @@ pdcp_data_ind_func_t get_pdcp_data_ind_func() {
return
pdcp_params
.
pdcp_data_ind_func
;
}
void
pdcp_set_rlc_funcptr
(
send_rlc_data_req_func_t
send_rlc_data_req
,
pdcp_data_ind_func_t
pdcp_data_ind
)
{
void
pdcp_set_rlc_data_req_func
(
send_rlc_data_req_func_t
send_rlc_data_req
)
{
pdcp_params
.
send_rlc_data_req_func
=
send_rlc_data_req
;
}
void
pdcp_set_pdcp_data_ind_func
(
pdcp_data_ind_func_t
pdcp_data_ind
)
{
pdcp_params
.
pdcp_data_ind_func
=
pdcp_data_ind
;
}
...
...
@@ -2175,9 +2177,6 @@ uint64_t pdcp_module_init( uint64_t pdcp_optmask ) {
netlink_init
();
}
}
/* default interface with rlc (will be modified if CU) */
pdcp_set_rlc_funcptr
((
send_rlc_data_req_func_t
)
rlc_data_req
,
(
pdcp_data_ind_func_t
)
pdcp_data_ind
);
return
pdcp_params
.
optmask
;
}
...
...
openair2/LAYER2/PDCP_v10.1.0/pdcp.h
View file @
68893841
...
...
@@ -412,8 +412,8 @@ int pdcp_fifo_flush_sdus ( const protocol_ctxt_t *const ct
int
pdcp_fifo_read_input_sdus_remaining_bytes
(
const
protocol_ctxt_t
*
const
ctxt_pP
);
int
pdcp_fifo_read_input_sdus
(
const
protocol_ctxt_t
*
const
ctxt_pP
);
void
pdcp_fifo_read_input_sdus_from_otg
(
const
protocol_ctxt_t
*
const
ctxt_pP
);
void
pdcp_set_rlc_
funcptr
(
send_rlc_data_req_func_t
send_rlc_data_req
,
pdcp_data_ind_func_t
pdcp_data_ind
);
void
pdcp_set_rlc_
data_req_func
(
send_rlc_data_req_func_t
send_rlc_data_req
);
void
pdcp_set_pdcp_data_ind_func
(
pdcp_data_ind_func_t
pdcp_data_ind
);
pdcp_data_ind_func_t
get_pdcp_data_ind_func
(
void
);
//-----------------------------------------------------------------------------
...
...
openair2/LAYER2/PROTO_AGENT/proto_agent.c
View file @
68893841
...
...
@@ -191,14 +191,14 @@ rlc_op_status_t proto_agent_send_rlc_data_req(const protocol_ctxt_t *const ctxt
proto_agent_async_msg_send
((
void
*
)
msg
,
(
int
)
msgsize
,
1
,
proto_agent
[
mod_id
].
channel
->
channel_info
);
free_mem_block
(
sdu_pP
,
__func__
);
return
0
;
return
RLC_OP_STATUS_OK
;
error:
LOG_E
(
PROTO_AGENT
,
"PROTO_AGENT there was an error
\n
"
);
return
-
1
;
return
RLC_OP_STATUS_INTERNAL_ERROR
;
}
void
boolean_t
proto_agent_send_pdcp_data_ind
(
const
protocol_ctxt_t
*
const
ctxt_pP
,
const
srb_flag_t
srb_flagP
,
const
MBMS_flag_t
MBMS_flagP
,
const
rb_id_t
rb_idP
,
sdu_size_t
sdu_sizeP
,
mem_block_t
*
sdu_pP
)
{
uint8_t
*
msg
=
NULL
;
...
...
@@ -225,10 +225,10 @@ proto_agent_send_pdcp_data_ind(const protocol_ctxt_t *const ctxt_pP, const srb_f
proto_agent_async_msg_send
((
void
*
)
msg
,
(
int
)
msgsize
,
1
,
proto_agent
[
mod_id
].
channel
->
channel_info
);
free_mem_block
(
sdu_pP
,
__func__
);
return
;
return
TRUE
;
error:
LOG_E
(
PROTO_AGENT
,
"there was an error in %s
\n
"
,
__func__
);
return
;
return
FALSE
;
}
void
*
...
...
openair2/LAYER2/PROTO_AGENT/proto_agent.h
View file @
68893841
...
...
@@ -51,7 +51,7 @@ rlc_op_status_t proto_agent_send_rlc_data_req( const protocol_ctxt_t *const ctxt
const
rb_id_t
rb_idP
,
const
mui_t
muiP
,
confirm_t
confirmP
,
sdu_size_t
sdu_sizeP
,
mem_block_t
*
sdu_pP
);
void
proto_agent_send_pdcp_data_ind
(
const
protocol_ctxt_t
*
const
ctxt_pP
,
boolean_t
proto_agent_send_pdcp_data_ind
(
const
protocol_ctxt_t
*
const
ctxt_pP
,
const
srb_flag_t
srb_flagP
,
const
MBMS_flag_t
MBMS_flagP
,
const
rb_id_t
rb_idP
,
sdu_size_t
sdu_sizeP
,
mem_block_t
*
sdu_pP
);
...
...
openair2/LAYER2/RLC/rlc.c
View file @
68893841
...
...
@@ -52,10 +52,6 @@ extern boolean_t pdcp_data_ind(
//#define TRACE_RLC_PAYLOAD 1
#define DEBUG_RLC_DATA_REQ 1
#include "proto_agent.h"
//-----------------------------------------------------------------------------
void
rlc_util_print_hex_octets
(
comp_name_t
componentP
,
unsigned
char
*
dataP
,
const
signed
long
sizeP
)
//-----------------------------------------------------------------------------
...
...
targets/RT/USER/lte-softmodem.c
View file @
68893841
...
...
@@ -575,6 +575,25 @@ int restart_L1L2(module_id_t enb_id) {
return
0
;
}
void
init_pdcp
(
void
)
{
if
(
!
NODE_IS_DU
(
RC
.
rrc
[
0
]
->
node_type
))
{
pdcp_layer_init
();
uint32_t
pdcp_initmask
=
(
IS_SOFTMODEM_NOS1
)
?
(
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
)
:
LINK_ENB_PDCP_TO_GTPV1U_BIT
;
if
(
IS_SOFTMODEM_NOS1
)
pdcp_initmask
=
pdcp_initmask
|
ENB_NAS_USE_TUN_BIT
|
SOFTMODEM_NOKRNMOD_BIT
;
pdcp_module_init
(
pdcp_initmask
);
if
(
NODE_IS_CU
(
RC
.
rrc
[
0
]
->
node_type
))
{
pdcp_set_rlc_data_req_func
((
send_rlc_data_req_func_t
)
proto_agent_send_rlc_data_req
);
}
else
{
pdcp_set_rlc_data_req_func
((
send_rlc_data_req_func_t
)
rlc_data_req
);
pdcp_set_pdcp_data_ind_func
((
pdcp_data_ind_func_t
)
pdcp_data_ind
);
}
}
else
{
pdcp_set_pdcp_data_ind_func
((
pdcp_data_ind_func_t
)
proto_agent_send_pdcp_data_ind
);
}
}
static
void
wait_nfapi_init
(
char
*
thread_name
)
{
printf
(
"waiting for NFAPI PNF connection and population of global structure (%s)
\n
"
,
thread_name
);
...
...
@@ -654,24 +673,19 @@ int main( int argc, char **argv ) {
fill_modeled_runtime_table
(
runtime_phy_rx
,
runtime_phy_tx
);
/* Read configuration */
if
(
RC
.
nb_inst
>
0
)
if
(
RC
.
nb_inst
>
0
)
{
read_config_and_init
();
/* Start the agent. If it is turned off in the configuration, it won't start */
RCconfig_flexran
();
for
(
i
=
0
;
i
<
RC
.
nb_inst
;
i
++
)
{
flexran_agent_start
(
i
);
}
uint32_t
pdcp_initmask
=
(
IS_SOFTMODEM_NOS1
)
?
(
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
)
:
LINK_ENB_PDCP_TO_GTPV1U_BIT
;
if
(
IS_SOFTMODEM_NOS1
)
pdcp_initmask
=
pdcp_initmask
|
ENB_NAS_USE_TUN_BIT
|
SOFTMODEM_NOKRNMOD_BIT
;
/* Start the agent. If it is turned off in the configuration, it won't start */
RCconfig_flexran
();
for
(
i
=
0
;
i
<
RC
.
nb_inst
;
i
++
)
{
flexran_agent_start
(
i
);
}
pdcp_module_init
(
pdcp_initmask
);
/* initializes PDCP and sets correct RLC Request/PDCP Indication callbacks
* for monolithic/F1 modes */
init_pdcp
();
if
(
RC
.
nb_inst
>
0
)
{
if
(
create_tasks
(
1
)
<
0
)
{
printf
(
"cannot create ITTI tasks
\n
"
);
exit
(
-
1
);
...
...
@@ -683,7 +697,7 @@ int main( int argc, char **argv ) {
itti_send_msg_to_task
(
TASK_RRC_ENB
,
ENB_MODULE_ID_TO_INSTANCE
(
enb_id
),
msg_p
);
}
}
else
{
printf
(
"
No ITTI
, Initializing L1
\n
"
);
printf
(
"
RC.nb_inst = 0
, Initializing L1
\n
"
);
RCconfig_L1
();
}
...
...
targets/RT/USER/lte-softmodem.h
View file @
68893841
...
...
@@ -35,6 +35,7 @@
#include "flexran_agent.h"
#include "s1ap_eNB.h"
#include "SIMULATION/ETH_TRANSPORT/proto.h"
#include "proto_agent.h"
/* help strings definition for command line options, used in CMDLINE_XXX_DESC macros and printed when -h option is used */
#define CONFIG_HLP_RFCFGF "Configuration file for front-end (e.g. LMS7002M)\n"
...
...
targets/RT/USER/lte-uesoftmodem.c
View file @
68893841
...
...
@@ -659,6 +659,21 @@ int restart_L1L2(module_id_t enb_id) {
return
0
;
}
void
init_pdcp
(
void
)
{
uint32_t
pdcp_initmask
=
(
!
IS_SOFTMODEM_NOS1
)
?
LINK_ENB_PDCP_TO_GTPV1U_BIT
:
(
LINK_ENB_PDCP_TO_GTPV1U_BIT
|
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
);
if
(
IS_SOFTMODEM_BASICSIM
||
IS_SOFTMODEM_RFSIM
||
(
nfapi_getmode
()
==
NFAPI_UE_STUB_PNF
))
{
pdcp_initmask
=
pdcp_initmask
|
UE_NAS_USE_TUN_BIT
;
}
if
(
IS_SOFTMODEM_NOKRNMOD
)
pdcp_initmask
=
pdcp_initmask
|
UE_NAS_USE_TUN_BIT
;
pdcp_module_init
(
pdcp_initmask
);
pdcp_set_rlc_data_req_func
((
send_rlc_data_req_func_t
)
rlc_data_req
);
pdcp_set_pdcp_data_ind_func
((
pdcp_data_ind_func_t
)
pdcp_data_ind
);
}
int
main
(
int
argc
,
char
**
argv
)
{
#if defined (XFORMS)
void
*
status
;
...
...
@@ -734,16 +749,9 @@ int main( int argc, char **argv ) {
MSC_INIT
(
MSC_E_UTRAN
,
THREAD_MAX
+
TASK_MAX
);
init_opt
();
uint32_t
pdcp_initmask
=
(
!
IS_SOFTMODEM_NOS1
)
?
LINK_ENB_PDCP_TO_GTPV1U_BIT
:
(
LINK_ENB_PDCP_TO_GTPV1U_BIT
|
PDCP_USE_NETLINK_BIT
|
LINK_ENB_PDCP_TO_IP_DRIVER_BIT
);
if
(
IS_SOFTMODEM_BASICSIM
||
IS_SOFTMODEM_RFSIM
||
(
nfapi_getmode
()
==
NFAPI_UE_STUB_PNF
)
)
{
pdcp_initmask
=
pdcp_initmask
|
UE_NAS_USE_TUN_BIT
;
}
if
(
IS_SOFTMODEM_NOKRNMOD
)
pdcp_initmask
=
pdcp_initmask
|
UE_NAS_USE_TUN_BIT
;
init_pdcp
();
pdcp_module_init
(
pdcp_initmask
);
//TTN for D2D
printf
(
"RRC control socket
\n
"
);
rrc_control_socket_init
();
...
...
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