Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
openairinterface5G
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Merge Requests
16
Merge Requests
16
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
oai
openairinterface5G
Commits
c54cb418
Commit
c54cb418
authored
Mar 24, 2017
by
Cedric Roux
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/various-fixes-w12' into develop_integration_w12
parents
b8c43654
5db0548a
Changes
32
Hide whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
176 additions
and
151 deletions
+176
-151
cmake_targets/tools/fix_asn1
cmake_targets/tools/fix_asn1
+1
-9
cmake_targets/tools/fix_asn1.data/S1AP.rel10.5/NativeInteger.c.diff
...ets/tools/fix_asn1.data/S1AP.rel10.5/NativeInteger.c.diff
+0
-8
cmake_targets/tools/fix_asn1.data/S1AP.rel10.5/constr_SET_OF.c.diff
...ets/tools/fix_asn1.data/S1AP.rel10.5/constr_SET_OF.c.diff
+0
-4
cmake_targets/tools/fix_asn1.data/X2AP.rel11.2/NativeInteger.c.diff
...ets/tools/fix_asn1.data/X2AP.rel11.2/NativeInteger.c.diff
+0
-8
cmake_targets/tools/fix_asn1.data/X2AP.rel11.2/constr_SET_OF.c.diff
...ets/tools/fix_asn1.data/X2AP.rel11.2/constr_SET_OF.c.diff
+0
-4
openair1/PHY/INIT/lte_init.c
openair1/PHY/INIT/lte_init.c
+1
-1
openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
+2
-2
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
+28
-7
openair1/PHY/LTE_TRANSPORT/if5_tools.c
openair1/PHY/LTE_TRANSPORT/if5_tools.c
+8
-2
openair1/PHY/LTE_TRANSPORT/proto.h
openair1/PHY/LTE_TRANSPORT/proto.h
+1
-1
openair1/PHY/MODULATION/beamforming.c
openair1/PHY/MODULATION/beamforming.c
+1
-1
openair1/SCHED/phy_mac_stub.c
openair1/SCHED/phy_mac_stub.c
+1
-1
openair1/SCHED/phy_procedures_lte_ue.c
openair1/SCHED/phy_procedures_lte_ue.c
+3
-1
openair1/SIMULATION/LTE_PHY/dlsim.c
openair1/SIMULATION/LTE_PHY/dlsim.c
+15
-11
openair1/SIMULATION/LTE_PHY/ulsim.c
openair1/SIMULATION/LTE_PHY/ulsim.c
+7
-4
openair2/NETWORK_DRIVER/MESH/RB_TOOL/rb_tool.c
openair2/NETWORK_DRIVER/MESH/RB_TOOL/rb_tool.c
+22
-15
openair2/NETWORK_DRIVER/MESH/classifier.c
openair2/NETWORK_DRIVER/MESH/classifier.c
+3
-3
openair2/NETWORK_DRIVER/MESH/common.c
openair2/NETWORK_DRIVER/MESH/common.c
+6
-6
openair2/NETWORK_DRIVER/MESH/ioctl.c
openair2/NETWORK_DRIVER/MESH/ioctl.c
+0
-1
openair2/NETWORK_DRIVER/MESH/mesh.c
openair2/NETWORK_DRIVER/MESH/mesh.c
+2
-2
openair2/NETWORK_DRIVER/MESH/netlink.c
openair2/NETWORK_DRIVER/MESH/netlink.c
+2
-2
openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
+4
-4
targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
+0
-1
targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
+3
-3
targets/ARCH/EXMIMO/DRIVER/eurecom/exmimo_fw.c
targets/ARCH/EXMIMO/DRIVER/eurecom/exmimo_fw.c
+1
-3
targets/COMMON/openairinterface5g_limits.h
targets/COMMON/openairinterface5g_limits.h
+22
-17
targets/RT/USER/UE_transport_IQ.c
targets/RT/USER/UE_transport_IQ.c
+9
-9
targets/RT/USER/eNB_transport_IQ.c
targets/RT/USER/eNB_transport_IQ.c
+3
-3
targets/RT/USER/lte-softmodem.c
targets/RT/USER/lte-softmodem.c
+2
-2
targets/RT/USER/rrh_gw.c
targets/RT/USER/rrh_gw.c
+5
-5
targets/SIMU/USER/oaisim.c
targets/SIMU/USER/oaisim.c
+18
-8
targets/SIMU/USER/oaisim_functions.c
targets/SIMU/USER/oaisim_functions.c
+6
-3
No files found.
cmake_targets/tools/fix_asn1
View file @
c54cb418
...
...
@@ -9,13 +9,6 @@ RRC_Rel10=(
X2AP_Rel11_2
=(
"X2ap-CriticalityDiagnostics-IE-List.h"
ae96308b37fcbcbf39da5012e42968135fc5f27b
"fix_asn1.data/X2AP.rel11.2/X2ap-CriticalityDiagnostics-IE-List.h.diff"
"NativeInteger.c"
1a55f5402fd363318cf5444ffe1f67530dcf66ff
"fix_asn1.data/X2AP.rel11.2/NativeInteger.c.diff"
"constr_SET_OF.c"
808cbbdf19b118c0bdb04e3acf2cbe6e4133be2b
"fix_asn1.data/X2AP.rel11.2/constr_SET_OF.c.diff"
)
S1AP_Rel10_5
=(
"NativeInteger.c"
1a55f5402fd363318cf5444ffe1f67530dcf66ff
"fix_asn1.data/S1AP.rel10.5/NativeInteger.c.diff"
"constr_SET_OF.c"
808cbbdf19b118c0bdb04e3acf2cbe6e4133be2b
"fix_asn1.data/S1AP.rel10.5/constr_SET_OF.c.diff"
)
red_color
=
"
$(
tput setaf 1
)
"
...
...
@@ -130,8 +123,7 @@ function patch_s1ap()
case
"
$version
"
in
R10
)
echo
"patching S1AP files release 10.5"
apply_patches
"
$directory
"
S1AP_Rel10_5
${#
S1AP_Rel10_5
[*]
}
#nothing to do anymore (fixes went to asn1c)
;;
*
)
error unknwon/unhandled S1AP version
\'
"
$version
"
\'
...
...
cmake_targets/tools/fix_asn1.data/S1AP.rel10.5/NativeInteger.c.diff
deleted
100644 → 0
View file @
b8c43654
283c283
< int dynamic = 0;
---
> //int dynamic = 0;
290c290
< dynamic = 1;
---
> //dynamic = 1;
cmake_targets/tools/fix_asn1.data/S1AP.rel10.5/constr_SET_OF.c.diff
deleted
100644 → 0
View file @
b8c43654
1007c1007
< (int)nelems, (int)ct ? ct->effective_bits : -1);
---
> (int)nelems, ct ? ct->effective_bits : -1);
cmake_targets/tools/fix_asn1.data/X2AP.rel11.2/NativeInteger.c.diff
deleted
100644 → 0
View file @
b8c43654
283c283
< int dynamic = 0;
---
> //int dynamic = 0;
290c290
< dynamic = 1;
---
> //dynamic = 1;
cmake_targets/tools/fix_asn1.data/X2AP.rel11.2/constr_SET_OF.c.diff
deleted
100644 → 0
View file @
b8c43654
1007c1007
< (int)nelems, (int)ct ? ct->effective_bits : -1);
---
> (int)nelems, ct ? ct->effective_bits : -1);
openair1/PHY/INIT/lte_init.c
View file @
c54cb418
...
...
@@ -1214,7 +1214,7 @@ int phy_init_lte_ue(PHY_VARS_UE *ue,
}
const
size_t
num
=
7
*
2
*
fp
->
N_RB_DL
*
12
+
4
;
//
const size_t num = 7*2*fp->N_RB_DL*12+4;
for
(
k
=
0
;
k
<
8
;
k
++
)
{
//harq_pid
for
(
l
=
0
;
l
<
8
;
l
++
)
{
//round
pdsch_vars_th0
[
eNB_id
]
->
rxdataF_comp1
[
k
][
l
]
=
(
int32_t
**
)
malloc16_clear
(
8
*
sizeof
(
int32_t
*
)
);
...
...
openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
View file @
c54cb418
...
...
@@ -123,8 +123,8 @@ int rx_pdsch(PHY_VARS_UE *ue,
int32_t
**
rxdataF_comp_ptr
;
int32_t
**
dl_ch_mag_ptr
;
int32_t
codeword_TB0
;
int32_t
codeword_TB1
;
int32_t
codeword_TB0
=
-
1
;
int32_t
codeword_TB1
=
-
1
;
...
...
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
View file @
c54cb418
...
...
@@ -578,13 +578,13 @@ int allocate_REs_in_RB(PHY_VARS_eNB* phy_vars_eNB,
{
uint8_t
*
x0
=
NULL
;
MIMO_mode_t
mimo_mode
;
MIMO_mode_t
mimo_mode
=
-
1
;
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
phy_vars_eNB
->
frame_parms
;
int
first_layer0
;
//= dlsch0_harq->first_layer;
int
Nlayers0
;
// = dlsch0_harq->Nlayers;
int
Nlayers0
=
-
1
;
// = dlsch0_harq->Nlayers;
uint8_t
mod_order0
=
0
;
// = get_Qm(dlsch0_harq->mcs);
uint8_t
mod_order1
=
0
;
//=2;
uint8_t
precoder_index0
,
precoder_index1
;
...
...
@@ -1998,13 +1998,13 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
phy_vars_eNB
->
frame_parms
;
uint8_t
nsymb
;
uint8_t
harq_pid
;
//= dlsch0->current_harq_pid;
LTE_DL_eNB_HARQ_t
*
dlsch0_harq
;
LTE_DL_eNB_HARQ_t
*
dlsch1_harq
;
//= dlsch1->harq_processes[harq_pid];
uint8_t
harq_pid
=
-
1
;
//= dlsch0->current_harq_pid;
LTE_DL_eNB_HARQ_t
*
dlsch0_harq
=
NULL
;
LTE_DL_eNB_HARQ_t
*
dlsch1_harq
=
NULL
;
//= dlsch1->harq_processes[harq_pid];
uint32_t
i
,
i2
,
jj
,
jj2
,
re_allocated
,
symbol_offset
;
uint16_t
l
,
rb
,
re_offset
;
uint32_t
rb_alloc_ind
;
uint32_t
*
rb_alloc
;
//=dlsch0_harq->rb_alloc;
uint32_t
*
rb_alloc
=
NULL
;
//=dlsch0_harq->rb_alloc;
uint8_t
pilots
=
0
;
uint8_t
skip_dc
,
skip_half
;
...
...
@@ -2015,6 +2015,8 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
int16_t
qam16_table_a1
[
4
],
qam64_table_a1
[
8
],
qam16_table_b1
[
4
],
qam64_table_b1
[
8
];
int16_t
*
qam_table_s0
=
NULL
,
*
qam_table_s1
=
NULL
;
#if 0
/* TODO: variable to be removed? */
int (*allocate_REs)(PHY_VARS_eNB*,
int **,
uint32_t*,
...
...
@@ -2036,13 +2038,14 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
uint8_t,
int *,
int *);
#endif
int
P1_SHIFT
[
13
],
P2_SHIFT
[
13
];
int
offset
,
nushiftmod3
;
uint8_t
get_pmi_temp
;
MIMO_mode_t
mimo_mode
;
MIMO_mode_t
mimo_mode
=
-
1
;
uint8_t
mprime
=
0
,
Ns
;
int8_t
lprime
=-
1
;
int
aa
=
0
;
...
...
@@ -2242,7 +2245,10 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
re_offset
=
frame_parms
->
first_carrier_offset
;
symbol_offset
=
(
uint32_t
)
frame_parms
->
ofdm_symbol_size
*
(
l
+
(
subframe_offset
*
nsymb
));
#if 0
/* TODO: remove this code? */
allocate_REs = allocate_REs_in_RB;
#endif
switch
(
mod_order0
)
{
case
2
:
...
...
@@ -2251,15 +2257,21 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
case
4
:
if
(
pilots
)
{
qam_table_s0
=
qam16_table_b0
;
#if 0
/* TODO: remove this code? */
allocate_REs = (dlsch0->harq_processes[harq_pid]->mimo_mode == SISO) ?
allocate_REs_in_RB_pilots_16QAM_siso :
allocate_REs_in_RB;
#endif
}
else
{
qam_table_s0
=
qam16_table_a0
;
#if 0
/* TODO: remove this code? */
allocate_REs = (dlsch0->harq_processes[harq_pid]->mimo_mode == SISO) ?
allocate_REs_in_RB_no_pilots_16QAM_siso :
allocate_REs_in_RB;
#endif
}
break
;
...
...
@@ -2267,15 +2279,21 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
case
6
:
if
(
pilots
)
{
qam_table_s0
=
qam64_table_b0
;
#if 0
/* TODO: remove this code? */
allocate_REs = (dlsch0->harq_processes[harq_pid]->mimo_mode == SISO) ?
allocate_REs_in_RB_pilots_64QAM_siso :
allocate_REs_in_RB;
#endif
}
else
{
qam_table_s0
=
qam64_table_a0
;
#if 0
/* TODO: remove this code? */
allocate_REs = (dlsch0->harq_processes[harq_pid]->mimo_mode == SISO) ?
allocate_REs_in_RB_no_pilots_64QAM_siso :
allocate_REs_in_RB;
#endif
}
break
;
...
...
@@ -2284,7 +2302,10 @@ int dlsch_modulation(PHY_VARS_eNB* phy_vars_eNB,
switch
(
mod_order1
)
{
case
2
:
qam_table_s1
=
NULL
;
#if 0
/* TODO: remove this code? */
allocate_REs = allocate_REs_in_RB;
#endif
break
;
case
4
:
if
(
pilots
)
{
...
...
openair1/PHY/LTE_TRANSPORT/if5_tools.c
View file @
c54cb418
...
...
@@ -56,7 +56,9 @@ void send_IF5(PHY_VARS_eNB *eNB, openair0_timestamp proc_timestamp, int subframe
LTE_DL_FRAME_PARMS *fp=&eNB->frame_parms;
int32_t *txp[fp->nb_antennas_tx], *rxp[fp->nb_antennas_rx];
int32_t *tx_buffer=NULL;
#ifdef DEBUG_DL_MOBIPASS
int8_t dummy_buffer[fp->samples_per_tti*2];
#endif
void *alaw_buffer = eNB->ifbuffer.tx[subframe&1];
uint16_t *data_block = NULL;
uint16_t *j = NULL;
...
...
@@ -262,8 +264,10 @@ void recv_IF5(PHY_VARS_eNB *eNB, openair0_timestamp *proc_timestamp, int subfram
int32_t *txp[fp->nb_antennas_tx], *rxp[fp->nb_antennas_rx];
uint16_t packet_id=0, i=0, element_id=0;
int8_t dummy_buffer_rx[fp->samples_per_tti*2];
#ifdef DEBUG_UL_MOBIPASS
//int8_t dummy_buffer_rx[fp->samples_per_tti*2];
uint8_t rxe;
#endif
int32_t spp_eth = (int32_t) eNB->ifdevice.openair0_cfg->samples_per_packet;
int32_t spsf = (int32_t) eNB->ifdevice.openair0_cfg->samples_per_frame/10;
...
...
@@ -390,14 +394,16 @@ void recv_IF5(PHY_VARS_eNB *eNB, openair0_timestamp *proc_timestamp, int subfram
uint16_t db_fulllength = PAYLOAD_MOBIPASS_NUM_SAMPLES;
openair0_timestamp timestamp_mobipass[fp->samples_per_tti/db_fulllength];
#ifdef DEBUG_UL_MOBIPASS
int lower_offset = 0;
int upper_offset = 70000;
#endif
int subframe_skip = 0;
int reset_flag = 0;
int32_t *rx_buffer=NULL;
__m128i *data_block=NULL, *data_block_head=NULL;
__m128i *rxp128;
__m128i r0
, r1
;
__m128i r0;
//rx_buffer = memalign(16, MAC_HEADER_SIZE_BYTES + sizeof_IF5_mobipass_header_t + db_fulllength*sizeof(int16_t));
rx_buffer = malloc(MAC_HEADER_SIZE_BYTES + sizeof_IF5_mobipass_header_t + db_fulllength*sizeof(int16_t));
...
...
openair1/PHY/LTE_TRANSPORT/proto.h
View file @
c54cb418
...
...
@@ -1901,7 +1901,7 @@ uint16_t quantize_subband_pmi(PHY_MEASUREMENTS *meas,uint8_t eNB_id,int nb_subba
int32_t
pmi_convert_rank1_from_rank2
(
uint16_t
pmi_alloc
,
int
tpmi
,
int
nb_rb
);
//
uint16_t quantize_subband_pmi2(PHY_MEASUREMENTS *meas,uint8_t eNB_id,uint8_t a_id,int nb_subbands);
uint16_t
quantize_subband_pmi2
(
PHY_MEASUREMENTS
*
meas
,
uint8_t
eNB_id
,
uint8_t
a_id
,
int
nb_subbands
);
uint64_t
pmi2hex_2Ar1
(
uint32_t
pmi
);
...
...
openair1/PHY/MODULATION/beamforming.c
View file @
c54cb418
...
...
@@ -47,7 +47,7 @@ int beam_precoding(int32_t **txdataF,
int
aa
)
{
uint8_t
p
;
uint16_t
re
=
0
;
//
uint16_t re=0;
int
slot_offset_F
;
slot_offset_F
=
slot
*
(
frame_parms
->
ofdm_symbol_size
)
*
((
frame_parms
->
Ncp
==
1
)
?
6
:
7
);
...
...
openair1/SCHED/phy_mac_stub.c
View file @
c54cb418
...
...
@@ -531,7 +531,7 @@ void fill_dci(DCI_PDU *DCI_pdu,PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
}
}
else
{
switch
(
eNB
->
frame_parms
.
N_RB_DL
==
6
)
{
switch
(
eNB
->
frame_parms
.
N_RB_DL
)
{
case
6
:
((
DCI0_1_5MHz_TDD_1_6_t
*
)
&
DCI_pdu
->
dci_alloc
[
1
].
dci_pdu
[
0
])
->
type
=
0
;
((
DCI0_1_5MHz_TDD_1_6_t
*
)
&
DCI_pdu
->
dci_alloc
[
1
].
dci_pdu
[
0
])
->
hopping
=
0
;
...
...
openair1/SCHED/phy_procedures_lte_ue.c
View file @
c54cb418
...
...
@@ -1695,7 +1695,7 @@ void ue_pucch_procedures(PHY_VARS_UE *ue,UE_rxtx_proc_t *proc,uint8_t eNB_id,uin
uint8_t
pucch_ack_payload
[
2
];
uint8_t
n2_pucch
;
uint8_t
n2_pucch
=
-
1
;
uint16_t
pucch_resource
;
ANFBmode_t
bundling_flag
;
PUCCH_FMT_t
format
;
...
...
@@ -2997,7 +2997,9 @@ void ue_pmch_procedures(PHY_VARS_UE *ue, UE_rxtx_proc_t *proc,int eNB_id,int abs
int
subframe_rx
=
proc
->
subframe_rx
;
int
frame_rx
=
proc
->
frame_rx
;
int
pmch_mcs
=-
1
;
#ifdef Rel10
int
CC_id
=
ue
->
CC_id
;
#endif
uint8_t
sync_area
=
255
;
uint8_t
mcch_active
;
int
l
;
...
...
openair1/SIMULATION/LTE_PHY/dlsim.c
View file @
c54cb418
...
...
@@ -270,7 +270,7 @@ void fill_DCI(PHY_VARS_eNB *eNB,
int
*
num_dci
)
{
int
k
;
int
dci_length
,
dci_length_bytes
;
int
dci_length
=
-
1
,
dci_length_bytes
=
-
1
;
// printf("Generating DCIs for %d users, TM %d, mcs1 %d\n",n_users,transmission_mode,mcs1);
for
(
k
=
0
;
k
<
n_users
;
k
++
)
{
...
...
@@ -1227,12 +1227,13 @@ DCI_PDU *get_dci_sdu(module_id_t module_idP,int CC_id,frame_t frameP,sub_frame_t
DCI_pdu
.
Num_ue_spec_dci
=
num_ue_spec_dci
;
DCI_pdu
.
Num_common_dci
=
num_common_dci
;
DCI_pdu
.
num_pdcch_symbols
=
num_pdcch_symbols
;
return
(
&
DCI_pdu
);
}
else
{
DCI_pdu
.
Num_ue_spec_dci
=
0
;
DCI_pdu
.
Num_common_dci
=
0
;
DCI_pdu
.
num_pdcch_symbols
=
num_pdcch_symbols
;
}
return
&
DCI_pdu
;
}
void
eNB_dlsch_ulsch_scheduler
(
module_id_t
module_idP
,
uint8_t
cooperation_flag
,
frame_t
frameP
,
sub_frame_t
subframeP
)
{
...
...
@@ -1268,7 +1269,7 @@ int main(int argc, char **argv)
int
s
,
Kr
,
Kr_bytes
;
double
SNR
,
snr0
=-
2
.
0
,
snr1
,
rate
;
double
SNR
,
snr0
=-
2
.
0
,
snr1
,
rate
=
0
;
double
snr_step
=
1
,
input_snr_step
=
1
,
snr_int
=
30
;
LTE_DL_FRAME_PARMS
*
frame_parms
;
...
...
@@ -1298,10 +1299,10 @@ int main(int argc, char **argv)
DCI_ALLOC_t
*
dci_alloc
=
&
DCI_pdu
.
dci_alloc
[
0
];
unsigned
int
ret
;
unsigned
int
coded_bits_per_codeword
=
0
,
nsymb
,
tbs
=
0
;
unsigned
int
coded_bits_per_codeword
=
0
,
nsymb
;
//
,tbs=0;
unsigned
int
tx_lev
=
0
,
tx_lev_dB
=
0
,
trials
,
errs
[
4
]
=
{
0
,
0
,
0
,
0
},
errs2
[
4
]
=
{
0
,
0
,
0
,
0
},
round_trials
[
4
]
=
{
0
,
0
,
0
,
0
},
dci_errors
=
0
;
//,num_layers;
int
re_allocated
;
//
int re_allocated;
char
fname
[
32
],
vname
[
32
];
FILE
*
bler_fd
;
char
bler_fname
[
256
];
...
...
@@ -1328,16 +1329,16 @@ int main(int argc, char **argv)
int
n_frames
;
int
n_ch_rlz
=
1
;
channel_desc_t
*
eNB2UE
[
4
];
uint8_t
num_pdcch_symbols_2
=
0
;
//
uint8_t num_pdcch_symbols_2=0;
uint8_t
rx_sample_offset
=
0
;
//char stats_buffer[4096];
//int len;
uint8_t
num_rounds
=
4
;
//,fix_rounds=0;
int
u
;
//
int u;
int
n
=
0
;
int
abstx
=
0
;
int
iii
;
//
int iii;
int
ch_realization
;
int
pmi_feedback
=
0
;
...
...
@@ -1346,7 +1347,7 @@ int main(int argc, char **argv)
// void *data;
// int ii;
// int bler;
double
blerr
[
4
],
uncoded_ber
,
avg_ber
;
double
blerr
[
4
],
uncoded_ber
;
//
,avg_ber;
short
*
uncoded_ber_bit
=
NULL
;
uint8_t
N_RB_DL
=
25
,
osf
=
1
;
frame_t
frame_type
=
FDD
;
...
...
@@ -1355,7 +1356,7 @@ int main(int argc, char **argv)
char
title
[
255
];
int
numCCE
=
0
;
int
dci_length_bytes
=
0
,
dci_length
=
0
;
//
int dci_length_bytes=0,dci_length=0;
//double channel_bandwidth = 5.0, sampling_rate=7.68;
int
common_flag
=
0
,
TPC
=
0
;
...
...
@@ -1391,7 +1392,7 @@ int main(int argc, char **argv)
char
csv_fname
[
32
];
int
dci_flag
=
1
;
int
two_thread_flag
=
0
;
int
DLSCH_RB_ALLOC
;
int
DLSCH_RB_ALLOC
=
0
;
#if defined(__arm__)
FILE
*
proc_fd
=
NULL
;
...
...
@@ -1828,6 +1829,8 @@ int main(int argc, char **argv)
}
else
{
eNB
->
te
=
dlsch_encoding_2threads
;
extern
void
init_td_thread
(
PHY_VARS_eNB
*
,
pthread_attr_t
*
);
extern
void
init_te_thread
(
PHY_VARS_eNB
*
,
pthread_attr_t
*
);
init_td_thread
(
eNB
,
NULL
);
init_te_thread
(
eNB
,
NULL
);
}
...
...
@@ -2186,6 +2189,7 @@ int main(int argc, char **argv)
while
((
!
feof
(
input_trch_fd
))
&&
(
i
<
input_buffer_length0
<<
3
))
{
ret
=
fscanf
(
input_trch_fd
,
"%s"
,
input_trch_val
);
if
(
ret
!=
1
)
printf
(
"ERROR: error reading file
\n
"
);
if
(
input_trch_val
[
0
]
==
'1'
)
input_buffer0
[
k
][
i
>>
3
]
+=
(
1
<<
(
7
-
(
i
&
7
)));
...
...
openair1/SIMULATION/LTE_PHY/ulsim.c
View file @
c54cb418
...
...
@@ -164,8 +164,8 @@ void fill_ulsch_dci(PHY_VARS_eNB *eNB,void *UL_dci,int first_rb,int nb_rb,int mc
}
extern
void
eNB_fep_full
(
PHY_VARS_eNB
*
eNB
);
extern
void
eNB_fep_full_2thread
(
PHY_VARS_eNB
*
eNB
);
extern
void
eNB_fep_full
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
extern
void
eNB_fep_full_2thread
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
int
main
(
int
argc
,
char
**
argv
)
{
...
...
@@ -197,7 +197,7 @@ int main(int argc, char **argv)
int
chMod
=
0
;
int
UE_id
=
0
;
unsigned
char
nb_rb
=
25
,
first_rb
=
0
,
mcs
=
0
,
round
=
0
,
bundling_flag
=
1
;
unsigned
char
l
;
//
unsigned char l;
unsigned
char
awgn_flag
=
0
;
SCM_t
channel_model
=
Rice1
;
...
...
@@ -246,7 +246,7 @@ int main(int argc, char **argv)
int
hold_channel
=
0
;
channel_desc_t
*
UE2eNB
;
uint8_t
control_only_flag
=
0
;
//
uint8_t control_only_flag = 0;
int
delay
=
0
;
double
maxDoppler
=
0
.
0
;
uint8_t
srs_flag
=
0
;
...
...
@@ -701,6 +701,8 @@ int main(int argc, char **argv)
UE
->
ulsch
[
0
]
=
new_ue_ulsch
(
N_RB_DL
,
0
);
if
(
parallel_flag
==
1
)
{
extern
void
init_fep_thread
(
PHY_VARS_eNB
*
,
pthread_attr_t
*
);
extern
void
init_td_thread
(
PHY_VARS_eNB
*
,
pthread_attr_t
*
);
init_fep_thread
(
eNB
,
NULL
);
init_td_thread
(
eNB
,
NULL
);
}
...
...
@@ -867,6 +869,7 @@ int main(int argc, char **argv)
while
(
!
feof
(
input_fdUL
))
{
ret
=
fscanf
(
input_fdUL
,
"%s %s"
,
input_val_str
,
input_val_str2
);
//&input_val1,&input_val2);
if
(
ret
!=
2
)
printf
(
"ERROR: error reading file
\n
"
);
if
((
i
%
4
)
==
0
)
{
((
short
*
)
txdata
[
0
])[
i
/
2
]
=
(
short
)((
1
<<
15
)
*
strtod
(
input_val_str
,
NULL
));
...
...
openair2/NETWORK_DRIVER/MESH/RB_TOOL/rb_tool.c
View file @
c54cb418
...
...
@@ -36,7 +36,8 @@
#include <sys/socket.h>
#include <sys/un.h>
#include <sys/time.h>
#include <sys/ioctl.h>
#include <ctype.h>
#include <netinet/in.h>
#include <arpa/inet.h>
...
...
@@ -109,7 +110,7 @@ void IAL_NAS_ioctl_init(int inst)
{
struct
nas_msg_statistic_reply
*
msgrep
;
int
err
,
rc
;
int
err
;
sprintf
(
gifr
.
name
,
"oai%d"
,
inst
);
...
...
@@ -132,7 +133,6 @@ void IAL_NAS_ioctl_init(int inst)
if
(
err
<
0
)
{
printf
(
"IOCTL error, err=%d
\n
"
,
err
);
rc
=
-
1
;
}
printf
(
"tx_packets = %u, rx_packets = %u
\n
"
,
msgrep
->
tx_packets
,
msgrep
->
rx_packets
);
...
...
@@ -151,19 +151,13 @@ void IAL_NAS_ioctl_init(int inst)
int
main
(
int
argc
,
char
**
argv
)
//---------------------------------------------------------------------------
{
int
done
=
0
,
rc
=
0
,
meas_polling_counter
=
0
;
fd_set
readfds
;
struct
timeval
tv
;
int
i
=
0
;
int
err
=
0
;
char
*
buffer
;
int
c
=
0
;
int
action
=
0
,
rbset
=
0
,
cxset
=
0
,
instset
=
0
,
saddr_ipv4set
=
0
,
saddr_ipv6set
=
0
,
daddr_ipv4set
=
0
,
daddr_ipv6set
=
0
,
dscpset
=
0
,
mpls_outlabelset
=
0
,
mpls_inlabelset
=
0
;
char
rb
[
100
],
cx
[
100
],
dscp
[
100
],
inst
[
100
],
mpls_outgoinglabel
[
100
],
mpls_incominglabel
[
100
];
int
index
=
0
;
struct
nas_msg_rb_establishment_request
*
msgreq
=
NULL
;
struct
nas_msg_class_add_request
*
msgreq_class
=
NULL
;
in_addr_t
saddr_ipv4
,
daddr_ipv4
;
in_addr_t
saddr_ipv4
=
0
,
daddr_ipv4
=
0
;
struct
in6_addr
saddr_ipv6
,
daddr_ipv6
;
unsigned
int
mpls_outlabel
=
0
,
mpls_inlabel
=
0
;
...
...
@@ -213,15 +207,21 @@ int main(int argc,char **argv)
mpls_inlabelset
=
1
;
break
;
case
's'
:
inet_aton
(
optarg
,
&
saddr_ipv4
);
case
's'
:
{
struct
in_addr
a
;
inet_aton
(
optarg
,
&
a
);
saddr_ipv4
=
a
.
s_addr
;
saddr_ipv4set
=
1
;
break
;
}
case
't'
:
inet_aton
(
optarg
,
&
daddr_ipv4
);
case
't'
:
{
struct
in_addr
a
;
inet_aton
(
optarg
,
&
a
);
daddr_ipv4
=
a
.
s_addr
;
daddr_ipv4set
=
1
;
break
;
}
case
'x'
:
printf
(
"IPv6: %s
\n
"
,
optarg
);
...
...
@@ -303,7 +303,7 @@ int main(int argc,char **argv)
if
(
action
==
ADD_RB
)
{
gifr
.
type
=
NAS_MSG_RB_ESTABLISHMENT_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
if
(
saddr_ipv4set
==
1
)
{
...
...
@@ -329,6 +329,7 @@ int main(int argc,char **argv)
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
msgreq_class
->
rab_id
=
atoi
(
rb
);
msgreq_class
->
lcr
=
atoi
(
cx
);
...
...
@@ -340,6 +341,7 @@ int main(int argc,char **argv)
msgreq_class
->
saddr
.
ipv4
=
daddr_ipv4
;
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
}
if
(
saddr_ipv6set
==
1
)
{
...
...
@@ -370,6 +372,7 @@ int main(int argc,char **argv)
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
msgreq_class
->
rab_id
=
atoi
(
rb
);
msgreq_class
->
lcr
=
atoi
(
cx
);
...
...
@@ -380,6 +383,7 @@ int main(int argc,char **argv)
memcpy
(
&
msgreq_class
->
saddr
.
ipv6
,
&
daddr_ipv6
,
16
);
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
}
...
...
@@ -411,6 +415,7 @@ int main(int argc,char **argv)
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
msgreq_class
->
rab_id
=
atoi
(
rb
);
msgreq_class
->
lcr
=
atoi
(
cx
);
...
...
@@ -430,12 +435,14 @@ int main(int argc,char **argv)
gifr
.
type
=
NAS_MSG_CLASS_ADD_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
}
}
else
if
(
action
==
DEL_RB
)
{
gifr
.
type
=
NAS_MSG_RB_RELEASE_REQUEST
;
err
=
ioctl
(
fd
,
NAS_IOCTL_RRM
,
&
gifr
);
if
(
err
==
-
1
)
perror
(
"ioctl"
);
}
...
...
openair2/NETWORK_DRIVER/MESH/classifier.c
View file @
c54cb418
...
...
@@ -605,12 +605,12 @@ void nas_CLASS_send(struct sk_buff *skb,int inst)
//---------------------------------------------------------------------------
struct
classifier_entity
*
p
,
*
sp
;
uint8_t
*
protocolh
,
version
;
uint8_t
protocol
,
dscp
,
exp
,
label
;
uint8_t
protocol
,
dscp
/*, exp,label*/
;
uint16_t
classref
;
struct
cx_entity
*
cx
;
unsigned
int
i
;
//
unsigned int i;
unsigned
int
router_adv
=
0
;
//
unsigned int router_adv = 0;
struct
net_device
*
dev
=
nasdev
[
inst
];
struct
nas_priv
*
gpriv
=
netdev_priv
(
dev
);
...
...
openair2/NETWORK_DRIVER/MESH/common.c
View file @
c54cb418
...
...
@@ -59,14 +59,14 @@ void nas_COMMON_receive(uint16_t dlen,
struct
nas_priv
*
gpriv
=
netdev_priv
(
nasdev
[
inst
]);
uint32_t
odaddr
,
osaddr
;
int
i
;
//
int i;
unsigned
char
protocol
;
unsigned
char
*
addr
,
*
daddr
,
*
saddr
,
*
ifaddr
,
sn
;
unsigned
char
/**addr,*/
*
daddr
,
*
saddr
,
*
ifaddr
/*,sn*/
;
struct
udphdr
*
uh
;
struct
tcphdr
*
th
;
//
struct udphdr *uh;
//
struct tcphdr *th;
uint16_t
*
cksum
,
check
;
struct
iphdr
*
network_header
;
...
...
@@ -340,7 +340,7 @@ void nas_COMMON_QOS_send(struct sk_buff *skb, struct cx_entity *cx, struct class
int
i
;
#endif
unsigned
int
bytes_wrote
;
unsigned
char
j
;
//
unsigned char j;
// Start debug information
#ifdef NAS_DEBUG_SEND
printk
(
"NAS_COMMON_QOS_SEND - inst %d begin
\n
"
,
inst
);
...
...
@@ -595,7 +595,7 @@ struct rb_entity *nas_COMMON_search_rb(struct cx_entity *cx, nasRadioBearerId_t
struct
classifier_entity
*
nas_COMMON_search_class_for_rb
(
nasRadioBearerId_t
rab_id
,
struct
nas_priv
*
priv
)
{
struct
rb_entity
*
rb
;
//
struct rb_entity *rb;
int
dscp
;
struct
classifier_entity
*
rclass
;
...
...
openair2/NETWORK_DRIVER/MESH/ioctl.c
View file @
c54cb418
...
...
@@ -739,7 +739,6 @@ void nas_set_msg_imei_reply(struct nas_msg_l2id_reply *msgrep,
//---------------------------------------------------------------------------
struct
cx_entity
*
cx
;
int
lcr
=
0
;
// Temp lcr->mt =0
int
i
;
cx
=
nas_COMMON_search_cx
(
lcr
,
priv
);
...
...
openair2/NETWORK_DRIVER/MESH/mesh.c
View file @
c54cb418
...
...
@@ -387,7 +387,7 @@ void nas_mesh_DC_send_sig_data_request(struct sk_buff *skb,
{
//---------------------------------------------------------------------------
struct
nas_ue_dc_element
*
p
;