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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
9ec462e8
Commit
9ec462e8
authored
Aug 01, 2016
by
Raymond Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
debugging for IF4p5
parent
f92a33b3
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
205 additions
and
43 deletions
+205
-43
openair1/PHY/LTE_TRANSPORT/if4_tools.c
openair1/PHY/LTE_TRANSPORT/if4_tools.c
+1
-0
openair1/PHY/defs.h
openair1/PHY/defs.h
+4
-4
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.usrpb210.conf
...TS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.usrpb210.conf
+190
-0
targets/RT/USER/lte-enb.c
targets/RT/USER/lte-enb.c
+3
-35
targets/RT/USER/lte-softmodem.c
targets/RT/USER/lte-softmodem.c
+7
-4
No files found.
openair1/PHY/LTE_TRANSPORT/if4_tools.c
View file @
9ec462e8
...
...
@@ -261,6 +261,7 @@ void gen_IF4p5_dl_header(IF4p5_header_t *dl_packet, int frame, int subframe) {
void
gen_IF4p5_ul_header
(
IF4p5_header_t
*
ul_packet
,
int
frame
,
int
subframe
)
{
ul_packet
->
type
=
IF4p5_PACKET_TYPE
;
ul_packet
->
sub_type
=
IF4p5_PULFFT
;
...
...
openair1/PHY/defs.h
View file @
9ec462e8
...
...
@@ -160,10 +160,10 @@ enum transmission_access_mode {
typedef
enum
{
eNodeB_3GPP
=
0
,
// classical eNodeB function
eNodeB_3GPP_BBU
,
// eNodeB with NGFI IF5
NGFI_R
RU_IF5
,
// NGFI_RRU with IF5
NGFI_R
RU_IF4p5
,
// NGFI_RRU (NGFI remote radio-unit, currently split at common - ue_specific interface, IF4p5)
NGFI_R
CC_IF4p5
,
// NGFI_RCC (NGFI radio cloud center, currently split at common - ue_specific interface, IF4p5)
NGFI_R
AU_IF4p5
NGFI_R
CC_IF4p5
,
// NGFI_RCC (NGFI radio cloud center)
NGFI_R
AU_IF4p5
,
NGFI_R
RU_IF5
,
// NGFI_RRU (NGFI remote radio-unit,IF5)
NGFI_R
RU_IF4p5
// NGFI_RRU (NGFI remote radio-unit,IF4p5)
}
eNB_func_t
;
typedef
enum
{
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.usrpb210.conf
0 → 100644
View file @
9ec462e8
Active_eNBs
= (
"eNB_Eurecom_LTEBox"
);
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity
=
"none"
;
eNBs
=
(
{
//////////
Identification
parameters
:
eNB_ID
=
0
xe00
;
cell_type
=
"CELL_MACRO_ENB"
;
eNB_name
=
"eNB_Eurecom_LTEBox"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
"1"
;
mobile_country_code
=
"208"
;
mobile_network_code
=
"93"
;
//////////
Physical
parameters
:
component_carriers
= (
{
node_function
=
"NGFI_RRU_IF4p5"
;
node_timing
=
"synch_to_ext_device"
;
node_synch_ref
=
0
;
frame_type
=
"FDD"
;
tdd_config
=
3
;
tdd_config_s
=
0
;
prefix_type
=
"NORMAL"
;
eutra_band
=
7
;
downlink_frequency
=
2660000000
L
;
uplink_frequency_offset
= -
120000000
;
Nid_cell
=
0
;
N_RB_DL
=
25
;
Nid_cell_mbsfn
=
0
;
nb_antennas_tx
=
1
;
nb_antennas_rx
=
1
;
tx_gain
=
90
;
rx_gain
=
125
;
prach_root
=
0
;
prach_config_index
=
0
;
prach_high_speed
=
"DISABLE"
;
prach_zero_correlation
=
1
;
prach_freq_offset
=
2
;
pucch_delta_shift
=
1
;
pucch_nRB_CQI
=
1
;
pucch_nCS_AN
=
0
;
pucch_n1_AN
=
32
;
pdsch_referenceSignalPower
= -
29
;
pdsch_p_b
=
0
;
pusch_n_SB
=
1
;
pusch_enable64QAM
=
"DISABLE"
;
pusch_hoppingMode
=
"interSubFrame"
;
pusch_hoppingOffset
=
0
;
pusch_groupHoppingEnabled
=
"ENABLE"
;
pusch_groupAssignment
=
0
;
pusch_sequenceHoppingEnabled
=
"DISABLE"
;
pusch_nDMRS1
=
1
;
phich_duration
=
"NORMAL"
;
phich_resource
=
"ONESIXTH"
;
srs_enable
=
"DISABLE"
;
/*
srs_BandwidthConfig
=;
srs_SubframeConfig
=;
srs_ackNackST
=;
srs_MaxUpPts
=;*/
pusch_p0_Nominal
= -
90
;
pusch_alpha
=
"AL1"
;
pucch_p0_Nominal
= -
96
;
msg3_delta_Preamble
=
6
;
pucch_deltaF_Format1
=
"deltaF2"
;
pucch_deltaF_Format1b
=
"deltaF3"
;
pucch_deltaF_Format2
=
"deltaF0"
;
pucch_deltaF_Format2a
=
"deltaF0"
;
pucch_deltaF_Format2b
=
"deltaF0"
;
rach_numberOfRA_Preambles
=
64
;
rach_preamblesGroupAConfig
=
"DISABLE"
;
/*
rach_sizeOfRA_PreamblesGroupA
= ;
rach_messageSizeGroupA
= ;
rach_messagePowerOffsetGroupB
= ;
*/
rach_powerRampingStep
=
4
;
rach_preambleInitialReceivedTargetPower
= -
108
;
rach_preambleTransMax
=
10
;
rach_raResponseWindowSize
=
10
;
rach_macContentionResolutionTimer
=
48
;
rach_maxHARQ_Msg3Tx
=
4
;
pcch_default_PagingCycle
=
128
;
pcch_nB
=
"oneT"
;
bcch_modificationPeriodCoeff
=
2
;
ue_TimersAndConstants_t300
=
1000
;
ue_TimersAndConstants_t301
=
1000
;
ue_TimersAndConstants_t310
=
1000
;
ue_TimersAndConstants_t311
=
10000
;
ue_TimersAndConstants_n310
=
20
;
ue_TimersAndConstants_n311
=
1
;
}
);
srb1_parameters
:
{
# timer_poll_retransmit = (ms) [5, 10, 15, 20,... 250, 300, 350, ... 500]
timer_poll_retransmit
=
80
;
# timer_reordering = (ms) [0,5, ... 100, 110, 120, ... ,200]
timer_reordering
=
35
;
# timer_reordering = (ms) [0,5, ... 250, 300, 350, ... ,500]
timer_status_prohibit
=
0
;
# poll_pdu = [4, 8, 16, 32 , 64, 128, 256, infinity(>10000)]
poll_pdu
=
4
;
# poll_byte = (kB) [25,50,75,100,125,250,375,500,750,1000,1250,1500,2000,3000,infinity(>10000)]
poll_byte
=
99999
;
# max_retx_threshold = [1, 2, 3, 4 , 6, 8, 16, 32]
max_retx_threshold
=
4
;
}
# ------- SCTP definitions
SCTP
:
{
# Number of streams to use in input/output
SCTP_INSTREAMS
=
2
;
SCTP_OUTSTREAMS
=
2
;
};
//////////
MME
parameters
:
mme_ip_address
= ( {
ipv4
=
"192.168.12.11"
;
ipv6
=
"192:168:30::17"
;
active
=
"yes"
;
preference
=
"ipv4"
;
}
);
NETWORK_INTERFACES
:
{
ENB_INTERFACE_NAME_FOR_S1_MME
=
"eth3"
;
ENB_IPV4_ADDRESS_FOR_S1_MME
=
"192.168.12.215/24"
;
ENB_INTERFACE_NAME_FOR_S1U
=
"eth3"
;
ENB_IPV4_ADDRESS_FOR_S1U
=
"192.168.12.215/24"
;
ENB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
rrh_gw_config
= (
{
local_if_name
=
"eth0"
;
remote_address
=
"34:e6:d7:3c:ae:fc"
;
local_address
=
"74:d4:35:cc:8d:15"
;
local_port
=
50000
;
#for raw option local port must be the same to remote
remote_port
=
50000
;
rrh_gw_active
=
"yes"
;
tr_preference
=
"raw_if4p5"
;
rf_preference
=
"usrp_b200"
;
iq_txshift
=
4
;
tx_sample_advance
=
80
;
tx_scheduling_advance
=
9
;
}
);
log_config
:
{
global_log_level
=
"info"
;
global_log_verbosity
=
"medium"
;
hw_log_level
=
"info"
;
hw_log_verbosity
=
"medium"
;
phy_log_level
=
"info"
;
phy_log_verbosity
=
"medium"
;
mac_log_level
=
"info"
;
mac_log_verbosity
=
"high"
;
rlc_log_level
=
"info"
;
rlc_log_verbosity
=
"medium"
;
pdcp_log_level
=
"info"
;
pdcp_log_verbosity
=
"medium"
;
rrc_log_level
=
"info"
;
rrc_log_verbosity
=
"medium"
;
};
}
);
targets/RT/USER/lte-enb.c
View file @
9ec462e8
...
...
@@ -1248,7 +1248,8 @@ static void* eNB_thread_FH( void* param ) {
printf
(
"got sync (eNB_thread_FH)
\n
"
);
#if defined(ENABLE_ITTI)
wait_system_ready
(
"Waiting for eNB application to be ready %s
\r
"
,
&
start_eNB
);
if
(
eNB
->
node_function
<
NGFI_RRU_IF5
)
wait_system_ready
(
"Waiting for eNB application to be ready %s
\r
"
,
&
start_eNB
);
#endif
...
...
@@ -1938,45 +1939,12 @@ void init_eNB(eNB_func_t node_function[], eNB_timing_t node_timing[],int nb_inst
sleep
(
1
);
LOG_D
(
HW
,
"[lte-softmodem.c] eNB threads created
\n
"
);
/*
printf("Creating main eNB_thread \n");
error_code = pthread_create( &main_eNB_thread, &attr_dlsch_threads, eNB_thread, NULL );
if (error_code!= 0) {
LOG_D(HW,"[lte-softmodem.c] Could not allocate eNB_thread, error %d\n",error_code);
} else {
LOG_D( HW, "[lte-softmodem.c] Allocate eNB_thread successful\n" );
pthread_setname_np( main_eNB_thread, "main eNB" );
}
*/
}
void
stop_eNB
(
int
nb_inst
)
{
/*
#ifdef DEBUG_THREADS
printf("Joining eNB_thread ...");
#endif
int *eNB_thread_status_p;
int result = pthread_join( main_eNB_thread, (void**)&eNB_thread_status_p );
#ifdef DEBUG_THREADS
if (result != 0) {
printf( "\nError joining main_eNB_thread.\n" );
} else {
if (eNB_thread_status_p) {
printf( "status %d\n", *eNB_thread_status_p );
} else {
printf( "The thread was killed. No status available.\n");
}
}
#else
UNUSED(result);
#endif // DEBUG_THREADS
*/
for
(
int
inst
=
0
;
inst
<
nb_inst
;
inst
++
)
{
printf
(
"Killing eNB %d processing threads
\n
"
,
inst
);
kill_eNB_proc
(
inst
);
...
...
targets/RT/USER/lte-softmodem.c
View file @
9ec462e8
...
...
@@ -1656,10 +1656,13 @@ int main( int argc, char **argv )
#if defined(ENABLE_ITTI)
if
(
create_tasks
(
UE_flag
?
0
:
1
,
UE_flag
?
1
:
0
)
<
0
)
{
printf
(
"cannot create ITTI tasks
\n
"
);
exit
(
-
1
);
// need a softer mode
}
if
((
UE_flag
==
1
)
||
(
node_function
[
0
]
<
NGFI_RAU_IF4p5
))
// don't create if node doesn't connect to RRC/S1/GTP
if
(
create_tasks
(
UE_flag
?
0
:
1
,
UE_flag
?
1
:
0
)
<
0
)
{
printf
(
"cannot create ITTI tasks
\n
"
);
exit
(
-
1
);
// need a softer mode
}
printf
(
"ITTI tasks created
\n
"
);
#endif
...
...
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