From f46240ca2ba34291d2d9e12232541ce34fb9e680 Mon Sep 17 00:00:00 2001 From: Laurent THOMAS Date: Fri, 8 Apr 2022 18:22:38 +0200 Subject: [PATCH] fix code review remarks --- openair1/PHY/INIT/nr_init_ue.c | 6 ++- openair1/PHY/TOOLS/tools_defs.h | 62 ++++++++++++++------------ openair2/LAYER2/NR_MAC_gNB/mac_proto.h | 3 ++ 3 files changed, 41 insertions(+), 30 deletions(-) diff --git a/openair1/PHY/INIT/nr_init_ue.c b/openair1/PHY/INIT/nr_init_ue.c index 1417a16819..fe4eabb34e 100644 --- a/openair1/PHY/INIT/nr_init_ue.c +++ b/openair1/PHY/INIT/nr_init_ue.c @@ -468,16 +468,18 @@ void term_nr_ue_signal(PHY_VARS_NR_UE *ue, int nb_connected_gNB) } free_and_zero(ue->nr_gold_pdsch[0]); - for (int gNB_id = 0; gNB_id < ue->n_connected_gNB; gNB_id++) { + for (int gNB_id = 0; gNB_id < ue->n_connected_gNB+1; gNB_id++) { // PDSCH for (int th_id = 0; th_id < RX_NB_TH_MAX; th_id++) { - free_and_zero(ue->pdsch_vars[th_id][gNB_id]->llr_shifts); free_and_zero(ue->pdsch_vars[th_id][gNB_id]->llr128_2ndstream); phy_term_nr_ue__PDSCH(ue->pdsch_vars[th_id][gNB_id], fp); free_and_zero(ue->pdsch_vars[th_id][gNB_id]); } + } + + for (int gNB_id = 0; gNB_id < ue->n_connected_gNB; gNB_id++) { for (int th_id = 0; th_id < RX_NB_TH_MAX; th_id++) { for (int i = 0; i < fp->nb_antennas_rx; i++) { diff --git a/openair1/PHY/TOOLS/tools_defs.h b/openair1/PHY/TOOLS/tools_defs.h index 30327cf689..7cee04fc59 100644 --- a/openair1/PHY/TOOLS/tools_defs.h +++ b/openair1/PHY/TOOLS/tools_defs.h @@ -272,58 +272,64 @@ This function performs optimized fixed-point radix-2 FFT/IFFT. SZ_DEF(36864) \ SZ_DEF(49152) \ SZ_DEF(73728) \ - SZ_DEF(98304) + SZ_DEF(98304) #ifdef OAIDFTS_MAIN -typedef void(*adftfunc_t)(int16_t *sigF,int16_t *sig,unsigned char scale_flag); -typedef void(*aidftfunc_t)(int16_t *sigF,int16_t *sig,unsigned char scale_flag); +typedef void(*adftfunc_t)(int16_t *sigF,int16_t *sig,unsigned char scale_flag); +typedef void(*aidftfunc_t)(int16_t *sigF,int16_t *sig,unsigned char scale_flag); #define SZ_FUNC(Sz) void dft ## Sz(int16_t *x,int16_t *y,uint8_t scale_flag); - FOREACH_DFTSZ(SZ_FUNC) +FOREACH_DFTSZ(SZ_FUNC) #define SZ_iFUNC(Sz) void idft ## Sz(int16_t *x,int16_t *y,uint8_t scale_flag); - FOREACH_IDFTSZ(SZ_iFUNC) +FOREACH_IDFTSZ(SZ_iFUNC) #else - typedef void(*dftfunc_t)(uint8_t sizeidx,int16_t *sigF,int16_t *sig,unsigned char scale_flag); - typedef void(*idftfunc_t)(uint8_t sizeidx,int16_t *sigF,int16_t *sig,unsigned char scale_flag); +typedef void(*dftfunc_t)(uint8_t sizeidx,int16_t *sigF,int16_t *sig,unsigned char scale_flag); +typedef void(*idftfunc_t)(uint8_t sizeidx,int16_t *sigF,int16_t *sig,unsigned char scale_flag); # ifdef OAIDFTS_LOADER - dftfunc_t dft; - idftfunc_t idft; +dftfunc_t dft; +idftfunc_t idft; # else - extern dftfunc_t dft; - extern idftfunc_t idft; - extern int load_dftslib(void); +extern dftfunc_t dft; +extern idftfunc_t idft; +extern int load_dftslib(void); # endif #endif - + #define SZ_ENUM(Sz) DFT_ ## Sz, - typedef enum dft_size_idx { - FOREACH_DFTSZ(SZ_ENUM) - DFT_SIZE_IDXTABLESIZE +typedef enum dft_size_idx { + FOREACH_DFTSZ(SZ_ENUM) + DFT_SIZE_IDXTABLESIZE } dft_size_idx_t; - + #define SZ_iENUM(Sz) IDFT_ ## Sz, - typedef enum idft_size_idx { +typedef enum idft_size_idx { FOREACH_IDFTSZ(SZ_iENUM) IDFT_SIZE_IDXTABLESIZE } idft_size_idx_t; - + #ifdef OAIDFTS_MAIN - + #define SZ_PTR(Sz) {dft ## Sz,Sz}, - struct {adftfunc_t func; int size;} dft_ftab[]={ - FOREACH_DFTSZ(SZ_PTR) - }; +struct { + adftfunc_t func; + int size; +} dft_ftab[]= { + FOREACH_DFTSZ(SZ_PTR) +}; #define SZ_iPTR(Sz) {idft ## Sz,Sz}, - struct {adftfunc_t func; int size;} idft_ftab[]={ - FOREACH_IDFTSZ(SZ_iPTR) - }; +struct { + adftfunc_t func; + int size; +} idft_ftab[]= { + FOREACH_IDFTSZ(SZ_iPTR) +}; #endif @@ -378,7 +384,7 @@ int32_t add_real_vector64(int16_t *x, uint32_t N); int32_t sub_real_vector64(int16_t *x, - int16_t* y, + int16_t *y, int16_t *z, uint32_t N); @@ -435,7 +441,7 @@ int32_t signal_energy_amp_shift(int32_t *input, uint32_t length); /*!\fn int32_t signal_energy(int *,uint32_t); \brief Computes the signal energy per subcarrier */ -int32_t subcarrier_energy(int32_t *,uint32_t, int32_t* subcarrier_energy, uint16_t rx_power_correction); +int32_t subcarrier_energy(int32_t *,uint32_t, int32_t *subcarrier_energy, uint16_t rx_power_correction); #endif /*!\fn int32_t signal_energy_nodc(int32_t *,uint32_t); diff --git a/openair2/LAYER2/NR_MAC_gNB/mac_proto.h b/openair2/LAYER2/NR_MAC_gNB/mac_proto.h index 784a71f23f..399033abd0 100644 --- a/openair2/LAYER2/NR_MAC_gNB/mac_proto.h +++ b/openair2/LAYER2/NR_MAC_gNB/mac_proto.h @@ -519,4 +519,7 @@ bool nr_find_nb_rb(uint16_t Qm, void nr_sr_reporting(int Mod_idP, frame_t frameP, sub_frame_t slotP); void dump_mac_stats(gNB_MAC_INST *gNB, char *output, int strlen, bool reset_rsrp); + +void process_CellGroup(NR_CellGroupConfig_t *CellGroup, NR_UE_sched_ctrl_t *sched_ctrl); + #endif /*__LAYER2_NR_MAC_PROTO_H__*/