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
wangjie
OpenXG-RAN
Commits
04b28b45
Commit
04b28b45
authored
Apr 30, 2021
by
Laurent THOMAS
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixes from testing
parent
8383843e
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
64 additions
and
28 deletions
+64
-28
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+2
-2
executables/nr-softmodem.c
executables/nr-softmodem.c
+0
-1
executables/nr-uesoftmodem.c
executables/nr-uesoftmodem.c
+0
-1
executables/nr-uesoftmodem.h
executables/nr-uesoftmodem.h
+1
-1
openair1/PHY/INIT/nr_parms.c
openair1/PHY/INIT/nr_parms.c
+2
-2
openair1/PHY/MODULATION/slot_fep_nr.c
openair1/PHY/MODULATION/slot_fep_nr.c
+11
-8
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
+2
-1
openair2/COMMON/gtpv1_u_messages_types.h
openair2/COMMON/gtpv1_u_messages_types.h
+2
-0
openair2/GNB_APP/gnb_config.c
openair2/GNB_APP/gnb_config.c
+2
-0
openair2/LAYER2/NR_MAC_UE/mac_defs.h
openair2/LAYER2/NR_MAC_UE/mac_defs.h
+3
-0
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
+2
-2
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
+4
-2
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
+3
-2
openair2/RRC/NR/rrc_gNB_reconfig.c
openair2/RRC/NR/rrc_gNB_reconfig.c
+1
-3
openair2/RRC/NR_UE/L2_interface_ue.c
openair2/RRC/NR_UE/L2_interface_ue.c
+1
-1
openair2/RRC/NR_UE/rrc_UE.c
openair2/RRC/NR_UE/rrc_UE.c
+0
-1
openair3/ocp-gtpu/gtp_itf.cpp
openair3/ocp-gtpu/gtp_itf.cpp
+27
-0
openair3/ocp-gtpu/gtp_itf.h
openair3/ocp-gtpu/gtp_itf.h
+1
-1
No files found.
cmake_targets/CMakeLists.txt
View file @
04b28b45
...
...
@@ -336,8 +336,8 @@ else (CUDA_FOUND)
endif
()
if
(
SANITIZE_ADDRESS
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-fsanitize=address"
)
set
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-fsanitize=address"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-fsanitize=address
-fno-common
"
)
set
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-fsanitize=address
-fno-common
"
)
endif
()
add_definitions
(
"-DASN_DISABLE_OER_SUPPORT"
)
...
...
executables/nr-softmodem.c
View file @
04b28b45
...
...
@@ -98,7 +98,6 @@ pthread_cond_t sync_cond;
pthread_mutex_t
sync_mutex
;
int
sync_var
=-
1
;
//!< protected by mutex \ref sync_mutex.
int
config_sync_var
=-
1
;
msc_interface_t
msc_interface
;
volatile
int
start_gNB
=
0
;
volatile
int
oai_exit
=
0
;
...
...
executables/nr-uesoftmodem.c
View file @
04b28b45
...
...
@@ -92,7 +92,6 @@ unsigned short config_frames[4] = {2,9,11,13};
#endif
extern
const
char
*
duplex_mode
[];
msc_interface_t
msc_interface
;
THREAD_STRUCT
thread_struct
;
// Thread variables
...
...
executables/nr-uesoftmodem.h
View file @
04b28b45
...
...
@@ -55,7 +55,7 @@
{"ue-scan-carrier", CONFIG_HLP_UESCAN, PARAMFLAG_BOOL, iptr:&(UE->UE_scan_carrier), defintval:0, TYPE_INT, 0}, \
{"ue-fo-compensation", CONFIG_HLP_UEFO, PARAMFLAG_BOOL, iptr:&(UE->UE_fo_compensation), defintval:0, TYPE_INT, 0}, \
{"ue-max-power", NULL, 0, iptr:&(tx_max_power[0]), defintval:90, TYPE_INT, 0}, \
{"r" , CONFIG_HLP_PRB, 0,
iptr:&(N_RB_DL), def
intval:160, TYPE_UINT, 0}, \
{"r" , CONFIG_HLP_PRB, 0,
uptr:&(N_RB_DL), defu
intval:160, TYPE_UINT, 0}, \
{"A" , CONFIG_HLP_TADV, 0, iptr:&(UE->timing_advance), defintval:0, TYPE_INT, 0}, \
{"E" , CONFIG_HLP_TQFS, PARAMFLAG_BOOL, u8ptr:&(fp->threequarter_fs), defintval:0, TYPE_UINT8, 0}, \
{"T" , CONFIG_HLP_TDD, PARAMFLAG_BOOL, iptr:&tddflag, defintval:0, TYPE_INT, 0}, \
...
...
openair1/PHY/INIT/nr_parms.c
View file @
04b28b45
...
...
@@ -263,9 +263,9 @@ int nr_init_frame_parms_ue(NR_DL_FRAME_PARMS *fp,
uint64_t
dl_bw_khz
=
(
12
*
config
->
carrier_config
.
dl_grid_size
[
config
->
ssb_config
.
scs_common
])
*
(
15
<<
config
->
ssb_config
.
scs_common
);
LOG_I
(
PHY
,
"dl_bw_kHz %l
l
u
\n
"
,
dl_bw_khz
);
LOG_I
(
PHY
,
"dl_bw_kHz %lu
\n
"
,
dl_bw_khz
);
fp
->
dl_CarrierFreq
=
((
dl_bw_khz
>>
1
)
+
config
->
carrier_config
.
dl_frequency
)
*
1000
;
LOG_I
(
PHY
,
"dl_CarrierFreq %l
l
u
\n
"
,
fp
->
dl_CarrierFreq
);
LOG_I
(
PHY
,
"dl_CarrierFreq %lu
\n
"
,
fp
->
dl_CarrierFreq
);
uint64_t
ul_bw_khz
=
(
12
*
config
->
carrier_config
.
ul_grid_size
[
config
->
ssb_config
.
scs_common
])
*
(
15
<<
config
->
ssb_config
.
scs_common
);
fp
->
ul_CarrierFreq
=
((
ul_bw_khz
>>
1
)
+
config
->
carrier_config
.
uplink_frequency
)
*
1000
;
...
...
openair1/PHY/MODULATION/slot_fep_nr.c
View file @
04b28b45
...
...
@@ -211,16 +211,19 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue,
memset
(
&
common_vars
->
common_vars_rx_data_per_thread
[
proc
->
thread_id
].
rxdataF
[
aa
][
frame_parms
->
ofdm_symbol_size
*
symbol
],
0
,
frame_parms
->
ofdm_symbol_size
*
sizeof
(
int32_t
));
int16_t
*
rxdata_ptr
;
rx_offset
%=
frame_length_samples
*
2
;
if
(
frame_length_samples
-
rx_offset
<
frame_parms
->
ofdm_symbol_size
)
{
if
(
rx_offset
+
frame_parms
->
ofdm_symbol_size
>
frame_length_samples
*
2
)
{
// rxdata is 2 frames len
// we have to wrap on the end
memcpy
((
void
*
)
&
tmp_dft_in
[
0
],
(
void
*
)
&
common_vars
->
rxdata
[
aa
][
rx_offset
],
(
frame_length_samples
-
rx_offset
)
*
sizeof
(
int32_t
));
memcpy
((
void
*
)
&
tmp_dft_in
[
frame_length_samples
-
rx_offset
],
(
frame_length_samples
*
2
-
rx_offset
)
*
sizeof
(
int32_t
));
memcpy
((
void
*
)
&
tmp_dft_in
[
frame_length_samples
*
2
-
rx_offset
],
(
void
*
)
&
common_vars
->
rxdata
[
aa
][
0
],
(
frame_parms
->
ofdm_symbol_size
-
(
frame_length_samples
-
rx_offset
))
*
sizeof
(
int32_t
));
rxdata_ptr
=
(
int16_t
*
)
&
tmp_dft_in
[
0
]
;
(
frame_parms
->
ofdm_symbol_size
-
(
frame_length_samples
*
2
-
rx_offset
))
*
sizeof
(
int32_t
));
rxdata_ptr
=
(
int16_t
*
)
tmp_dft_in
;
}
else
if
((
rx_offset
&
7
)
!=
0
)
{
...
...
@@ -228,7 +231,7 @@ int nr_slot_fep_init_sync(PHY_VARS_NR_UE *ue,
memcpy
((
void
*
)
&
tmp_dft_in
[
0
],
(
void
*
)
&
common_vars
->
rxdata
[
aa
][
rx_offset
],
frame_parms
->
ofdm_symbol_size
*
sizeof
(
int32_t
));
rxdata_ptr
=
(
int16_t
*
)
&
tmp_dft_in
[
0
]
;
rxdata_ptr
=
(
int16_t
*
)
tmp_dft_in
;
}
else
{
...
...
@@ -308,7 +311,7 @@ int nr_slot_fep_ul(NR_DL_FRAME_PARMS *frame_parms,
memcpy
((
void
*
)
&
tmp_dft_in
[
sample_offset
-
rxdata_offset
],
(
void
*
)
&
rxdata
[
0
],
(
frame_parms
->
ofdm_symbol_size
-
sample_offset
+
rxdata_offset
)
*
sizeof
(
int32_t
));
rxdata_ptr
=
(
int16_t
*
)
&
tmp_dft_in
[
0
]
;
rxdata_ptr
=
(
int16_t
*
)
tmp_dft_in
;
}
else
if
(((
rxdata_offset
-
sample_offset
)
&
7
)
!=
0
)
{
...
...
@@ -316,7 +319,7 @@ int nr_slot_fep_ul(NR_DL_FRAME_PARMS *frame_parms,
memcpy
((
void
*
)
&
tmp_dft_in
[
0
],
(
void
*
)
&
rxdata
[
rxdata_offset
-
sample_offset
],
(
frame_parms
->
ofdm_symbol_size
)
*
sizeof
(
int32_t
));
rxdata_ptr
=
(
int16_t
*
)
&
tmp_dft_in
[
0
]
;
rxdata_ptr
=
(
int16_t
*
)
tmp_dft_in
;
}
else
{
...
...
openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
View file @
04b28b45
...
...
@@ -41,6 +41,7 @@
#include "openair2/LAYER2/NR_MAC_UE/mac_proto.h"
#include "openair1/PHY/NR_UE_ESTIMATION/nr_estimation.h"
#include <openair1/PHY/impl_defs_nr.h>
#include <common/utils/nr/nr_common.h>
#ifndef NO_RAT_NR
...
...
@@ -438,7 +439,7 @@ bool pucch_procedures_ue_nr(PHY_VARS_NR_UE *ue, uint8_t gNB_id, UE_nr_rxtx_proc_
pucch_resource_indicator
=
ue
->
dlsch
[
proc
->
thread_id
][
gNB_id
][
0
]
->
harq_processes
[
dl_harq_pid
]
->
harq_ack
.
pucch_resource_indicator
;
}
LOG_D
(
PHY
,
"PUCCH: %d.%d bwp_id %d dl_harq_pid = %d, pucch_resource_indicator = %d
\n
"
,
frame_tx
,
nr_slot_tx
,
bwp_id
,
dl_harq_pid
,
pucch_resource_indicator
);
LOG_D
(
PHY
,
"PUCCH: %d.%d bwp_id %
l
d dl_harq_pid = %d, pucch_resource_indicator = %d
\n
"
,
frame_tx
,
nr_slot_tx
,
bwp_id
,
dl_harq_pid
,
pucch_resource_indicator
);
/* Part - I
* Collect feedback that should be transmitted at this nr_slot_tx :
...
...
openair2/COMMON/gtpv1_u_messages_types.h
View file @
04b28b45
...
...
@@ -183,6 +183,8 @@ typedef struct {
typedef
struct
{
in_addr_t
gnb_ip_address_for_NGu_up
;
tcp_udp_port_t
gnb_port_for_NGu_up
;
char
addrStr
[
256
];
char
portStr
[
256
];
}
Gtpv1uNGReq
;
typedef
struct
gtpv1u_gnb_create_tunnel_req_s
{
rnti_t
rnti
;
...
...
openair2/GNB_APP/gnb_config.c
View file @
04b28b45
...
...
@@ -1117,6 +1117,8 @@ int RCconfig_nr_gtpu(void ) {
IPV4_STR_ADDR_TO_INT_NWBO
(
address
,
GTPV1U_GNB_NG_REQ
(
message
).
gnb_ip_address_for_NGu_up
,
"BAD IP ADDRESS FORMAT FOR gNB NG_U !
\n
"
);
LOG_I
(
GTPU
,
"Configuring GTPu address : %s -> %x
\n
"
,
address
,
GTPV1U_GNB_NG_REQ
(
message
).
gnb_ip_address_for_NGu_up
);
GTPV1U_GNB_NG_REQ
(
message
).
gnb_port_for_NGu_up
=
gnb_port_for_NGU
;
strcpy
(
GTPV1U_GNB_NG_REQ
(
message
).
addrStr
,
address
);
sprintf
(
GTPV1U_GNB_NG_REQ
(
message
).
portStr
,
"%d"
,
gnb_port_for_NGU
);
}
itti_send_msg_to_task
(
TASK_VARIABLE
,
0
,
message
);
// data model is wrong: gtpu doesn't have enb_id (or module_id)
}
else
...
...
openair2/LAYER2/NR_MAC_UE/mac_defs.h
View file @
04b28b45
...
...
@@ -504,5 +504,8 @@ typedef struct ssb_list_info {
uint8_t
nb_tx_ssb
;
}
ssb_list_info_t
;
void
config_dci_pdu
(
NR_UE_MAC_INST_t
*
mac
,
fapi_nr_dl_config_dci_dl_pdu_rel15_t
*
rel15
,
fapi_nr_dl_config_request_t
*
dl_config
,
int
rnti_type
,
int
ss_id
);
void
fill_dci_search_candidates
(
NR_SearchSpace_t
*
ss
,
fapi_nr_dl_config_dci_dl_pdu_rel15_t
*
rel15
);
/*@}*/
#endif
/*__LAYER2_MAC_DEFS_H__ */
openair2/LAYER2/NR_MAC_UE/nr_ra_procedures.c
View file @
04b28b45
...
...
@@ -682,8 +682,8 @@ void nr_get_RA_window(NR_UE_MAC_INST_t *mac){
AssertFatal
(
&
setup
->
rach_ConfigGeneric
!=
NULL
,
"In %s: FATAL! rach_ConfigGeneric is NULL...
\n
"
,
__FUNCTION__
);
NR_RACH_ConfigGeneric_t
*
rach_ConfigGeneric
=
&
setup
->
rach_ConfigGeneric
;
long
scs
=
(
mac
->
scc
)
?
&
mac
->
scc
->
downlinkConfigCommon
->
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
subcarrierSpacing
:
&
mac
->
scc_SIB
->
downlinkConfigCommon
.
frequencyInfoDL
.
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
subcarrierSpacing
;
mac
->
scc
->
downlinkConfigCommon
->
frequencyInfoDL
->
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
subcarrierSpacing
:
mac
->
scc_SIB
->
downlinkConfigCommon
.
frequencyInfoDL
.
scs_SpecificCarrierList
.
list
.
array
[
0
]
->
subcarrierSpacing
;
ra_ResponseWindow
=
rach_ConfigGeneric
->
ra_ResponseWindow
;
...
...
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
View file @
04b28b45
...
...
@@ -974,7 +974,8 @@ NR_UE_L2_STATE_t nr_ue_scheduler(nr_downlink_indication_t *dl_info, nr_uplink_in
ulcfg_pdu
->
pusch_config_pdu
.
pusch_data
.
harq_process_id
,
mac
->
UL_ndi
[
ulcfg_pdu
->
pusch_config_pdu
.
pusch_data
.
harq_process_id
],
ulcfg_pdu
->
pusch_config_pdu
.
pusch_data
.
new_data_indicator
,
TBS_bytes
);
TBS_bytes
,
ra
->
ra_state
);
if
(
ra
->
ra_state
==
WAIT_RAR
&&
!
ra
->
cfra
){
memcpy
(
ulsch_input_buffer
,
mac
->
ulsch_pdu
.
payload
,
TBS_bytes
);
LOG_D
(
NR_MAC
,
"[RAPROC] Msg3 to be transmitted:
\n
"
);
...
...
@@ -1690,7 +1691,8 @@ static int get_nr_prach_info_from_ssb_index(uint8_t ssb_idx,
ssb_info_p
=
&
ssb_list
.
tx_ssb
[
ssb_idx
];
LOG_D
(
NR_MAC
,
"checking for prach : ssb_info_p->nb_mapped_ro %d
\n
"
,
ssb_info_p
->
nb_mapped_ro
);
for
(
uint8_t
n_mapped_ro
=
0
;
n_mapped_ro
<
ssb_info_p
->
nb_mapped_ro
;
n_mapped_ro
++
)
{
LOG_D
(
NR_MAC
,
"%d.%d: mapped_ro[%d]->frame.slot %d.%d, prach_assoc_pattern.nb_of_frame %d
\n
"
,
slot
,
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
frame
,
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
slot
,
prach_assoc_pattern
.
nb_of_frame
);
LOG_D
(
NR_MAC
,
"%d: mapped_ro[%d]->slot %d, prach_assoc_pattern.nb_of_frame %d
\n
"
,
slot
,
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
frame
,
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
slot
,
prach_assoc_pattern
.
nb_of_frame
);
if
((
slot
==
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
slot
)
&&
(
ssb_info_p
->
mapped_ro
[
n_mapped_ro
]
->
frame
==
(
frame
%
prach_assoc_pattern
.
nb_of_frame
)))
{
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
View file @
04b28b45
...
...
@@ -768,8 +768,9 @@ void pf_ul(module_id_t module_id,
sched_pusch
->
mcs
=
mcs
;
sched_pusch
->
R
=
nr_get_code_rate_ul
(
mcs
,
ps
->
mcs_table
);
sched_pusch
->
Qm
=
nr_get_Qm_ul
(
mcs
,
ps
->
mcs_table
);
if
(
ps
->
pusch_Config
->
tp_pi2BPSK
&&
((
ps
->
mcs_table
==
3
&&
mcs
<
2
)
||
(
ps
->
mcs_table
==
4
&&
mcs
<
6
)))
{
LOG_W
(
NR_MAC
,
"Fixme: work around a NULL pointer (set in function nr_save_pusch_fields that is actually called)
\n
"
);
if
(
ps
->
pusch_Config
&&
(
ps
->
pusch_Config
->
tp_pi2BPSK
&&
((
ps
->
mcs_table
==
3
&&
mcs
<
2
)
||
(
ps
->
mcs_table
==
4
&&
mcs
<
6
))))
{
sched_pusch
->
R
>>=
1
;
sched_pusch
->
Qm
<<=
1
;
}
...
...
openair2/RRC/NR/rrc_gNB_reconfig.c
View file @
04b28b45
...
...
@@ -54,9 +54,7 @@ void fill_default_initialDownlinkBWP(NR_BWP_Downlink_t *bwp, NR_ServingCellConfi
bwp
->
bwp_Id
=
0
;
bwp
->
bwp_Common
=
calloc
(
1
,
sizeof
(
*
bwp
->
bwp_Common
));
memcpy
((
void
*
)
&
bwp
->
bwp_Common
,
&
servingcellconfigcommon
->
downlinkConfigCommon
->
initialDownlinkBWP
,
sizeof
(
bwp
->
bwp_Common
));
*
bwp
->
bwp_Common
=
*
servingcellconfigcommon
->
downlinkConfigCommon
->
initialDownlinkBWP
;
bwp
->
bwp_Dedicated
=
calloc
(
1
,
sizeof
(
*
bwp
->
bwp_Dedicated
));
bwp
->
bwp_Dedicated
->
pdsch_Config
=
calloc
(
1
,
sizeof
(
*
bwp
->
bwp_Dedicated
->
pdsch_Config
));
...
...
openair2/RRC/NR_UE/L2_interface_ue.c
View file @
04b28b45
...
...
@@ -167,7 +167,7 @@ rrc_data_req_ue(
TASK_RRC_UE
,
TASK_PDCP_UE
,
sdu_sizeP
);
LOG_I
(
RRC
,
"Sending RRC message for SRB %d, sdu_size %d
\n
"
,
rb_idP
,
sdu_sizeP
);
LOG_I
(
RRC
,
"Sending RRC message for SRB %
l
d, sdu_size %d
\n
"
,
rb_idP
,
sdu_sizeP
);
memcpy
(
message_buffer
,
buffer_pP
,
sdu_sizeP
);
message_p
=
itti_alloc_new_message
(
TASK_RRC_UE
,
0
,
RRC_DCCH_DATA_REQ
);
RRC_DCCH_DATA_REQ
(
message_p
).
frame
=
ctxt_pP
->
frame
;
...
...
openair2/RRC/NR_UE/rrc_UE.c
View file @
04b28b45
...
...
@@ -552,7 +552,6 @@ int8_t nr_rrc_ue_decode_NR_BCCH_BCH_Message(
const
uint8_t
gNB_index
,
uint8_t
*
const
bufferP
,
const
uint8_t
buffer_len
){
int
i
;
NR_BCCH_BCH_Message_t
*
bcch_message
=
NULL
;
...
...
openair3/ocp-gtpu/gtp_itf.cpp
View file @
04b28b45
...
...
@@ -459,6 +459,20 @@ int ocp_gtpv1u_update_s1u_tunnel(
return
0
;
}
int
gtpv1u_create_ngu_tunnel
(
const
instance_t
instanceP
,
const
gtpv1u_gnb_create_tunnel_req_t
*
const
create_tunnel_req_pP
,
gtpv1u_gnb_create_tunnel_resp_t
*
const
create_tunnel_resp_pP
)
{
return
!
GTPNOK
;
}
int
gtpv1u_update_ngu_tunnel
(
const
instance_t
instanceP
,
const
gtpv1u_gnb_create_tunnel_req_t
*
const
create_tunnel_req_pP
,
const
rnti_t
prior_rnti
)
{
return
GTPNOK
;
}
int
ocp_gtpv1u_create_x2u_tunnel
(
const
instance_t
instanceP
,
const
gtpv1u_enb_create_x2u_tunnel_req_t
*
const
create_tunnel_req_pP
,
...
...
@@ -496,6 +510,12 @@ int ocp_gtpv1u_delete_s1u_tunnel( const instance_t instance,
return
newGtpuDeleteTunnel
(
instance
,
req_pP
->
rnti
);
}
int
gtpv1u_delete_x2u_tunnel
(
const
instance_t
instanceP
,
const
gtpv1u_enb_delete_tunnel_req_t
*
const
req_pP
,
int
enbflag
)
{
return
0
;
}
static
int
Gtpv1uHandleEchoReq
(
int
h
,
uint8_t
*
msgBuf
,
uint32_t
msgBufLen
,
...
...
@@ -757,6 +777,13 @@ void *ocp_gtpv1uTask(void *args) {
AssertFatal
((
legacyInstanceMapping
=
ocp_gtpv1Init
(
addr
))
!=
0
,
"Instance 0 reserved for legacy
\n
"
);
break
;
case
GTPV1U_GNB_NG_REQ
:
// to be dev: should be removed, to use API
strcpy
(
addr
.
originHost
,
GTPV1U_ENB_S1_REQ
(
message_p
).
addrStr
);
strcpy
(
addr
.
originService
,
GTPV1U_ENB_S1_REQ
(
message_p
).
portStr
);
AssertFatal
((
legacyInstanceMapping
=
ocp_gtpv1Init
(
addr
))
!=
0
,
"Instance 0 reserved for legacy
\n
"
);
break
;
default:
LOG_E
(
GTPU
,
"Received unexpected message %s
\n
"
,
ITTI_MSG_NAME
(
message_p
));
abort
();
...
...
openair3/ocp-gtpu/gtp_itf.h
View file @
04b28b45
...
...
@@ -14,7 +14,7 @@ extern "C" {
#define gtpv1u_delete_s1u_tunnel ocp_gtpv1u_delete_s1u_tunnel
#define gtpv1u_create_x2u_tunnel ocp_gtpv1u_create_x2u_tunnel
#define gtpv1u_eNB_task ocp_gtpv1uTask
#define
gtpv1u_gNB_task
ocp_gtpv1uTask
#define
nr_gtpv1u_gNB_task
ocp_gtpv1uTask
#define TASK_VARIABLE OCP_GTPV1_U
#else
#define TASK_VARIABLE TASK_GTPV1_U
...
...
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