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
alex037yang
OpenXG-RAN
Commits
f767dea2
Commit
f767dea2
authored
Jun 28, 2018
by
WEI-TAI CHEN
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
close GTP-U
parent
b4fcb047
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
32 additions
and
32 deletions
+32
-32
openair2/GNB_APP/gnb_app.c
openair2/GNB_APP/gnb_app.c
+16
-16
openair2/GNB_APP/gnb_config.c
openair2/GNB_APP/gnb_config.c
+6
-6
openair2/GNB_APP/gnb_paramdef.h
openair2/GNB_APP/gnb_paramdef.h
+3
-3
openair2/LAYER2/NR_MAC_gNB/config.c
openair2/LAYER2/NR_MAC_gNB/config.c
+2
-2
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
+5
-5
No files found.
openair2/GNB_APP/gnb_app.c
View file @
f767dea2
...
@@ -97,7 +97,7 @@ static uint32_t gNB_app_register(uint32_t gnb_id_start, uint32_t gnb_id_end)//,
...
@@ -97,7 +97,7 @@ static uint32_t gNB_app_register(uint32_t gnb_id_start, uint32_t gnb_id_end)//,
RCconfig_NR_S1
(
msg_p
,
gnb_id
);
RCconfig_NR_S1
(
msg_p
,
gnb_id
);
if
(
gnb_id
==
0
)
RCconfig_gtpu
();
if
(
gnb_id
==
0
)
RCconfig_
nr_
gtpu
();
s1ap_register_gNB
=
&
S1AP_REGISTER_ENB_REQ
(
msg_p
);
//Message Temporarily reuse
s1ap_register_gNB
=
&
S1AP_REGISTER_ENB_REQ
(
msg_p
);
//Message Temporarily reuse
LOG_I
(
GNB_APP
,
"default drx %d
\n
"
,
s1ap_register_gNB
->
default_drx
);
LOG_I
(
GNB_APP
,
"default drx %d
\n
"
,
s1ap_register_gNB
->
default_drx
);
...
@@ -123,8 +123,8 @@ void *gNB_app_task(void *args_p)
...
@@ -123,8 +123,8 @@ void *gNB_app_task(void *args_p)
uint32_t
gnb_id_start
=
0
;
uint32_t
gnb_id_start
=
0
;
uint32_t
gnb_id_end
=
gnb_id_start
+
gnb_nb
;
uint32_t
gnb_id_end
=
gnb_id_start
+
gnb_nb
;
# if defined(ENABLE_USE_MME)
# if defined(ENABLE_USE_MME)
uint32_t
register_gnb_pending
;
//
uint32_t register_gnb_pending;
uint32_t
registered_gnb
;
//
uint32_t registered_gnb;
long
gnb_register_retry_timer_id
;
long
gnb_register_retry_timer_id
;
# endif
# endif
uint32_t
gnb_id
;
uint32_t
gnb_id
;
...
@@ -165,8 +165,8 @@ void *gNB_app_task(void *args_p)
...
@@ -165,8 +165,8 @@ void *gNB_app_task(void *args_p)
# if defined(ENABLE_USE_MME)
# if defined(ENABLE_USE_MME)
/* Try to register each gNB */
/* Try to register each gNB */
registered_gnb
=
0
;
//
registered_gnb = 0;
register_gnb_pending
=
gNB_app_register
(
gnb_id_start
,
gnb_id_end
);
//, gnb_properties_p);
//
register_gnb_pending = gNB_app_register (gnb_id_start, gnb_id_end);//, gnb_properties_p);
# else
# else
/* Start L2L1 task */
/* Start L2L1 task */
msg_p
=
itti_alloc_new_message
(
TASK_GNB_APP
,
INITIALIZE_MESSAGE
);
msg_p
=
itti_alloc_new_message
(
TASK_GNB_APP
,
INITIALIZE_MESSAGE
);
...
@@ -191,7 +191,7 @@ void *gNB_app_task(void *args_p)
...
@@ -191,7 +191,7 @@ void *gNB_app_task(void *args_p)
break
;
break
;
# if defined(ENABLE_USE_MME)
# if defined(ENABLE_USE_MME)
/*
case S1AP_REGISTER_ENB_CNF:
case S1AP_REGISTER_ENB_CNF:
LOG_I(GNB_APP, "[gNB %d] Received %s: associated MME %d\n", instance, msg_name,
LOG_I(GNB_APP, "[gNB %d] Received %s: associated MME %d\n", instance, msg_name,
S1AP_REGISTER_ENB_CNF(msg_p).nb_mme);
S1AP_REGISTER_ENB_CNF(msg_p).nb_mme);
...
@@ -199,15 +199,15 @@ void *gNB_app_task(void *args_p)
...
@@ -199,15 +199,15 @@ void *gNB_app_task(void *args_p)
DevAssert(register_gnb_pending > 0);
DevAssert(register_gnb_pending > 0);
register_gnb_pending--;
register_gnb_pending--;
/
* Check if at least gNB is registered with one MME */
/
/ Check if at least gNB is registered with one MME
if (S1AP_REGISTER_ENB_CNF(msg_p).nb_mme > 0) {
if (S1AP_REGISTER_ENB_CNF(msg_p).nb_mme > 0) {
registered_gnb++;
registered_gnb++;
}
}
/
* Check if all register gNB requests have been processed */
/
/ Check if all register gNB requests have been processed
if (register_gnb_pending == 0) {
if (register_gnb_pending == 0) {
if (registered_gnb == gnb_nb) {
if (registered_gnb == gnb_nb) {
/
* If all gNB are registered, start L2L1 task */
/
/ If all gNB are registered, start L2L1 task
MessageDef *msg_init_p;
MessageDef *msg_init_p;
msg_init_p = itti_alloc_new_message (TASK_GNB_APP, INITIALIZE_MESSAGE);
msg_init_p = itti_alloc_new_message (TASK_GNB_APP, INITIALIZE_MESSAGE);
...
@@ -219,13 +219,13 @@ void *gNB_app_task(void *args_p)
...
@@ -219,13 +219,13 @@ void *gNB_app_task(void *args_p)
LOG_W(GNB_APP, " %d gNB %s not associated with a MME, retrying registration in %d seconds ...\n",
LOG_W(GNB_APP, " %d gNB %s not associated with a MME, retrying registration in %d seconds ...\n",
not_associated, not_associated > 1 ? "are" : "is", GNB_REGISTER_RETRY_DELAY);
not_associated, not_associated > 1 ? "are" : "is", GNB_REGISTER_RETRY_DELAY);
/
* Restart the gNB registration process in GNB_REGISTER_RETRY_DELAY seconds */
/
/ Restart the gNB registration process in GNB_REGISTER_RETRY_DELAY seconds
if (timer_setup (GNB_REGISTER_RETRY_DELAY, 0, TASK_GNB_APP, INSTANCE_DEFAULT, TIMER_ONE_SHOT,
if (timer_setup (GNB_REGISTER_RETRY_DELAY, 0, TASK_GNB_APP, INSTANCE_DEFAULT, TIMER_ONE_SHOT,
NULL, &gnb_register_retry_timer_id) < 0) {
NULL, &gnb_register_retry_timer_id) < 0) {
LOG_E(GNB_APP, " Can not start gNB register retry timer, use \"sleep\" instead!\n");
LOG_E(GNB_APP, " Can not start gNB register retry timer, use \"sleep\" instead!\n");
sleep(GNB_REGISTER_RETRY_DELAY);
sleep(GNB_REGISTER_RETRY_DELAY);
/
* Restart the registration process */
/
/ Restart the registration process
registered_gnb = 0;
registered_gnb = 0;
register_gnb_pending = gNB_app_register (gnb_id_start, gnb_id_end);//, gnb_properties_p);
register_gnb_pending = gNB_app_register (gnb_id_start, gnb_id_end);//, gnb_properties_p);
}
}
...
@@ -233,7 +233,7 @@ void *gNB_app_task(void *args_p)
...
@@ -233,7 +233,7 @@ void *gNB_app_task(void *args_p)
}
}
break;
break;
*/
case
S1AP_DEREGISTERED_ENB_IND
:
case
S1AP_DEREGISTERED_ENB_IND
:
LOG_W
(
GNB_APP
,
"[gNB %d] Received %s: associated MME %d
\n
"
,
instance
,
msg_name
,
LOG_W
(
GNB_APP
,
"[gNB %d] Received %s: associated MME %d
\n
"
,
instance
,
msg_name
,
S1AP_DEREGISTERED_ENB_IND
(
msg_p
).
nb_mme
);
S1AP_DEREGISTERED_ENB_IND
(
msg_p
).
nb_mme
);
...
@@ -244,11 +244,11 @@ void *gNB_app_task(void *args_p)
...
@@ -244,11 +244,11 @@ void *gNB_app_task(void *args_p)
case
TIMER_HAS_EXPIRED
:
case
TIMER_HAS_EXPIRED
:
LOG_I
(
GNB_APP
,
" Received %s: timer_id %ld
\n
"
,
msg_name
,
TIMER_HAS_EXPIRED
(
msg_p
).
timer_id
);
LOG_I
(
GNB_APP
,
" Received %s: timer_id %ld
\n
"
,
msg_name
,
TIMER_HAS_EXPIRED
(
msg_p
).
timer_id
);
if
(
TIMER_HAS_EXPIRED
(
msg_p
).
timer_id
==
gnb_register_retry_timer_id
)
{
//
if (TIMER_HAS_EXPIRED (msg_p).timer_id == gnb_register_retry_timer_id) {
/* Restart the registration process */
/* Restart the registration process */
registered_gnb
=
0
;
//
registered_gnb = 0;
register_gnb_pending
=
gNB_app_register
(
gnb_id_start
,
gnb_id_end
);
//, gnb_properties_p);
//
register_gnb_pending = gNB_app_register(gnb_id_start, gnb_id_end);//, gnb_properties_p);
}
//
}
break
;
break
;
# endif
# endif
...
...
openair2/GNB_APP/gnb_config.c
View file @
f767dea2
...
@@ -395,7 +395,7 @@ void RCconfig_nr_macrlc() {
...
@@ -395,7 +395,7 @@ void RCconfig_nr_macrlc() {
}
else
{
// MacRLC_ParamList.numelt > 0
}
else
{
// MacRLC_ParamList.numelt > 0
AssertFatal
(
0
,
"No "
CONFIG_STRING_MACRLC_LIST
" configuration found"
);
AssertFatal
(
0
,
"No "
CONFIG_STRING_MACRLC_LIST
" configuration found"
);
}
}
}
}
int
RCconfig_NRRRC
(
MessageDef
*
msg_p
,
uint32_t
i
,
gNB_RRC_INST
*
rrc
)
{
int
RCconfig_NRRRC
(
MessageDef
*
msg_p
,
uint32_t
i
,
gNB_RRC_INST
*
rrc
)
{
...
@@ -2580,9 +2580,9 @@ int RCconfig_nr_gtpu(void ) {
...
@@ -2580,9 +2580,9 @@ int RCconfig_nr_gtpu(void ) {
char
*
e
nb_interface_name_for_S1U
=
NULL
;
char
*
g
nb_interface_name_for_S1U
=
NULL
;
char
*
e
nb_ipv4_address_for_S1U
=
NULL
;
char
*
g
nb_ipv4_address_for_S1U
=
NULL
;
uint32_t
e
nb_port_for_S1U
=
0
;
uint32_t
g
nb_port_for_S1U
=
0
;
char
*
address
=
NULL
;
char
*
address
=
NULL
;
char
*
cidr
=
NULL
;
char
*
cidr
=
NULL
;
char
gtpupath
[
MAX_OPTNAME_SIZE
*
2
+
8
];
char
gtpupath
[
MAX_OPTNAME_SIZE
*
2
+
8
];
...
@@ -2605,7 +2605,7 @@ int RCconfig_nr_gtpu(void ) {
...
@@ -2605,7 +2605,7 @@ int RCconfig_nr_gtpu(void ) {
cidr
=
e
nb_ipv4_address_for_S1U
;
cidr
=
g
nb_ipv4_address_for_S1U
;
address
=
strtok
(
cidr
,
"/"
);
address
=
strtok
(
cidr
,
"/"
);
if
(
address
)
{
if
(
address
)
{
...
@@ -2615,7 +2615,7 @@ int RCconfig_nr_gtpu(void ) {
...
@@ -2615,7 +2615,7 @@ int RCconfig_nr_gtpu(void ) {
}
}
RC
.
gtpv1u_data_g
->
enb_port_for_S1u_S12_S4_up
=
e
nb_port_for_S1U
;
RC
.
gtpv1u_data_g
->
enb_port_for_S1u_S12_S4_up
=
g
nb_port_for_S1U
;
return
0
;
return
0
;
}
}
...
...
openair2/GNB_APP/gnb_paramdef.h
View file @
f767dea2
...
@@ -971,9 +971,9 @@ typedef enum {
...
@@ -971,9 +971,9 @@ typedef enum {
/* optname helpstr paramflags XXXptr defXXXval type numelt */
/* optname helpstr paramflags XXXptr defXXXval type numelt */
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#define GTPUPARAMS_DESC { \
#define GTPUPARAMS_DESC { \
{GNB_CONFIG_STRING_GNB_INTERFACE_NAME_FOR_S1U, NULL, 0, strptr:&
e
nb_interface_name_for_S1U, defstrval:"lo", TYPE_STRING, 0}, \
{GNB_CONFIG_STRING_GNB_INTERFACE_NAME_FOR_S1U, NULL, 0, strptr:&
g
nb_interface_name_for_S1U, defstrval:"lo", TYPE_STRING, 0}, \
{GNB_CONFIG_STRING_GNB_IPV4_ADDR_FOR_S1U, NULL, 0, strptr:&
e
nb_ipv4_address_for_S1U, defstrval:"127.0.0.1", TYPE_STRING, 0}, \
{GNB_CONFIG_STRING_GNB_IPV4_ADDR_FOR_S1U, NULL, 0, strptr:&
g
nb_ipv4_address_for_S1U, defstrval:"127.0.0.1", TYPE_STRING, 0}, \
{GNB_CONFIG_STRING_GNB_PORT_FOR_S1U, NULL, 0, uptr:&
e
nb_port_for_S1U, defintval:2152, TYPE_UINT, 0} \
{GNB_CONFIG_STRING_GNB_PORT_FOR_S1U, NULL, 0, uptr:&
g
nb_port_for_S1U, defintval:2152, TYPE_UINT, 0} \
}
}
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
...
...
openair2/LAYER2/NR_MAC_gNB/config.c
View file @
f767dea2
...
@@ -165,7 +165,7 @@ void config_common(int Mod_idP,
...
@@ -165,7 +165,7 @@ void config_common(int Mod_idP,
cfg
->
rf_config
.
dl_carrierBandwidth
.
value
=
dl_BandwidthP
;
cfg
->
rf_config
.
dl_carrierBandwidth
.
value
=
dl_BandwidthP
;
cfg
->
rf_config
.
dl_carrierBandwidth
.
tl
.
tag
=
NFAPI_RF_CONFIG_DL_CHANNEL_BANDWIDTH_TAG
;
//temporary
cfg
->
rf_config
.
dl_carrierBandwidth
.
tl
.
tag
=
NFAPI_RF_CONFIG_DL_CHANNEL_BANDWIDTH_TAG
;
//temporary
cfg
->
num_tlv
++
;
cfg
->
num_tlv
++
;
LOG_
E
(
PHY
,
"%s() dl_BandwidthP:%d
\n
"
,
__FUNCTION__
,
dl_BandwidthP
);
LOG_
I
(
PHY
,
"%s() dl_BandwidthP:%d
\n
"
,
__FUNCTION__
,
dl_BandwidthP
);
cfg
->
rf_config
.
ul_carrierBandwidth
.
value
=
dl_BandwidthP
;
cfg
->
rf_config
.
ul_carrierBandwidth
.
value
=
dl_BandwidthP
;
cfg
->
rf_config
.
ul_carrierBandwidth
.
tl
.
tag
=
NFAPI_RF_CONFIG_UL_CHANNEL_BANDWIDTH_TAG
;
//temporary
cfg
->
rf_config
.
ul_carrierBandwidth
.
tl
.
tag
=
NFAPI_RF_CONFIG_UL_CHANNEL_BANDWIDTH_TAG
;
//temporary
...
@@ -215,7 +215,7 @@ int rrc_mac_config_req_gNB(module_id_t Mod_idP,
...
@@ -215,7 +215,7 @@ int rrc_mac_config_req_gNB(module_id_t Mod_idP,
LOG_E
(
MAC
,
"%s() %s:%d RC.nrmac[Mod_idP]->if_inst->PHY_config_req:%p
\n
"
,
__FUNCTION__
,
__FILE__
,
__LINE__
,
RC
.
mac
[
Mod_idP
]
->
if_inst
->
PHY_config_req
);
LOG_E
(
MAC
,
"%s() %s:%d RC.nrmac[Mod_idP]->if_inst->PHY_config_req:%p
\n
"
,
__FUNCTION__
,
__FILE__
,
__LINE__
,
RC
.
nr
mac
[
Mod_idP
]
->
if_inst
->
PHY_config_req
);
// if in nFAPI mode
// if in nFAPI mode
if
(
(
nfapi_mode
==
1
||
nfapi_mode
==
2
)
&&
(
RC
.
nrmac
[
Mod_idP
]
->
if_inst
->
PHY_config_req
==
NULL
)
){
if
(
(
nfapi_mode
==
1
||
nfapi_mode
==
2
)
&&
(
RC
.
nrmac
[
Mod_idP
]
->
if_inst
->
PHY_config_req
==
NULL
)
){
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
View file @
f767dea2
...
@@ -220,11 +220,11 @@ gNBs =
...
@@ -220,11 +220,11 @@ gNBs =
NETWORK_INTERFACES
:
NETWORK_INTERFACES
:
{
{
E
NB_INTERFACE_NAME_FOR_S1_MME
=
"eth0"
;
G
NB_INTERFACE_NAME_FOR_S1_MME
=
"eth0"
;
E
NB_IPV4_ADDRESS_FOR_S1_MME
=
"192.168.12.111/24"
;
G
NB_IPV4_ADDRESS_FOR_S1_MME
=
"192.168.12.111/24"
;
E
NB_INTERFACE_NAME_FOR_S1U
=
"eth0"
;
G
NB_INTERFACE_NAME_FOR_S1U
=
"eth0"
;
E
NB_IPV4_ADDRESS_FOR_S1U
=
"192.168.12.111/24"
;
G
NB_IPV4_ADDRESS_FOR_S1U
=
"192.168.12.111/24"
;
E
NB_PORT_FOR_S1U
=
2152
;
# Spec 2152
G
NB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
};
}
}
);
);
...
...
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