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
zzha zzha
OpenXG-RAN
Commits
31cf3ac0
Commit
31cf3ac0
authored
Apr 24, 2019
by
Raymond Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
removal of warnings
parent
c245e426
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
131 additions
and
155 deletions
+131
-155
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
+2
-2
openair1/PHY/LTE_TRANSPORT/if4_tools.c
openair1/PHY/LTE_TRANSPORT/if4_tools.c
+2
-2
openair1/PHY/MODULATION/beamforming.c
openair1/PHY/MODULATION/beamforming.c
+25
-32
openair1/SCHED/ru_procedures.c
openair1/SCHED/ru_procedures.c
+1
-0
targets/RT/USER/lte-enb.c
targets/RT/USER/lte-enb.c
+0
-2
targets/RT/USER/lte-ru.c
targets/RT/USER/lte-ru.c
+67
-71
targets/RT/USER/ru_control.c
targets/RT/USER/ru_control.c
+34
-46
No files found.
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
View file @
31cf3ac0
...
@@ -34,6 +34,7 @@
...
@@ -34,6 +34,7 @@
#include "LAYER2/MAC/mac.h"
#include "LAYER2/MAC/mac.h"
#include "RRC/LTE/rrc_extern.h"
#include "RRC/LTE/rrc_extern.h"
#include "PHY_INTERFACE/phy_interface.h"
#include "PHY_INTERFACE/phy_interface.h"
#include "PHY/LTE_REFSIG/lte_refsig.h"
// Note: this is for prototype of generate_drs_pusch (OTA synchronization of RRUs)
// Note: this is for prototype of generate_drs_pusch (OTA synchronization of RRUs)
#include "PHY/LTE_UE_TRANSPORT/transport_proto_ue.h"
#include "PHY/LTE_UE_TRANSPORT/transport_proto_ue.h"
...
@@ -659,8 +660,7 @@ int ru_sync_time(RU_t *ru,
...
@@ -659,8 +660,7 @@ int ru_sync_time(RU_t *ru,
(
void
*
)
&
ru
->
common
.
rxdata
[
ar
][
0
],
(
void
*
)
&
ru
->
common
.
rxdata
[
ar
][
0
],
frame_parms
->
ofdm_symbol_size
);
frame_parms
->
ofdm_symbol_size
);
int32_t
tmp0
;
int32_t
maxlev0
=
0
;
int32_t
magtmp0
,
maxlev0
=
0
;
int
maxpos0
=
0
;
int
maxpos0
=
0
;
int64_t
avg0
=
0
;
int64_t
avg0
=
0
;
int64_t
result
;
int64_t
result
;
...
...
openair1/PHY/LTE_TRANSPORT/if4_tools.c
View file @
31cf3ac0
...
@@ -247,7 +247,7 @@ void send_IF4p5(RU_t *ru, int frame, int subframe, uint16_t packet_type) {
...
@@ -247,7 +247,7 @@ void send_IF4p5(RU_t *ru, int frame, int subframe, uint16_t packet_type) {
(
void
*
)
rxF
,
(
void
*
)
rxF
,
PRACH_BLOCK_SIZE_BYTES
);
PRACH_BLOCK_SIZE_BYTES
);
}
}
if
(
frame
==
0
)
LOG_D
(
PHY
,
"signal energy prach %d
\n
"
,
dB_fixed
(
signal_energy
(
rxF
,
839
)));
if
(
frame
==
0
)
LOG_D
(
PHY
,
"signal energy prach %d
\n
"
,
dB_fixed
(
signal_energy
(
(
int
*
)
rxF
,
839
)));
}
}
if
(
ru
->
idx
<=
1
)
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_WRITE_IF0
+
ru
->
idx
,
1
);
if
(
ru
->
idx
<=
1
)
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_WRITE_IF0
+
ru
->
idx
,
1
);
if
((
ru
->
ifdevice
.
trx_write_func
(
&
ru
->
ifdevice
,
if
((
ru
->
ifdevice
.
trx_write_func
(
&
ru
->
ifdevice
,
...
@@ -385,7 +385,7 @@ void recv_IF4p5(RU_t *ru, int *frame, int *subframe, uint16_t *packet_type, uint
...
@@ -385,7 +385,7 @@ void recv_IF4p5(RU_t *ru, int *frame, int *subframe, uint16_t *packet_type, uint
int16_t
*
rxF
;
int16_t
*
rxF
;
for
(
int
antenna_id
=
0
;
antenna_id
<
ru
->
nb_rx
;
antenna_id
++
)
{
for
(
int
antenna_id
=
0
;
antenna_id
<
ru
->
nb_rx
;
antenna_id
++
)
{
#if (RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (
LTE_
RRC_VERSION >= MAKE_VERSION(14, 0, 0))
if
(
*
packet_type
>
IF4p5_PRACH
)
if
(
*
packet_type
>
IF4p5_PRACH
)
rxF
=
&
prach_rxsigF_br
[
*
packet_type
-
IF4p5_PRACH
-
1
][
antenna_id
][
0
];
rxF
=
&
prach_rxsigF_br
[
*
packet_type
-
IF4p5_PRACH
-
1
][
antenna_id
][
0
];
else
else
...
...
openair1/PHY/MODULATION/beamforming.c
View file @
31cf3ac0
...
@@ -93,7 +93,7 @@ int beam_precoding_one_eNB(int32_t **txdataF,
...
@@ -93,7 +93,7 @@ int beam_precoding_one_eNB(int32_t **txdataF,
LTE_DL_FRAME_PARMS
*
frame_parms
LTE_DL_FRAME_PARMS
*
frame_parms
)
)
{
{
int
p
,
re
,
symbol
,
aa
;
// loop index
int
p
,
symbol
,
aa
;
// loop index
int
re_offset
;
int
re_offset
;
int
ofdm_symbol_size
=
frame_parms
->
ofdm_symbol_size
;
int
ofdm_symbol_size
=
frame_parms
->
ofdm_symbol_size
;
int
symbols_per_tti
=
frame_parms
->
symbols_per_tti
;
int
symbols_per_tti
=
frame_parms
->
symbols_per_tti
;
...
@@ -133,12 +133,5 @@ int beam_precoding_one_eNB(int32_t **txdataF,
...
@@ -133,12 +133,5 @@ int beam_precoding_one_eNB(int32_t **txdataF,
}
}
}
}
}
}
return
0
;
return
0
;
}
}
openair1/SCHED/ru_procedures.c
View file @
31cf3ac0
...
@@ -50,6 +50,7 @@
...
@@ -50,6 +50,7 @@
#include "PHY/LTE_TRANSPORT/if5_tools.h"
#include "PHY/LTE_TRANSPORT/if5_tools.h"
#include "PHY/LTE_TRANSPORT/transport_common_proto.h"
#include "PHY/LTE_TRANSPORT/transport_common_proto.h"
#include "PHY/LTE_TRANSPORT/transport_proto.h"
#include "PHY/LTE_TRANSPORT/transport_proto.h"
#include "PHY/LTE_UE_TRANSPORT/transport_proto_ue.h"
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
#include "LAYER2/MAC/mac.h"
#include "LAYER2/MAC/mac.h"
...
...
targets/RT/USER/lte-enb.c
View file @
31cf3ac0
...
@@ -476,7 +476,6 @@ void eNB_top(PHY_VARS_eNB *eNB, int frame_rx, int subframe_rx, char *string,RU_t
...
@@ -476,7 +476,6 @@ void eNB_top(PHY_VARS_eNB *eNB, int frame_rx, int subframe_rx, char *string,RU_t
}
}
int
wakeup_txfh
(
L1_rxtx_proc_t
*
proc
,
int
frame_tx
,
int
subframe_tx
,
uint64_t
timestamp_tx
,
PHY_VARS_eNB
*
eNB
)
{
int
wakeup_txfh
(
L1_rxtx_proc_t
*
proc
,
int
frame_tx
,
int
subframe_tx
,
uint64_t
timestamp_tx
,
PHY_VARS_eNB
*
eNB
)
{
RU_t
*
ru
;
RU_proc_t
*
ru_proc
;
RU_proc_t
*
ru_proc
;
LTE_DL_FRAME_PARMS
*
fp
;
LTE_DL_FRAME_PARMS
*
fp
;
...
@@ -587,7 +586,6 @@ int wakeup_rxtx(PHY_VARS_eNB *eNB,RU_t *ru) {
...
@@ -587,7 +586,6 @@ int wakeup_rxtx(PHY_VARS_eNB *eNB,RU_t *ru) {
LOG_D
(
PHY
,
"ENTERED wakeup_rxtx, %d.%d
\n
"
,
ru_proc
->
frame_rx
,
ru_proc
->
subframe_rx
);
LOG_D
(
PHY
,
"ENTERED wakeup_rxtx, %d.%d
\n
"
,
ru_proc
->
frame_rx
,
ru_proc
->
subframe_rx
);
int
i
;
struct
timespec
wait
;
struct
timespec
wait
;
int
sleep_cnt
=
0
;
int
sleep_cnt
=
0
;
...
...
targets/RT/USER/lte-ru.c
View file @
31cf3ac0
...
@@ -18,10 +18,10 @@
...
@@ -18,10 +18,10 @@
* For more information about the OpenAirInterface (OAI) Software Alliance:
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
* contact@openairinterface.org
*/
*/
/*! \file lte-
enb
.c
/*! \file lte-
ru
.c
* \brief Top-level threads for
eNodeB
* \brief Top-level threads for
RU entity
* \author R. Knopp, F. Kaltenberger, Navid Nikaein
* \author R. Knopp, F. Kaltenberger, Navid Nikaein
* \date 201
8
* \date 201
9
* \version 0.1
* \version 0.1
* \company Eurecom
* \company Eurecom
* \email: knopp@eurecom.fr,florian.kaltenberger@eurecom.fr, navid.nikaein@eurecom.fr
* \email: knopp@eurecom.fr,florian.kaltenberger@eurecom.fr, navid.nikaein@eurecom.fr
...
@@ -67,6 +67,7 @@
...
@@ -67,6 +67,7 @@
#include "PHY/LTE_TRANSPORT/transport_proto.h"
#include "PHY/LTE_TRANSPORT/transport_proto.h"
#include "SCHED/sched_eNB.h"
#include "SCHED/sched_eNB.h"
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
#include "PHY/LTE_REFSIG/lte_refsig.h"
#include "PHY/INIT/phy_init.h"
#include "PHY/INIT/phy_init.h"
#include "LAYER2/MAC/mac.h"
#include "LAYER2/MAC/mac.h"
...
@@ -1011,14 +1012,12 @@ void do_ru_synch(RU_t *ru) {
...
@@ -1011,14 +1012,12 @@ void do_ru_synch(RU_t *ru) {
int32_t
dummy_rx
[
ru
->
nb_rx
][
fp
->
samples_per_tti
]
__attribute__
((
aligned
(
32
)));
int32_t
dummy_rx
[
ru
->
nb_rx
][
fp
->
samples_per_tti
]
__attribute__
((
aligned
(
32
)));
int
rxs
;
int
rxs
;
int
ic
;
int
ic
;
RRU_CONFIG_msg_t
rru_config_msg
;
// initialize the synchronization buffer to the common_vars.rxdata
// initialize the synchronization buffer to the common_vars.rxdata
for
(
int
i
=
0
;
i
<
ru
->
nb_rx
;
i
++
)
for
(
int
i
=
0
;
i
<
ru
->
nb_rx
;
i
++
)
rxp
[
i
]
=
&
ru
->
common
.
rxdata
[
i
][
0
];
rxp
[
i
]
=
&
ru
->
common
.
rxdata
[
i
][
0
];
double
temp_freq1
=
ru
->
rfdevice
.
openair0_cfg
->
rx_freq
[
0
];
double
temp_freq1
=
ru
->
rfdevice
.
openair0_cfg
->
rx_freq
[
0
];
double
temp_freq2
=
ru
->
rfdevice
.
openair0_cfg
->
tx_freq
[
0
];
for
(
i
=
0
;
i
<
4
;
i
++
)
{
for
(
i
=
0
;
i
<
4
;
i
++
)
{
ru
->
rfdevice
.
openair0_cfg
->
rx_freq
[
i
]
=
ru
->
rfdevice
.
openair0_cfg
->
tx_freq
[
i
];
ru
->
rfdevice
.
openair0_cfg
->
rx_freq
[
i
]
=
ru
->
rfdevice
.
openair0_cfg
->
tx_freq
[
i
];
...
@@ -1086,7 +1085,6 @@ void wakeup_L1s(RU_t *ru) {
...
@@ -1086,7 +1085,6 @@ void wakeup_L1s(RU_t *ru) {
PHY_VARS_eNB
*
eNB
=
eNB_list
[
0
];
PHY_VARS_eNB
*
eNB
=
eNB_list
[
0
];
L1_proc_t
*
proc
=
&
eNB
->
proc
;
L1_proc_t
*
proc
=
&
eNB
->
proc
;
RU_proc_t
*
ruproc
=
&
ru
->
proc
;
struct
timespec
t
;
struct
timespec
t
;
LOG_D
(
PHY
,
"wakeup_L1s (num %d) for RU %d ru->eNB_top:%p
\n
"
,
ru
->
num_eNB
,
ru
->
idx
,
ru
->
eNB_top
);
LOG_D
(
PHY
,
"wakeup_L1s (num %d) for RU %d ru->eNB_top:%p
\n
"
,
ru
->
num_eNB
,
ru
->
idx
,
ru
->
eNB_top
);
...
@@ -1530,7 +1528,6 @@ void *ru_thread_tx( void *param ) {
...
@@ -1530,7 +1528,6 @@ void *ru_thread_tx( void *param ) {
}
}
void
*
ru_thread
(
void
*
param
)
{
void
*
ru_thread
(
void
*
param
)
{
static
int
ru_thread_status
;
RU_t
*
ru
=
(
RU_t
*
)
param
;
RU_t
*
ru
=
(
RU_t
*
)
param
;
RU_proc_t
*
proc
=
&
ru
->
proc
;
RU_proc_t
*
proc
=
&
ru
->
proc
;
LTE_DL_FRAME_PARMS
*
fp
=
&
ru
->
frame_parms
;
LTE_DL_FRAME_PARMS
*
fp
=
&
ru
->
frame_parms
;
...
@@ -1734,10 +1731,9 @@ void *ru_thread( void *param ) {
...
@@ -1734,10 +1731,9 @@ void *ru_thread( void *param ) {
}
}
#if (RRC_VERSION >= MAKE_VERSION(14, 0, 0))
#if (
LTE_
RRC_VERSION >= MAKE_VERSION(14, 0, 0))
else
if
((
ru
->
do_prach
>
0
)
&&
(
is_prach_subframe
(
fp
,
proc
->
frame_rx
,
proc
->
subframe_rx
)
>
1
))
{
else
if
((
ru
->
do_prach
>
0
)
&&
(
is_prach_subframe
(
fp
,
proc
->
frame_rx
,
proc
->
subframe_rx
)
>
1
))
wakeup_prach_ru_br
(
ru
);
wakeup_prach_ru_br
(
ru
);
#endif
#endif
// adjust for timing offset between RU
// adjust for timing offset between RU
...
...
targets/RT/USER/ru_control.c
View file @
31cf3ac0
/*******************************************************************************
/*
OpenAirInterface
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
Copyright(c) 1999 - 2014 Eurecom
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
OpenAirInterface is free software: you can redistribute it and/or modify
* The OpenAirInterface Software Alliance licenses this file to You under
it under the terms of the GNU General Public License as published by
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
the Free Software Foundation, either version 3 of the License, or
* except in compliance with the License.
(at your option) any later version.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
OpenAirInterface is distributed in the hope that it will be useful,
*
but WITHOUT ANY WARRANTY; without even the implied warranty of
* Unless required by applicable law or agreed to in writing, software
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* distributed under the License is distributed on an "AS IS" BASIS,
GNU General Public License for more details.
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
You should have received a copy of the GNU General Public License
* limitations under the License.
along with OpenAirInterface.The full GNU General Public License is
*-------------------------------------------------------------------------------
included in this distribution in the file called "COPYING". If not,
* For more information about the OpenAirInterface (OAI) Software Alliance:
see <http://www.gnu.org/licenses/>.
* contact@openairinterface.org
*/
Contact Information
/*! \file ru_control.c
OpenAirInterface Admin: openair_admin@eurecom.fr
OpenAirInterface Tech : openair_tech@eurecom.fr
OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
*******************************************************************************/
/*! \file lte-ru.c
* \brief Top-level threads for RU entity
* \brief Top-level threads for RU entity
* \author R. Knopp, F. Kaltenberger, Navid Nikaein
* \author R. Knopp, F. Kaltenberger, Navid Nikaein
* \date 201
2
* \date 201
8
* \version 0.1
* \version 0.1
* \company Eurecom
* \company Eurecom
* \email: knopp@eurecom.fr,florian.kaltenberger@eurecom.fr, navid.nikaein@eurecom.fr
* \email: knopp@eurecom.fr,florian.kaltenberger@eurecom.fr, navid.nikaein@eurecom.fr
...
@@ -101,6 +92,10 @@ void fill_rf_config(RU_t *ru, char *rf_config_file);
...
@@ -101,6 +92,10 @@ void fill_rf_config(RU_t *ru, char *rf_config_file);
void
*
ru_thread_control
(
void
*
param
);
void
*
ru_thread_control
(
void
*
param
);
extern
void
reset_proc
(
RU_t
*
ru
);
extern
int
setup_RU_buffers
(
RU_t
*
ru
);
extern
void
phy_init_RU
(
RU_t
*
);
extern
void
phy_init_RU
(
RU_t
*
);
extern
const
char
ru_states
[
6
][
9
];
extern
const
char
ru_states
[
6
][
9
];
...
@@ -494,7 +489,7 @@ void configure_rru(int idx,
...
@@ -494,7 +489,7 @@ void configure_rru(int idx,
fill_rf_config
(
ru
,
ru
->
rf_config_file
);
fill_rf_config
(
ru
,
ru
->
rf_config_file
);
// phy_init_RU(ru);
// phy_init_RU(ru);
}
}
...
@@ -506,8 +501,7 @@ void* ru_thread_control( void* param ) {
...
@@ -506,8 +501,7 @@ void* ru_thread_control( void* param ) {
RU_proc_t
*
proc
=
&
ru
->
proc
;
RU_proc_t
*
proc
=
&
ru
->
proc
;
RRU_CONFIG_msg_t
rru_config_msg
;
RRU_CONFIG_msg_t
rru_config_msg
;
ssize_t
msg_len
;
ssize_t
msg_len
;
int
len
,
ret
;
int
len
;
// Start IF device if any
// Start IF device if any
if
(
ru
->
start_if
)
{
if
(
ru
->
start_if
)
{
...
@@ -597,17 +591,11 @@ void* ru_thread_control( void* param ) {
...
@@ -597,17 +591,11 @@ void* ru_thread_control( void* param ) {
//if (ru->is_slave == 1) lte_sync_time_init(&ru->frame_parms);
//if (ru->is_slave == 1) lte_sync_time_init(&ru->frame_parms);
if
(
ru
->
rfdevice
.
is_init
!=
1
){
if
(
ru
->
rfdevice
.
is_init
!=
1
)
openair0_device_load
(
&
ru
->
rfdevice
,
&
ru
->
openair0_cfg
);
ret
=
openair0_device_load
(
&
ru
->
rfdevice
,
&
ru
->
openair0_cfg
);
}
if
(
ru
->
rfdevice
.
trx_config_func
)
AssertFatal
((
ru
->
rfdevice
.
trx_config_func
(
&
ru
->
rfdevice
,
&
ru
->
openair0_cfg
)
==
0
),
if
(
ru
->
rfdevice
.
trx_config_func
)
AssertFatal
((
ru
->
rfdevice
.
trx_config_func
(
&
ru
->
rfdevice
,
&
ru
->
openair0_cfg
)
==
0
),
"Failed to configure RF device for RU %d
\n
"
,
ru
->
idx
);
"Failed to configure RF device for RU %d
\n
"
,
ru
->
idx
);
if
(
setup_RU_buffers
(
ru
)
!=
0
)
{
if
(
setup_RU_buffers
(
ru
)
!=
0
)
{
printf
(
"Exiting, cannot initialize RU Buffers
\n
"
);
printf
(
"Exiting, cannot initialize RU Buffers
\n
"
);
exit
(
-
1
);
exit
(
-
1
);
...
...
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