warning fixes
This commit is contained in:
@@ -32,7 +32,8 @@
|
|||||||
|
|
||||||
#include "PHY/defs_gNB.h"
|
#include "PHY/defs_gNB.h"
|
||||||
#include "PHY/phy_extern.h"
|
#include "PHY/phy_extern.h"
|
||||||
#include "SCHED_NR/defs.h"
|
#include "sched_nr.h"
|
||||||
|
#include "PHY/MODULATION/modulation_common.h"
|
||||||
|
|
||||||
#include "PHY/LTE_TRANSPORT/if4_tools.h"
|
#include "PHY/LTE_TRANSPORT/if4_tools.h"
|
||||||
#include "PHY/LTE_TRANSPORT/if5_tools.h"
|
#include "PHY/LTE_TRANSPORT/if5_tools.h"
|
||||||
@@ -85,6 +86,7 @@ void nr_feptx0(RU_t *ru,int slot) {
|
|||||||
void nr_feptx_ofdm_2thread(RU_t *ru) {
|
void nr_feptx_ofdm_2thread(RU_t *ru) {
|
||||||
|
|
||||||
NR_DL_FRAME_PARMS *fp=ru->nr_frame_parms;
|
NR_DL_FRAME_PARMS *fp=ru->nr_frame_parms;
|
||||||
|
nfapi_config_request_t *cfg = &ru->gNB_list[0]->gNB_config;
|
||||||
RU_proc_t *proc = &ru->proc;
|
RU_proc_t *proc = &ru->proc;
|
||||||
struct timespec wait;
|
struct timespec wait;
|
||||||
int subframe = ru->proc.subframe_tx;
|
int subframe = ru->proc.subframe_tx;
|
||||||
@@ -94,7 +96,7 @@ void nr_feptx_ofdm_2thread(RU_t *ru) {
|
|||||||
|
|
||||||
start_meas(&ru->ofdm_mod_stats);
|
start_meas(&ru->ofdm_mod_stats);
|
||||||
|
|
||||||
if (nr_subframe_select(fp,subframe) == SF_UL) return;
|
if (nr_subframe_select(cfg,subframe) == SF_UL) return;
|
||||||
|
|
||||||
// this copy should be done in the precoding thread (currently inactive)
|
// this copy should be done in the precoding thread (currently inactive)
|
||||||
for (int aa=0;aa<ru->nb_tx;aa++)
|
for (int aa=0;aa<ru->nb_tx;aa++)
|
||||||
@@ -104,7 +106,7 @@ void nr_feptx_ofdm_2thread(RU_t *ru) {
|
|||||||
|
|
||||||
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_OFDM , 1 );
|
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_OFDM , 1 );
|
||||||
|
|
||||||
if (nr_subframe_select(fp,subframe)==SF_DL) {
|
if (nr_subframe_select(cfg,subframe)==SF_DL) {
|
||||||
// If this is not an S-subframe
|
// If this is not an S-subframe
|
||||||
if (pthread_mutex_timedlock(&proc->mutex_feptx,&wait) != 0) {
|
if (pthread_mutex_timedlock(&proc->mutex_feptx,&wait) != 0) {
|
||||||
printf("[RU] ERROR pthread_mutex_lock for feptx thread (IC %d)\n", proc->instance_cnt_feptx);
|
printf("[RU] ERROR pthread_mutex_lock for feptx thread (IC %d)\n", proc->instance_cnt_feptx);
|
||||||
@@ -202,8 +204,8 @@ void nr_feptx_ofdm(RU_t *ru) {
|
|||||||
|
|
||||||
slot_offset = subframe*fp->samples_per_subframe;
|
slot_offset = subframe*fp->samples_per_subframe;
|
||||||
|
|
||||||
if ((nr_subframe_select(fp,subframe)==SF_DL)||
|
if ((nr_subframe_select(cfg,subframe)==SF_DL)||
|
||||||
((nr_subframe_select(fp,subframe)==SF_S))) {
|
((nr_subframe_select(cfg,subframe)==SF_S))) {
|
||||||
// LOG_D(HW,"Frame %d: Generating slot %d\n",frame,next_slot);
|
// LOG_D(HW,"Frame %d: Generating slot %d\n",frame,next_slot);
|
||||||
|
|
||||||
start_meas(&ru->ofdm_mod_stats);
|
start_meas(&ru->ofdm_mod_stats);
|
||||||
@@ -228,7 +230,7 @@ void nr_feptx_ofdm(RU_t *ru) {
|
|||||||
14,
|
14,
|
||||||
fp);
|
fp);
|
||||||
// if S-subframe generate first slot only
|
// if S-subframe generate first slot only
|
||||||
if (nr_subframe_select(fp,subframe) == SF_DL)
|
if (nr_subframe_select(cfg,subframe) == SF_DL)
|
||||||
nr_normal_prefix_mod(&ru->common.txdataF_BF[aa][slot_offset_F+slot_sizeF],
|
nr_normal_prefix_mod(&ru->common.txdataF_BF[aa][slot_offset_F+slot_sizeF],
|
||||||
dummy_tx_b+(fp->samples_per_subframe / fp->slots_per_subframe),
|
dummy_tx_b+(fp->samples_per_subframe / fp->slots_per_subframe),
|
||||||
14,
|
14,
|
||||||
|
|||||||
@@ -31,12 +31,13 @@
|
|||||||
*/
|
*/
|
||||||
#include "PHY/defs_gNB.h"
|
#include "PHY/defs_gNB.h"
|
||||||
#include "PHY/phy_extern.h"
|
#include "PHY/phy_extern.h"
|
||||||
#include "SCHED_NR/defs.h"
|
#include "sched_nr.h"
|
||||||
|
|
||||||
|
|
||||||
nr_subframe_t nr_subframe_select(nfapi_config_request_t *cfg,unsigned char subframe)
|
nr_subframe_t nr_subframe_select(nfapi_config_request_t *cfg,unsigned char subframe)
|
||||||
{
|
{
|
||||||
if (cfg->subframe_config.duplex_mode.value == FDD)
|
if (cfg->subframe_config.duplex_mode.value == FDD)
|
||||||
return(SF_DL);
|
return(SF_DL);
|
||||||
|
else
|
||||||
|
return SF_DL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
|
|
||||||
#include "PHY/phy_extern.h"
|
#include "PHY/phy_extern.h"
|
||||||
#include "PHY/defs_gNB.h"
|
#include "PHY/defs_gNB.h"
|
||||||
|
#include "sched_nr.h"
|
||||||
#include "PHY/NR_TRANSPORT/nr_transport.h"
|
#include "PHY/NR_TRANSPORT/nr_transport.h"
|
||||||
#include "SCHED/sched_eNB.h"
|
#include "SCHED/sched_eNB.h"
|
||||||
#include "SCHED/sched_common_extern.h"
|
#include "SCHED/sched_common_extern.h"
|
||||||
|
|||||||
@@ -20,9 +20,9 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
\author R. Knopp, F. Kaltenberger
|
\author Guy De Souza
|
||||||
\company EURECOM
|
\company EURECOM
|
||||||
\email knopp@eurecom.fr
|
\email desouza@eurecom.fr
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __openair_SCHED_NR_DEFS_H__
|
#ifndef __openair_SCHED_NR_DEFS_H__
|
||||||
@@ -33,23 +33,11 @@
|
|||||||
#include "SCHED/sched_eNB.h"
|
#include "SCHED/sched_eNB.h"
|
||||||
|
|
||||||
lte_subframe_t nr_subframe_select (nfapi_config_request_t *cfg, unsigned char subframe);
|
lte_subframe_t nr_subframe_select (nfapi_config_request_t *cfg, unsigned char subframe);
|
||||||
int nr_generate_pss( int16_t *d_pss,
|
|
||||||
int32_t **txdataF,
|
|
||||||
int16_t amp,
|
|
||||||
uint8_t ssb_start_symbol,
|
|
||||||
nfapi_config_request_t* config,
|
|
||||||
NR_DL_FRAME_PARMS *frame_parms);
|
|
||||||
int nr_generate_sss( int16_t *d_sss,
|
|
||||||
int32_t **txdataF,
|
|
||||||
int16_t amp,
|
|
||||||
uint8_t ssb_start_symbol,
|
|
||||||
nfapi_config_request_t* config,
|
|
||||||
NR_DL_FRAME_PARMS *frame_parms);
|
|
||||||
int nr_generate_pbch_dmrs(uint32_t gold_sequence,
|
|
||||||
int32_t **txdataF,
|
|
||||||
int16_t amp,
|
|
||||||
nfapi_config_request_t* config,
|
|
||||||
NR_DL_FRAME_PARMS *frame_parms);
|
|
||||||
void nr_set_ssb_first_subcarrier(nfapi_config_request_t *cfg, NR_DL_FRAME_PARMS *fp);
|
void nr_set_ssb_first_subcarrier(nfapi_config_request_t *cfg, NR_DL_FRAME_PARMS *fp);
|
||||||
|
void phy_procedures_gNB_TX(PHY_VARS_gNB *gNB, gNB_rxtx_proc_t *proc, int do_meas);
|
||||||
|
void nr_init_feptx_thread(RU_t *ru,pthread_attr_t *attr_feptx);
|
||||||
|
void nr_feptx_ofdm(RU_t *ru);
|
||||||
|
void nr_feptx_ofdm_2thread(RU_t *ru);
|
||||||
|
void nr_feptx0(RU_t *ru,int slot);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@@ -48,6 +48,7 @@
|
|||||||
|
|
||||||
#include "PHY/defs_gNB.h"
|
#include "PHY/defs_gNB.h"
|
||||||
#include "SCHED/sched_eNB.h"
|
#include "SCHED/sched_eNB.h"
|
||||||
|
#include "SCHED_NR/sched_nr.h"
|
||||||
#include "PHY/LTE_TRANSPORT/transport_proto.h"
|
#include "PHY/LTE_TRANSPORT/transport_proto.h"
|
||||||
|
|
||||||
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
|
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
#include "LAYER2/MAC/mac_extern.h"
|
#include "LAYER2/MAC/mac_extern.h"
|
||||||
#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 "SCHED_NR/sched_nr.h"
|
||||||
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
|
#include "PHY/LTE_ESTIMATION/lte_estimation.h"
|
||||||
#include "PHY/INIT/phy_init.h"
|
#include "PHY/INIT/phy_init.h"
|
||||||
|
|
||||||
@@ -332,7 +333,7 @@ static inline void fh_if5_mobipass_south_out(RU_t *ru) {
|
|||||||
static inline void fh_if4p5_south_out(RU_t *ru) {
|
static inline void fh_if4p5_south_out(RU_t *ru) {
|
||||||
if (ru == RC.ru[0]) VCD_SIGNAL_DUMPER_DUMP_VARIABLE_BY_NAME( VCD_SIGNAL_DUMPER_VARIABLES_TRX_TST, ru->proc.timestamp_tx&0xffffffff );
|
if (ru == RC.ru[0]) VCD_SIGNAL_DUMPER_DUMP_VARIABLE_BY_NAME( VCD_SIGNAL_DUMPER_VARIABLES_TRX_TST, ru->proc.timestamp_tx&0xffffffff );
|
||||||
LOG_D(PHY,"Sending IF4p5 for frame %d subframe %d\n",ru->proc.frame_tx,ru->proc.subframe_tx);
|
LOG_D(PHY,"Sending IF4p5 for frame %d subframe %d\n",ru->proc.frame_tx,ru->proc.subframe_tx);
|
||||||
if (subframe_select(&ru->frame_parms,ru->proc.subframe_tx)!=SF_UL)
|
if (nr_subframe_select(&ru->gNB_list[0]->gNB_config,ru->proc.subframe_tx)!=SF_UL)
|
||||||
send_IF4p5(ru,ru->proc.frame_tx, ru->proc.subframe_tx, IF4p5_PDLFFT);
|
send_IF4p5(ru,ru->proc.frame_tx, ru->proc.subframe_tx, IF4p5_PDLFFT);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -380,7 +381,7 @@ void fh_if4p5_south_in(RU_t *ru,int *frame,int *subframe) {
|
|||||||
|
|
||||||
uint16_t packet_type;
|
uint16_t packet_type;
|
||||||
uint32_t symbol_number=0;
|
uint32_t symbol_number=0;
|
||||||
uint32_t symbol_mask_full;
|
uint32_t symbol_mask_full=0;
|
||||||
/*
|
/*
|
||||||
if ((fp->frame_type == TDD) && (subframe_select(fp,*subframe)==SF_S))
|
if ((fp->frame_type == TDD) && (subframe_select(fp,*subframe)==SF_S))
|
||||||
symbol_mask_full = (1<<fp->ul_symbols_in_S_subframe)-1;
|
symbol_mask_full = (1<<fp->ul_symbols_in_S_subframe)-1;
|
||||||
@@ -2155,7 +2156,7 @@ void init_RU(char *rf_config_file) {
|
|||||||
gNB0 = ru->gNB_list[0];
|
gNB0 = ru->gNB_list[0];
|
||||||
fp = ru->nr_frame_parms;
|
fp = ru->nr_frame_parms;
|
||||||
LOG_D(PHY, "RU FUnction:%d ru->if_south:%d\n", ru->function, ru->if_south);
|
LOG_D(PHY, "RU FUnction:%d ru->if_south:%d\n", ru->function, ru->if_south);
|
||||||
LOG_D(PHY, "gNB0:%p fp:%d\n", gNB0, fp);
|
|
||||||
if (gNB0)
|
if (gNB0)
|
||||||
{
|
{
|
||||||
if ((ru->function != NGFI_RRU_IF5) && (ru->function != NGFI_RRU_IF4p5))
|
if ((ru->function != NGFI_RRU_IF5) && (ru->function != NGFI_RRU_IF4p5))
|
||||||
|
|||||||
Reference in New Issue
Block a user