From 4447d67650a618119e8e9495f20d720f52def51b Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 10:52:18 +0100 Subject: [PATCH 1/8] remove unnecessary gNB header dependence in coding files --- openair1/PHY/CODING/coding_defs.h | 13 +++++++++++++ openair1/PHY/CODING/coding_extern.h | 2 ++ .../nrLDPC_coding_aal/nrLDPC_coding_aal.c | 3 +++ .../CODING/nrLDPC_coding/nrLDPC_coding_interface.h | 4 +++- .../nrLDPC_coding_segment_decoder.c | 6 ------ .../nrLDPC_coding_segment_encoder.c | 5 ----- .../nrLDPC_coding_xdma/nrLDPC_coding_xdma.c | 6 ------ .../PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h | 3 +++ openair1/PHY/CODING/nrLDPC_extern.h | 2 -- openair1/PHY/CODING/nrPolar_tools/nr_polar_init.c | 2 +- openair1/PHY/defs_gNB.h | 13 ------------- 11 files changed, 25 insertions(+), 34 deletions(-) diff --git a/openair1/PHY/CODING/coding_defs.h b/openair1/PHY/CODING/coding_defs.h index e5eb61e0bd..09f324f342 100644 --- a/openair1/PHY/CODING/coding_defs.h +++ b/openair1/PHY/CODING/coding_defs.h @@ -29,6 +29,7 @@ #include #include +#include "common/utils/nr/nr_common.h" #define CRC24_A 0 #define CRC24_B 1 @@ -38,6 +39,18 @@ #define MAX_TURBO_ITERATIONS_MBSFN 8 #define MAX_TURBO_ITERATIONS max_turbo_iterations +static inline int lenWithCrc(int nbSeg, int len) +{ + if (nbSeg > 1) + return (len + 24 + 24 * nbSeg) / nbSeg; + return len + (len > NR_MAX_PDSCH_TBS ? 24 : 16); +} +static inline int crcType(int nbSeg, int len) +{ + if (nbSeg > 1) + return CRC24_B; + return len > NR_MAX_PDSCH_TBS ? CRC24_A : CRC16; +} #define LTE_NULL 2 typedef struct { diff --git a/openair1/PHY/CODING/coding_extern.h b/openair1/PHY/CODING/coding_extern.h index f910d0b1cf..2249c9370f 100644 --- a/openair1/PHY/CODING/coding_extern.h +++ b/openair1/PHY/CODING/coding_extern.h @@ -19,6 +19,8 @@ * contact@openairinterface.org */ +#include "openair1/PHY/defs_common.h" + extern decoder_if_t *decoder16; extern decoder_if_t *decoder8; extern encoder_if_t *encoder; diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/nrLDPC_coding_aal.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/nrLDPC_coding_aal.c index 89f16bb706..0da16183eb 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/nrLDPC_coding_aal.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/nrLDPC_coding_aal.c @@ -9,6 +9,9 @@ #include #define NR_LDPC_ENABLE_PARITY_CHECK +#include "PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h" +#include "PHY/CODING/coding_defs.h" + #include #include #include diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h index ca57c9bab3..2f46faeb2f 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h @@ -23,7 +23,9 @@ * \brief interface for libraries implementing coding/decoding algorithms */ -#include "PHY/defs_gNB.h" +#include "common/utils/time_meas.h" +#include "openair1/PHY/defs_common.h" +#include "common/utils/threadPool/thread-pool.h" #ifndef __NRLDPC_CODING_INTERFACE__H__ #define __NRLDPC_CODING_INTERFACE__H__ diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c index 00f1787859..5057ce4798 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c @@ -25,17 +25,11 @@ // [from gNB coding] #include "nr_rate_matching.h" -#include "PHY/defs_gNB.h" #include "PHY/CODING/coding_extern.h" #include "PHY/CODING/coding_defs.h" #include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" -#include "PHY/NR_TRANSPORT/nr_transport_common_proto.h" -#include "PHY/NR_TRANSPORT/nr_transport_proto.h" -#include "PHY/NR_TRANSPORT/nr_ulsch.h" -#include "PHY/NR_TRANSPORT/nr_dlsch.h" -#include "SCHED_NR/sched_nr.h" #include "defs.h" #include "common/utils/LOG/log.h" diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c index c0cb6af49f..38d844c180 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c @@ -24,16 +24,11 @@ */ #include "nr_rate_matching.h" -#include "PHY/defs_gNB.h" #include "PHY/CODING/coding_extern.h" #include "PHY/CODING/coding_defs.h" #include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" -#include "PHY/NR_TRANSPORT/nr_transport_proto.h" -#include "PHY/NR_TRANSPORT/nr_transport_common_proto.h" -#include "PHY/NR_TRANSPORT/nr_dlsch.h" -#include "SCHED_NR/sched_nr.h" #include "common/utils/LOG/log.h" #include "common/utils/nr/nr_common.h" #include diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c index 7a13087610..b78d1da8e6 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c @@ -33,12 +33,6 @@ #include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma_offload.h" #include "PHY/CODING/nrLDPC_extern.h" -#include "PHY/NR_TRANSPORT/nr_dlsch.h" -#include "PHY/NR_TRANSPORT/nr_transport_common_proto.h" -#include "PHY/NR_TRANSPORT/nr_transport_proto.h" -#include "PHY/NR_TRANSPORT/nr_ulsch.h" -#include "PHY/defs_gNB.h" -#include "SCHED_NR/sched_nr.h" #include "common/utils/LOG/log.h" #include "defs.h" // #define DEBUG_ULSCH_DECODING diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h index b04b991249..fa74a42c91 100644 --- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h +++ b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPCdecoder_defs.h @@ -99,6 +99,9 @@ /** Maximum number of segments per TB = MAX_NUM_NR_DLSCH_SEGMENTS_PER_LAYER*NR_MAX_NB_LAYERS */ #define NR_LDPC_MAX_NUM_CB 144 +/* LDPC maximum code block size - maximum E */ +#define LDPC_MAX_CB_SIZE 32768 + // ============================================================================== // GLOBAL CONSTANT VARIABLES diff --git a/openair1/PHY/CODING/nrLDPC_extern.h b/openair1/PHY/CODING/nrLDPC_extern.h index 7c4287d3f1..6ed940396d 100644 --- a/openair1/PHY/CODING/nrLDPC_extern.h +++ b/openair1/PHY/CODING/nrLDPC_extern.h @@ -21,8 +21,6 @@ #ifndef _NRLDPC_EXTERN_H__ #define _NRLDPC_EXTERN_H__ #include "openair1/PHY/CODING/nrLDPC_defs.h" -/* LDPC maximum code block size - maximum E */ -#define LDPC_MAX_CB_SIZE 32768 /* ldpc coder/decoder API*/ typedef struct ldpc_interface_s { LDPC_initfunc_t *LDPCinit; diff --git a/openair1/PHY/CODING/nrPolar_tools/nr_polar_init.c b/openair1/PHY/CODING/nrPolar_tools/nr_polar_init.c index 609f4b4a8f..85def82ba5 100644 --- a/openair1/PHY/CODING/nrPolar_tools/nr_polar_init.c +++ b/openair1/PHY/CODING/nrPolar_tools/nr_polar_init.c @@ -32,7 +32,7 @@ #include "nr_polar_defs.h" #include "nr_polar_psbch_defs.h" -#include "PHY/NR_TRANSPORT/nr_dci.h" +#include "common/utils/LOG/log.h" #define PolarKey ((messageType << 24) | (messageLength << 8) | aggregation_level) static t_nrPolar_params *PolarList = NULL; diff --git a/openair1/PHY/defs_gNB.h b/openair1/PHY/defs_gNB.h index 62860283d9..c5abe7523d 100644 --- a/openair1/PHY/defs_gNB.h +++ b/openair1/PHY/defs_gNB.h @@ -159,19 +159,6 @@ typedef struct { ////////////////////////////////////////////////////////////// } NR_UL_gNB_HARQ_t; -static inline int lenWithCrc(int nbSeg, int len) -{ - if (nbSeg > 1) - return (len + 24 + 24 * nbSeg) / nbSeg; - return len + (len > NR_MAX_PDSCH_TBS ? 24 : 16); -} -static inline int crcType(int nbSeg, int len) -{ - if (nbSeg > 1) - return CRC24_B; - return len > NR_MAX_PDSCH_TBS ? CRC24_A : CRC16; -} - typedef struct { uint32_t frame; uint32_t slot; From 96bc3a0ee941d76f0704b1e3160813cfc8421c20 Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 11:05:48 +0100 Subject: [PATCH 2/8] remove unnecessary defs_gNB from LTE files --- openair1/PHY/INIT/nr_init_ru.c | 3 ++- openair1/PHY/INIT/phy_init.h | 1 - openair2/PHY_INTERFACE/phy_stub_UE.c | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/openair1/PHY/INIT/nr_init_ru.c b/openair1/PHY/INIT/nr_init_ru.c index 787d05697c..48621afee4 100644 --- a/openair1/PHY/INIT/nr_init_ru.c +++ b/openair1/PHY/INIT/nr_init_ru.c @@ -19,12 +19,13 @@ * contact@openairinterface.org */ -#include "phy_init.h" #include "PHY/phy_extern.h" #include "SCHED/sched_common.h" #include "assertions.h" #include #include "openair1/PHY/defs_RU.h" +#include "openair1/PHY/defs_nr_common.h" +#include "openair1/PHY/defs_gNB.h" void nr_phy_init_RU(RU_t *ru) { diff --git a/openair1/PHY/INIT/phy_init.h b/openair1/PHY/INIT/phy_init.h index 6b278f899f..0f2705d735 100644 --- a/openair1/PHY/INIT/phy_init.h +++ b/openair1/PHY/INIT/phy_init.h @@ -24,7 +24,6 @@ #include "PHY/defs_eNB.h" #include "PHY/defs_UE.h" -#include "PHY/defs_gNB.h" #include "LTE_SystemInformationBlockType2.h" //#include "RadioResourceConfigCommonSIB.h" diff --git a/openair2/PHY_INTERFACE/phy_stub_UE.c b/openair2/PHY_INTERFACE/phy_stub_UE.c index 3c0640cd5e..8f7ff98f79 100644 --- a/openair2/PHY_INTERFACE/phy_stub_UE.c +++ b/openair2/PHY_INTERFACE/phy_stub_UE.c @@ -34,7 +34,6 @@ #include #include #include "openair2/NR_PHY_INTERFACE/NR_IF_Module.h" -#include "openair1/PHY/defs_gNB.h" #include "nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h" #include "openair1/PHY/LTE_TRANSPORT/transport_common.h" #include "softmodem-common.h" From d6759b35d22da1b7c829286a1602167d5a91d6fc Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 11:12:07 +0100 Subject: [PATCH 3/8] remove unnecessary gNB DLSCH header in UE dlsch demodulation --- openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c b/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c index 980a625978..73bcbfab46 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c @@ -32,12 +32,10 @@ #include "common/platform_constants.h" #include "nr_phy_common.h" #include "PHY/defs_nr_UE.h" -#include "PHY/phy_extern.h" #include "nr_transport_proto_ue.h" #include "PHY/sse_intrin.h" #include "T.h" #include "openair1/PHY/NR_UE_ESTIMATION/nr_estimation.h" -#include "openair1/PHY/NR_TRANSPORT/nr_dlsch.h" #include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/NR_REFSIG/dmrs_nr.h" #include "common/utils/nr/nr_common.h" From 8c4fe047d00c8845dc45d8a4afcb1097fe4849b7 Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 12:39:11 +0100 Subject: [PATCH 4/8] remove some LTE dependence in NR files --- executables/nr-gnb.c | 3 +-- .../nrLDPC_coding_segment_decoder.c | 1 - .../nrLDPC_coding_segment_encoder.c | 1 - .../nrLDPC_coding_xdma/nrLDPC_coding_xdma.c | 1 - openair1/PHY/INIT/nr_parms.c | 14 +++++++------- .../NR_ESTIMATION/nr_ul_channel_estimation.c | 17 ++++++++--------- openair1/PHY/NR_REFSIG/nr_dmrs_rx.c | 14 ++++++-------- openair1/PHY/NR_REFSIG/nr_refsig.h | 5 ++--- openair1/PHY/NR_REFSIG/nr_refsig_common.h | 2 ++ openair1/PHY/NR_REFSIG/refsig_defs_ue.h | 2 +- openair1/PHY/NR_TRANSPORT/nr_dlsch_coding.c | 1 - openair1/PHY/NR_TRANSPORT/nr_prs.c | 1 - .../PHY/NR_TRANSPORT/nr_ulsch_demodulation.c | 2 +- .../NR_UE_ESTIMATION/nr_dl_channel_estimation.c | 2 +- openair1/PHY/NR_UE_TRANSPORT/nr_psbch_tx.c | 1 - openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c | 1 - openair1/PHY/defs_nr_common.h | 7 ++++++- openair1/SCHED_NR/phy_procedures_nr_gNB.c | 2 +- openair1/SIMULATION/NR_PHY/dlschsim.c | 2 +- openair1/SIMULATION/NR_PHY/srssim.c | 2 +- openair1/SIMULATION/NR_PHY/ulschsim.c | 2 +- openair1/SIMULATION/NR_PHY/ulsim.c | 2 +- 22 files changed, 40 insertions(+), 45 deletions(-) diff --git a/executables/nr-gnb.c b/executables/nr-gnb.c index 226bf2775b..c5c1dee427 100644 --- a/executables/nr-gnb.c +++ b/executables/nr-gnb.c @@ -51,7 +51,6 @@ #include "PHY/NR_TRANSPORT/nr_transport_proto.h" #include "PHY/TOOLS/tools_defs.h" #include "PHY/defs_RU.h" -#include "PHY/defs_common.h" #include "PHY/defs_gNB.h" #include "PHY/defs_nr_common.h" #include "PHY/impl_defs_nr.h" @@ -200,7 +199,7 @@ static void rx_func(processingData_L1_t *info) int soffset = (slot_rx % RU_RX_SLOT_DEPTH) * gNB->frame_parms.symbols_per_slot * gNB->frame_parms.ofdm_symbol_size; for (int bb = 0; bb < gNB->common_vars.num_beams_period; bb++) { for (int aa = 0; aa < gNB->frame_parms.nb_antennas_rx; aa++) { - const uint max_symb = (gNB->frame_parms.Ncp == EXTENDED) ? 12 : 14; + const uint max_symb = (gNB->frame_parms.Ncp == NR_EXTENDED) ? 12 : 14; for (int sym = 0; sym < max_symb; sym++) apply_nr_rotation_symbol_RX(&gNB->frame_parms, gNB->common_vars.rxdataF[bb][aa] + soffset + sym * gNB->frame_parms.ofdm_symbol_size, diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c index 5057ce4798..e6e56b1654 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_decoder.c @@ -27,7 +27,6 @@ #include "nr_rate_matching.h" #include "PHY/CODING/coding_extern.h" #include "PHY/CODING/coding_defs.h" -#include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" #include "defs.h" diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c index 38d844c180..037ce6690f 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_segment/nrLDPC_coding_segment_encoder.c @@ -26,7 +26,6 @@ #include "nr_rate_matching.h" #include "PHY/CODING/coding_extern.h" #include "PHY/CODING/coding_defs.h" -#include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" #include "common/utils/LOG/log.h" diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c index b78d1da8e6..cd478d59a8 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma.c @@ -30,7 +30,6 @@ #include #include "PHY/CODING/coding_defs.h" #include "PHY/CODING/coding_extern.h" -#include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_xdma/nrLDPC_coding_xdma_offload.h" #include "PHY/CODING/nrLDPC_extern.h" #include "common/utils/LOG/log.h" diff --git a/openair1/PHY/INIT/nr_parms.c b/openair1/PHY/INIT/nr_parms.c index d6043775af..21b2980288 100644 --- a/openair1/PHY/INIT/nr_parms.c +++ b/openair1/PHY/INIT/nr_parms.c @@ -409,7 +409,7 @@ void nr_init_frame_parms(nfapi_nr_config_request_scf_t* cfg, NR_DL_FRAME_PARMS * fp->nb_antennas_rx = cfg->carrier_config.num_rx_ant.value; // It denotes the number of rx antennas at gNB fp->nb_antennas_tx = cfg->carrier_config.num_tx_ant.value; // It corresponds to pdsch_AntennaPorts (logical antenna ports) - fp->symbols_per_slot = ((Ncp == NORMAL)? 14 : 12); // to redefine for different slot formats + fp->symbols_per_slot = ((Ncp == NR_NORMAL)? 14 : 12); // to redefine for different slot formats fp->samples_per_subframe_wCP = fp->ofdm_symbol_size * fp->symbols_per_slot * fp->slots_per_subframe; fp->samples_per_frame_wCP = 10 * fp->samples_per_subframe_wCP; fp->samples_per_slot_wCP = fp->symbols_per_slot*fp->ofdm_symbol_size; @@ -443,7 +443,7 @@ int nr_init_frame_parms_ue(NR_DL_FRAME_PARMS *fp, uint8_t nb_ant_ports_gNB = 1; uint8_t tdd_cfg = 3; uint8_t Nid_cell = 0; - int Ncp = NORMAL; + int Ncp = NR_NORMAL; if(fp->nb_antennas_rx == 0) fp->nb_antennas_rx = 1; @@ -491,7 +491,7 @@ int nr_init_frame_parms_ue(NR_DL_FRAME_PARMS *fp, set_scs_parameters(fp, fp->numerology_index, N_RB); fp->slots_per_frame = 10* fp->slots_per_subframe; - fp->symbols_per_slot = ((Ncp == NORMAL)? 14 : 12); // to redefine for different slot formats + fp->symbols_per_slot = ((Ncp == NR_NORMAL)? 14 : 12); // to redefine for different slot formats fp->samples_per_subframe_wCP = fp->ofdm_symbol_size * fp->symbols_per_slot * fp->slots_per_subframe; fp->samples_per_frame_wCP = 10 * fp->samples_per_subframe_wCP; fp->samples_per_slot_wCP = fp->symbols_per_slot*fp->ofdm_symbol_size; @@ -552,12 +552,12 @@ void nr_init_frame_parms_ue_sa(NR_DL_FRAME_PARMS *frame_parms, const nrUE_cell_p frame_parms->nr_band = nr_band; frame_parms->frame_type = get_frame_type(frame_parms->nr_band, frame_parms->numerology_index); - frame_parms->Ncp = NORMAL; + frame_parms->Ncp = NR_NORMAL; set_scs_parameters(frame_parms, frame_parms->numerology_index, frame_parms->N_RB_DL); set_Lmax(frame_parms); frame_parms->slots_per_frame = 10* frame_parms->slots_per_subframe; - frame_parms->symbols_per_slot = ((frame_parms->Ncp == NORMAL)? 14 : 12); // to redefine for different slot formats + frame_parms->symbols_per_slot = ((frame_parms->Ncp == NR_NORMAL)? 14 : 12); // to redefine for different slot formats frame_parms->samples_per_subframe_wCP = frame_parms->ofdm_symbol_size * frame_parms->symbols_per_slot * frame_parms->slots_per_subframe; frame_parms->samples_per_frame_wCP = 10 * frame_parms->samples_per_subframe_wCP; frame_parms->samples_per_slot_wCP = frame_parms->symbols_per_slot*frame_parms->ofdm_symbol_size; @@ -652,7 +652,7 @@ int nr_init_frame_parms_ue_sl(NR_DL_FRAME_PARMS *fp, LOG_I(PHY, "Initializing frame parms for mu %d, N_RB %d, Ncp %d\n", fp->numerology_index, fp->N_RB_DL, fp->Ncp); - if (fp->Ncp == EXTENDED) + if (fp->Ncp == NR_EXTENDED) AssertFatal(fp->numerology_index == NR_MU_2, "Invalid cyclic prefix %d for numerology index %d\n", fp->Ncp, @@ -661,7 +661,7 @@ int nr_init_frame_parms_ue_sl(NR_DL_FRAME_PARMS *fp, sl_set_scs_parameters(fp, fp->numerology_index, fp->N_RB_SL); fp->slots_per_frame = 10 * fp->slots_per_subframe; - fp->symbols_per_slot = ((fp->Ncp == NORMAL) ? 14 : 12); // to redefine for different slot formats + fp->symbols_per_slot = ((fp->Ncp == NR_NORMAL) ? 14 : 12); // to redefine for different slot formats fp->samples_per_subframe_wCP = fp->ofdm_symbol_size * fp->symbols_per_slot * fp->slots_per_subframe; fp->samples_per_frame_wCP = 10 * fp->samples_per_subframe_wCP; fp->samples_per_slot_wCP = fp->symbols_per_slot * fp->ofdm_symbol_size; diff --git a/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c b/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c index d4432ef308..b078d2be1c 100644 --- a/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c +++ b/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c @@ -488,10 +488,9 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, const int nb_rb_pusch = pusch_pdu->rb_size; //------------------generate DMRS------------------// - + NR_DL_FRAME_PARMS *fp = &gNB->frame_parms; if (pusch_pdu->transform_precoding == transformPrecoder_disabled) { // Note: pilot returned by the following function is already the complex conjugate of the transmitted DMRS - NR_DL_FRAME_PARMS *fp = &gNB->frame_parms; const uint32_t *gold = nr_gold_pusch(fp->N_RB_UL, fp->symbols_per_slot, gNB->gNB_config.cell_config.phy_cell_id.value, @@ -500,7 +499,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, symbol); float beta_dmrs_pusch = get_beta_dmrs(pusch_pdu->num_dmrs_cdm_grps_no_data, pusch_pdu->dmrs_config_type == pusch_dmrs_type2); int16_t dmrs_scaling = (1 / beta_dmrs_pusch) * (1 << 14); - nr_pusch_dmrs_rx(gNB, + nr_pusch_dmrs_rx(fp->Ncp, Ns, gold, pilot, @@ -521,7 +520,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, "Num RBs not configured according to 3GPP 38.211 section 6.3.1.4. For PUSCH with transform precoding, num RBs " "cannot be multiple of any other primenumber other than 2,3,5\n"); AssertFatal(dmrs_seq != NULL, "DMRS low PAPR seq not found, check if DMRS sequences are generated"); - nr_pusch_lowpaprtype1_dmrs_rx(gNB, Ns, dmrs_seq, pilot, 1000, 0, nb_rb_pusch, 0, pusch_pdu->dmrs_config_type); + nr_pusch_lowpaprtype1_dmrs_rx(fp->Ncp, Ns, dmrs_seq, pilot, 1000, 0, nb_rb_pusch, 0, pusch_pdu->dmrs_config_type); #ifdef DEBUG_PUSCH printf("NR_UL_CHANNEL_EST: index %d, u %d,v %d\n", index, u, v); LOG_M("gNb_DMRS_SEQ.m", "gNb_DMRS_SEQ", dmrs_seq, 6 * nb_rb_pusch, 1, 1); @@ -556,7 +555,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, delay_t *delay = &gNB->ulsch[ul_id].delay; memset(delay, 0, sizeof(*delay)); - int nb_antennas_rx = gNB->frame_parms.nb_antennas_rx; + int nb_antennas_rx = fp->nb_antennas_rx; delay_t delay_arr[nb_antennas_rx]; uint64_t noise_amp2_arr[nb_antennas_rx]; int max_ch_arr[nb_antennas_rx]; @@ -573,7 +572,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, initNotifiedFIFO(&respPuschAarx); start_meas(&gNB->pusch_channel_estimation_antenna_processing_stats); int numAntennas = gNB->dmrs_num_antennas_per_thread; - int num_jobs = CEILIDIV(gNB->frame_parms.nb_antennas_rx, numAntennas); + int num_jobs = CEILIDIV(fp->nb_antennas_rx, numAntennas); puschAntennaProc_t rdatas[num_jobs]; memset(rdatas, 0, sizeof(rdatas)); task_ans_t ans; @@ -597,7 +596,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, rdata->noise_amp2 = &noise_amp2_arr[rdata->aarx]; rdata->delay = &delay_arr[rdata->aarx]; rdata->beam_nb = beam_nb; - rdata->frame_parms = &gNB->frame_parms; + rdata->frame_parms = fp; rdata->pusch_vars = &gNB->pusch_vars[ul_id]; rdata->chest_freq = gNB->chest_freq; rdata->rxdataF = gNB->common_vars.rxdataF; @@ -617,14 +616,14 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB, join_task_ans(&ans); stop_meas(&gNB->pusch_channel_estimation_antenna_processing_stats); - for (int aarx = 0; aarx < gNB->frame_parms.nb_antennas_rx; aarx++) { + for (int aarx = 0; aarx < fp->nb_antennas_rx; aarx++) { *max_ch = max(*max_ch, max_ch_arr[aarx]); noise_amp2 += noise_amp2_arr[aarx]; nest_count += nest_count_arr[aarx]; } // get the maximum delay *delay = delay_arr[0]; - for (int aarx = 1; aarx < gNB->frame_parms.nb_antennas_rx; aarx++) { + for (int aarx = 1; aarx < fp->nb_antennas_rx; aarx++) { if (delay_arr[aarx].est_delay >= delay->est_delay) { *delay = delay_arr[aarx]; } diff --git a/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c b/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c index 3624d754e9..70fd564065 100644 --- a/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c +++ b/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c @@ -36,9 +36,7 @@ #include "PHY/TOOLS/tools_defs.h" #include "refsig_defs_ue.h" -#include "PHY/defs_nr_UE.h" #include "nr_refsig.h" -#include "PHY/defs_gNB.h" #include "nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h" // Table 6.4.1.1.3-1/2 from TS 38.211 @@ -66,7 +64,7 @@ static inline c16_t get_modulated(const uint32_t *gold_sequence, const int idx_g return (c16_t){-val.r, -val.i}; } -int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB, +int nr_pusch_dmrs_rx(nr_prefix_type_t Ncp, unsigned int Ns, const uint32_t *nr_gold_pusch, c16_t *output, @@ -88,7 +86,7 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB, const int nb_dmrs = dmrs_type == pusch_dmrs_type1 ? 6 : 4; if ((p>=1000) && (p<((dmrs_type==pusch_dmrs_type1) ? 1008 : 1012))) { - if (gNB->frame_parms.Ncp == NORMAL) { + if (Ncp == NR_NORMAL) { for (int k = 0; k < nb_pusch_rb * nb_dmrs; k++) { int i = k + dmrs_offset; int w = (wf[p - 1000][i & 1]) * (wt[p - 1000][lp]); @@ -110,7 +108,7 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB, return(0); } -int nr_pdsch_dmrs_rx(const PHY_VARS_NR_UE *ue, +int nr_pdsch_dmrs_rx(nr_prefix_type_t Ncp, unsigned int Ns, const unsigned int *nr_gold_pdsch, c16_t *output, @@ -128,7 +126,7 @@ int nr_pdsch_dmrs_rx(const PHY_VARS_NR_UE *ue, LOG_E(PHY,"Bad PDSCH DMRS config type %d\n", config_type); if ((p >= 1000) && (p < ((config_type == NFAPI_NR_DMRS_TYPE1) ? 1008 : 1012))) { - if (ue->frame_parms.Ncp == NORMAL) { + if (Ncp == NR_NORMAL) { for (int i = 0; i < nb_pdsch_rb * ((config_type == NFAPI_NR_DMRS_TYPE1) ? 6 : 4); i++) { int w = (wf[p - 1000][i & 1]) * (wt[p - 1000][lp]); output[i] = get_modulated(nr_gold_pdsch, i, w == 1); @@ -215,7 +213,7 @@ void nr_gen_ref_conj_symbols(const uint32_t *in, uint32_t length, c16_t *output, } } -int nr_pusch_lowpaprtype1_dmrs_rx(PHY_VARS_gNB *gNB, +int nr_pusch_lowpaprtype1_dmrs_rx(nr_prefix_type_t Ncp, unsigned int Ns, c16_t *dmrs_seq, c16_t *output, @@ -234,7 +232,7 @@ int nr_pusch_lowpaprtype1_dmrs_rx(PHY_VARS_gNB *gNB, LOG_E(PHY,"PUSCH DMRS config type %d not valid\n", dmrs_type); if ((p>=1000) && (p<1008)) { - if (gNB->frame_parms.Ncp == NORMAL) { + if (Ncp == NR_NORMAL) { nb_dmrs = NR_NB_SC_PER_RB/2; // for DMRS TYPE 1 - 6 DMRS REs present per RB for (int i=dmrs_offset; i + uint32_t *gold_cache(uint32_t key, int length); uint32_t *nr_gold_pbch(int Lmax, int Nid, int n_hf, int ssb); uint32_t *nr_gold_pdcch(int N_RB_DL, int symbols_per_slot, unsigned short n_idDMRS, int ns, int l); diff --git a/openair1/PHY/NR_REFSIG/refsig_defs_ue.h b/openair1/PHY/NR_REFSIG/refsig_defs_ue.h index fb7dce4489..8a20823d5d 100644 --- a/openair1/PHY/NR_REFSIG/refsig_defs_ue.h +++ b/openair1/PHY/NR_REFSIG/refsig_defs_ue.h @@ -37,7 +37,7 @@ void nr_pbch_dmrs_rx(int dmrss, const unsigned int *nr_gold_pbch, c16_t *output, */ void nr_pdcch_dmrs_ref(const unsigned int *nr_gold_pdcch, c16_t *output, unsigned short nb_rb_corset); -int nr_pdsch_dmrs_rx(const PHY_VARS_NR_UE *ue, +int nr_pdsch_dmrs_rx(nr_prefix_type_t Ncp, unsigned int Ns, const unsigned int *nr_gold_pdsch, c16_t *output, diff --git a/openair1/PHY/NR_TRANSPORT/nr_dlsch_coding.c b/openair1/PHY/NR_TRANSPORT/nr_dlsch_coding.c index 71f5759396..8a73d7754a 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_dlsch_coding.c +++ b/openair1/PHY/NR_TRANSPORT/nr_dlsch_coding.c @@ -26,7 +26,6 @@ #include "PHY/defs_gNB.h" #include "PHY/CODING/coding_extern.h" #include "PHY/CODING/coding_defs.h" -#include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" #include "PHY/NR_TRANSPORT/nr_transport_proto.h" diff --git a/openair1/PHY/NR_TRANSPORT/nr_prs.c b/openair1/PHY/NR_TRANSPORT/nr_prs.c index 799912713d..5ac37037fc 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_prs.c +++ b/openair1/PHY/NR_TRANSPORT/nr_prs.c @@ -1,6 +1,5 @@ #include "PHY/defs_gNB.h" #include "PHY/NR_TRANSPORT/nr_transport_proto.h" -#include "PHY/LTE_REFSIG/lte_refsig.h" #include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/sse_intrin.h" #include "openair1/PHY/NR_REFSIG/refsig_defs_ue.h" diff --git a/openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c b/openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c index ba4d192629..e76cc3a3fd 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c +++ b/openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c @@ -32,7 +32,7 @@ void nr_idft(int32_t *z, uint32_t Msc_PUSCH) int i, ip; - LOG_T(PHY,"Doing lte_idft for Msc_PUSCH %d\n",Msc_PUSCH); + LOG_T(PHY,"Doing nr_idft for Msc_PUSCH %d\n", Msc_PUSCH); if ((Msc_PUSCH % 1536) > 0) { // conjugate input diff --git a/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c b/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c index a6ff270840..34fad79800 100644 --- a/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c +++ b/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c @@ -1296,7 +1296,7 @@ void nr_pdsch_channel_estimation(PHY_VARS_NR_UE *ue, float beta_dmrs_pdsch = get_beta_dmrs(dlsch->n_dmrs_cdm_groups, config_type == NFAPI_NR_DMRS_TYPE2); int16_t dmrs_scaling = (int16_t)((1 / beta_dmrs_pdsch) * (1 << 14)); const uint32_t *gold = nr_gold_pdsch(fp->N_RB_DL, fp->symbols_per_slot, dlsch->dlDmrsScramblingId, dlsch->nscid, slot, symbol); - nr_pdsch_dmrs_rx(ue, slot, gold, pilot, 1000 + p, 0, nb_rb_pdsch + rb_offset, config_type, dmrs_scaling); + nr_pdsch_dmrs_rx(fp->Ncp, slot, gold, pilot, 1000 + p, 0, nb_rb_pdsch + rb_offset, config_type, dmrs_scaling); delay_t delay = {0}; diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_psbch_tx.c b/openair1/PHY/NR_UE_TRANSPORT/nr_psbch_tx.c index 5a80ca272b..65b6a587ea 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_psbch_tx.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_psbch_tx.c @@ -20,7 +20,6 @@ */ #include "PHY/defs_nr_UE.h" -#include "PHY/LTE_REFSIG/lte_refsig.h" #include "PHY/NR_REFSIG/nr_mod_table.h" #include "PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h" #include "PHY/CODING/nrPolar_tools/nr_polar_psbch_defs.h" diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c b/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c index 029c1c5d38..852e87c071 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c @@ -26,7 +26,6 @@ #include "PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h" #include "PHY/CODING/coding_defs.h" #include "PHY/CODING/coding_extern.h" -#include "PHY/CODING/lte_interleaver_inline.h" #include "PHY/CODING/nrLDPC_extern.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/NR_UE_TRANSPORT/nr_transport_ue.h" diff --git a/openair1/PHY/defs_nr_common.h b/openair1/PHY/defs_nr_common.h index dc2630348c..100cb70e4c 100644 --- a/openair1/PHY/defs_nr_common.h +++ b/openair1/PHY/defs_nr_common.h @@ -86,6 +86,11 @@ #define NR_PUCCH_DMRS_RB 4 +typedef enum { + NR_NORMAL = 0, + NR_EXTENDED = 1 +} nr_prefix_type_t; + typedef enum { NR_MU_0=0, NR_MU_1, @@ -232,7 +237,7 @@ struct NR_DL_FRAME_PARMS { /// Number of common transmit antenna ports in eNodeB (1 or 2) uint8_t nb_antenna_ports_gNB; /// Cyclic Prefix for DL (0=Normal CP, 1=Extended CP) - lte_prefix_type_t Ncp; + nr_prefix_type_t Ncp; /// sequence which is computed based on carrier frequency and numerology to rotate/derotate each OFDM symbol according to Section 5.3 in 38.211 /// First dimension is for the direction of the link (0 DL, 1 UL, 2 SL) c16_t symbol_rotation[3][224]; diff --git a/openair1/SCHED_NR/phy_procedures_nr_gNB.c b/openair1/SCHED_NR/phy_procedures_nr_gNB.c index ead0b624f7..e304fe3dc9 100644 --- a/openair1/SCHED_NR/phy_procedures_nr_gNB.c +++ b/openair1/SCHED_NR/phy_procedures_nr_gNB.c @@ -338,7 +338,7 @@ void phy_procedures_gNB_TX(PHY_VARS_gNB *gNB, slot, fp->N_RB_DL, 0, - fp->Ncp == EXTENDED ? 12 : 14); + fp->Ncp == NR_EXTENDED ? 12 : 14); } T(T_GNB_PHY_DL_OUTPUT_SIGNAL, T_INT(0), diff --git a/openair1/SIMULATION/NR_PHY/dlschsim.c b/openair1/SIMULATION/NR_PHY/dlschsim.c index fa1ee27db1..155c5a6017 100644 --- a/openair1/SIMULATION/NR_PHY/dlschsim.c +++ b/openair1/SIMULATION/NR_PHY/dlschsim.c @@ -374,7 +374,7 @@ int main(int argc, char **argv) frame_parms->nb_antennas_tx = n_tx; frame_parms->nb_antennas_rx = n_rx; frame_parms->N_RB_DL = N_RB_DL; - frame_parms->Ncp = extended_prefix_flag ? EXTENDED : NORMAL; + frame_parms->Ncp = extended_prefix_flag ? NR_EXTENDED : NR_NORMAL; crcTableInit(); nr_phy_config_request_sim(gNB, N_RB_DL, N_RB_DL, mu, Nid_cell,SSB_positions); // TDD configuration diff --git a/openair1/SIMULATION/NR_PHY/srssim.c b/openair1/SIMULATION/NR_PHY/srssim.c index f791173e39..d68f925374 100644 --- a/openair1/SIMULATION/NR_PHY/srssim.c +++ b/openair1/SIMULATION/NR_PHY/srssim.c @@ -338,7 +338,7 @@ int main(int argc, char *argv[]) NR_DL_FRAME_PARMS *fp = &gNB->frame_parms; fp->N_RB_DL = N_RB_DL; fp->N_RB_UL = N_RB_UL; - fp->Ncp = extended_prefix_flag ? EXTENDED : NORMAL; + fp->Ncp = extended_prefix_flag ? NR_EXTENDED : NR_NORMAL; fp->nb_antennas_tx = n_tx; fp->nb_antennas_rx = n_rx; fp->threequarter_fs = threequarter_fs; diff --git a/openair1/SIMULATION/NR_PHY/ulschsim.c b/openair1/SIMULATION/NR_PHY/ulschsim.c index bbe69b2cba..a3bf9b5959 100644 --- a/openair1/SIMULATION/NR_PHY/ulschsim.c +++ b/openair1/SIMULATION/NR_PHY/ulschsim.c @@ -393,7 +393,7 @@ int main(int argc, char **argv) frame_parms = &gNB->frame_parms; //to be initialized I suppose (maybe not necessary for PBCH) frame_parms->N_RB_DL = N_RB_DL; frame_parms->N_RB_UL = N_RB_UL; - frame_parms->Ncp = extended_prefix_flag ? EXTENDED : NORMAL; + frame_parms->Ncp = extended_prefix_flag ? NR_EXTENDED : NR_NORMAL; gNB->max_ldpc_iterations = max_ldpc_iterations; crcTableInit(); diff --git a/openair1/SIMULATION/NR_PHY/ulsim.c b/openair1/SIMULATION/NR_PHY/ulsim.c index e545d6cba2..04a35bc14f 100644 --- a/openair1/SIMULATION/NR_PHY/ulsim.c +++ b/openair1/SIMULATION/NR_PHY/ulsim.c @@ -741,7 +741,7 @@ int main(int argc, char *argv[]) gNB->pusch_thres = -20; gNB->frame_parms.N_RB_DL = N_RB_DL; gNB->frame_parms.N_RB_UL = N_RB_UL; - gNB->frame_parms.Ncp = extended_prefix_flag ? EXTENDED : NORMAL; + gNB->frame_parms.Ncp = extended_prefix_flag ? NR_EXTENDED : NR_NORMAL; AssertFatal((gNB->if_inst = NR_IF_Module_init(0)) != NULL, "Cannot register interface"); gNB->if_inst->NR_PHY_config_req = nr_phy_config_request; From a35c272e04f0a2a0d01ff2aec12040d37aedb31f Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 12:56:11 +0100 Subject: [PATCH 5/8] improvements in NR_REFSIG headers --- doc/Doxyfile | 1 - openair1/PHY/INIT/nr_init_ue.c | 2 +- openair1/PHY/NR_REFSIG/nr_dmrs_rx.c | 1 - openair1/PHY/NR_REFSIG/nr_gold_ue.c | 2 +- openair1/PHY/NR_REFSIG/nr_refsig.h | 30 ++++++++++- openair1/PHY/NR_REFSIG/refsig_defs_ue.h | 54 ------------------- .../{nr_refsig_common.h => sl_refsig_defs.h} | 22 ++++---- openair1/PHY/NR_TRANSPORT/nr_pbch.c | 2 +- openair1/PHY/NR_TRANSPORT/nr_prs.c | 1 - .../nr_dl_channel_estimation.c | 1 - openair1/PHY/NR_UE_TRANSPORT/dci_nr.c | 1 - .../PHY/NR_UE_TRANSPORT/nr_initial_sync.c | 2 +- openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c | 2 +- openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c | 2 +- .../PHY/nr_phy_common/inc/nr_phy_common.h | 2 +- openair1/SIMULATION/NR_PHY/dlschsim.c | 1 - openair1/SIMULATION/NR_PHY/pbchsim.c | 1 - openair1/SIMULATION/NR_PHY/pucchsim.c | 1 - openair1/SIMULATION/NR_PHY/ulschsim.c | 1 - 19 files changed, 45 insertions(+), 84 deletions(-) delete mode 100644 openair1/PHY/NR_REFSIG/refsig_defs_ue.h rename openair1/PHY/NR_REFSIG/{nr_refsig_common.h => sl_refsig_defs.h} (60%) diff --git a/doc/Doxyfile b/doc/Doxyfile index 961ab2fcf9..f89d2fd26f 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -2046,7 +2046,6 @@ INPUT = \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/ul_ref_seq_nr.c \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/sss_nr.h \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/dmrs_nr.c \ -@CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/refsig_defs_ue.h \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/ptrs_nr.h \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/nr_refsig.h \ @CMAKE_CURRENT_SOURCE_DIR@/../openair1/PHY/NR_REFSIG/dmrs_nr.h \ diff --git a/openair1/PHY/INIT/nr_init_ue.c b/openair1/PHY/INIT/nr_init_ue.c index 7b21102bbf..38a992e8da 100644 --- a/openair1/PHY/INIT/nr_init_ue.c +++ b/openair1/PHY/INIT/nr_init_ue.c @@ -28,7 +28,7 @@ #include "PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h" #include "PHY/NR_REFSIG/pss_nr.h" #include "PHY/NR_REFSIG/ul_ref_seq_nr.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" +#include "PHY/NR_REFSIG/sl_refsig_defs.h" #include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/NR_REFSIG/nr_mod_table.h" #include "openair2/COMMON/prs_nr_paramdef.h" diff --git a/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c b/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c index 70fd564065..d06ce6d917 100644 --- a/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c +++ b/openair1/PHY/NR_REFSIG/nr_dmrs_rx.c @@ -35,7 +35,6 @@ //#define DEBUG_PUSCH #include "PHY/TOOLS/tools_defs.h" -#include "refsig_defs_ue.h" #include "nr_refsig.h" #include "nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h" diff --git a/openair1/PHY/NR_REFSIG/nr_gold_ue.c b/openair1/PHY/NR_REFSIG/nr_gold_ue.c index 4cb75e0f78..cc48ada3e2 100644 --- a/openair1/PHY/NR_REFSIG/nr_gold_ue.c +++ b/openair1/PHY/NR_REFSIG/nr_gold_ue.c @@ -19,7 +19,7 @@ * contact@openairinterface.org */ -#include "refsig_defs_ue.h" +#include "sl_refsig_defs.h" #include "openair1/PHY/LTE_TRANSPORT/transport_proto.h" // for lte_gold_generic() void sl_init_psbch_dmrs_gold_sequences(PHY_VARS_NR_UE *UE) diff --git a/openair1/PHY/NR_REFSIG/nr_refsig.h b/openair1/PHY/NR_REFSIG/nr_refsig.h index 764eff2ed4..e5a5e73229 100644 --- a/openair1/PHY/NR_REFSIG/nr_refsig.h +++ b/openair1/PHY/NR_REFSIG/nr_refsig.h @@ -24,8 +24,36 @@ #ifndef __NR_REFSIG__H__ #define __NR_REFSIG__H__ -#include "openair1/PHY/NR_REFSIG/nr_refsig_common.h" #include "PHY/nr_phy_common/inc/nr_phy_common.h" +#include "PHY/defs_nr_common.h" + +uint32_t *gold_cache(uint32_t key, int length); +uint32_t *nr_gold_pbch(int Lmax, int Nid, int n_hf, int ssb); +uint32_t *nr_gold_pdcch(int N_RB_DL, int symbols_per_slot, unsigned short n_idDMRS, int ns, int l); +uint32_t *nr_gold_pdsch(int N_RB_DL, int symbols_per_slot, int nid, int nscid, int slot, int symbol); +uint32_t *nr_gold_pusch(int N_RB_UL, int symbols_per_slot, int Nid, int nscid, int slot, int symbol); +uint32_t *nr_gold_csi_rs(int N_RB_DL, int symbols_per_slot, int slot, int symb, uint32_t Nid); +uint32_t *nr_gold_prs(int nid, int slot, int symbol); + +int nr_pdsch_dmrs_rx(nr_prefix_type_t Ncp, + unsigned int Ns, + const unsigned int *nr_gold_pdsch, + c16_t *output, + unsigned short p, + unsigned char lp, + unsigned short nb_pdsch_rb, + uint8_t config_type, + int16_t dmrs_scaling); + +/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PBCH DMRS. +@param PHY_VARS_NR_UE* ue structure provides configuration, frame parameters and the pointers to the 32 bits sequence storage tables + */ +void nr_pbch_dmrs_rx(int dmrss, const unsigned int *nr_gold_pbch, c16_t *output, bool sidelink); + +/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PDCCH DMRS. +@param PHY_VARS_NR_UE* ue structure provides configuration, frame parameters and the pointers to the 32 bits sequence storage tables + */ +void nr_pdcch_dmrs_ref(const unsigned int *nr_gold_pdcch, c16_t *output, unsigned short nb_rb_corset); int nr_pusch_dmrs_rx(nr_prefix_type_t Ncp, unsigned int Ns, diff --git a/openair1/PHY/NR_REFSIG/refsig_defs_ue.h b/openair1/PHY/NR_REFSIG/refsig_defs_ue.h deleted file mode 100644 index 8a20823d5d..0000000000 --- a/openair1/PHY/NR_REFSIG/refsig_defs_ue.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The OpenAirInterface Software Alliance licenses this file to You under - * the OAI Public License, Version 1.1 (the "License"); you may not use this file - * except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.openairinterface.org/?page_id=698 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - *------------------------------------------------------------------------------- - * For more information about the OpenAirInterface (OAI) Software Alliance: - * contact@openairinterface.org - */ - -/* Definitions for LTE Reference signals */ -/* Author R. Knopp / EURECOM / OpenAirInterface.org */ -#ifndef __NR_REFSIG_DEFS__H__ -#define __NR_REFSIG_DEFS__H__ - -#include "PHY/defs_nr_UE.h" -#include "nr_refsig_common.h" - -/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PBCH DMRS. -@param PHY_VARS_NR_UE* ue structure provides configuration, frame parameters and the pointers to the 32 bits sequence storage tables - */ -void nr_pbch_dmrs_rx(int dmrss, const unsigned int *nr_gold_pbch, c16_t *output, bool sidelink); - -/*!\brief This function generates the NR Gold sequence (38-211, Sec 5.2.1) for the PDCCH DMRS. -@param PHY_VARS_NR_UE* ue structure provides configuration, frame parameters and the pointers to the 32 bits sequence storage tables - */ -void nr_pdcch_dmrs_ref(const unsigned int *nr_gold_pdcch, c16_t *output, unsigned short nb_rb_corset); - -int nr_pdsch_dmrs_rx(nr_prefix_type_t Ncp, - unsigned int Ns, - const unsigned int *nr_gold_pdsch, - c16_t *output, - unsigned short p, - unsigned char lp, - unsigned short nb_pdsch_rb, - uint8_t config_type, - int16_t dmrs_scaling); - -void sl_generate_pss(SL_NR_UE_INIT_PARAMS_t *sl_init_params, uint8_t n_sl_id2, uint16_t scaling); -void sl_generate_pss_ifft_samples(sl_nr_ue_phy_params_t *sl_ue_params, SL_NR_UE_INIT_PARAMS_t *sl_init_params); -void sl_generate_sss(SL_NR_UE_INIT_PARAMS_t *sl_init_params, uint16_t slss_id, uint16_t scaling); -void sl_init_psbch_dmrs_gold_sequences(PHY_VARS_NR_UE *UE); -#endif diff --git a/openair1/PHY/NR_REFSIG/nr_refsig_common.h b/openair1/PHY/NR_REFSIG/sl_refsig_defs.h similarity index 60% rename from openair1/PHY/NR_REFSIG/nr_refsig_common.h rename to openair1/PHY/NR_REFSIG/sl_refsig_defs.h index f10582118f..9fa57c81b0 100644 --- a/openair1/PHY/NR_REFSIG/nr_refsig_common.h +++ b/openair1/PHY/NR_REFSIG/sl_refsig_defs.h @@ -19,19 +19,15 @@ * contact@openairinterface.org */ -/* Definitions for NR Reference signals */ +/* Definitions for LTE Reference signals */ +/* Author R. Knopp / EURECOM / OpenAirInterface.org */ +#ifndef __NR_REFSIG_DEFS__H__ +#define __NR_REFSIG_DEFS__H__ -#ifndef __NR_REFSIG_COMMON_H__ -#define __NR_REFSIG_COMMON_H__ - -#include - -uint32_t *gold_cache(uint32_t key, int length); -uint32_t *nr_gold_pbch(int Lmax, int Nid, int n_hf, int ssb); -uint32_t *nr_gold_pdcch(int N_RB_DL, int symbols_per_slot, unsigned short n_idDMRS, int ns, int l); -uint32_t *nr_gold_pdsch(int N_RB_DL, int symbols_per_slot, int nid, int nscid, int slot, int symbol); -uint32_t *nr_gold_pusch(int N_RB_UL, int symbols_per_slot, int Nid, int nscid, int slot, int symbol); -uint32_t *nr_gold_csi_rs(int N_RB_DL, int symbols_per_slot, int slot, int symb, uint32_t Nid); -uint32_t *nr_gold_prs(int nid, int slot, int symbol); +#include "PHY/defs_nr_UE.h" +void sl_generate_pss(SL_NR_UE_INIT_PARAMS_t *sl_init_params, uint8_t n_sl_id2, uint16_t scaling); +void sl_generate_pss_ifft_samples(sl_nr_ue_phy_params_t *sl_ue_params, SL_NR_UE_INIT_PARAMS_t *sl_init_params); +void sl_generate_sss(SL_NR_UE_INIT_PARAMS_t *sl_init_params, uint16_t slss_id, uint16_t scaling); +void sl_init_psbch_dmrs_gold_sequences(PHY_VARS_NR_UE *UE); #endif diff --git a/openair1/PHY/NR_TRANSPORT/nr_pbch.c b/openair1/PHY/NR_TRANSPORT/nr_pbch.c index 2aa2a113ad..159e040d11 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_pbch.c +++ b/openair1/PHY/NR_TRANSPORT/nr_pbch.c @@ -36,7 +36,7 @@ #include "PHY/sse_intrin.h" #include "executables/softmodem-common.h" #include "reverse_bits.h" -#include "openair1/PHY/NR_REFSIG/nr_refsig_common.h" +#include "openair1/PHY/NR_REFSIG/nr_refsig.h" #include "openair1/PHY/NR_REFSIG/nr_mod_table.h" #include "openair1/PHY/TOOLS/tools_defs.h" diff --git a/openair1/PHY/NR_TRANSPORT/nr_prs.c b/openair1/PHY/NR_TRANSPORT/nr_prs.c index 5ac37037fc..17336074db 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_prs.c +++ b/openair1/PHY/NR_TRANSPORT/nr_prs.c @@ -2,7 +2,6 @@ #include "PHY/NR_TRANSPORT/nr_transport_proto.h" #include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/sse_intrin.h" -#include "openair1/PHY/NR_REFSIG/refsig_defs_ue.h" #include "openair1/PHY/NR_REFSIG/nr_mod_table.h" //#define DEBUG_PRS_MOD //#define DEBUG_PRS_MAP diff --git a/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c b/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c index 34fad79800..8978527095 100644 --- a/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c +++ b/openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c @@ -23,7 +23,6 @@ #include #include "SCHED_NR_UE/defs.h" #include "nr_estimation.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/NR_REFSIG/dmrs_nr.h" #include "PHY/NR_REFSIG/ptrs_nr.h" diff --git a/openair1/PHY/NR_UE_TRANSPORT/dci_nr.c b/openair1/PHY/NR_UE_TRANSPORT/dci_nr.c index cd233bca26..b5f26266e5 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/dci_nr.c +++ b/openair1/PHY/NR_UE_TRANSPORT/dci_nr.c @@ -40,7 +40,6 @@ #include "PHY/sse_intrin.h" #include "common/utils/nr/nr_common.h" #include -#include "openair1/PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/NR_UE_ESTIMATION/nr_estimation.h" #include "assertions.h" diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c b/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c index 4b4b4b7be8..9d2db73e66 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c @@ -42,7 +42,7 @@ #include "PHY/NR_REFSIG/pss_nr.h" #include "PHY/NR_REFSIG/sss_nr.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" +#include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/TOOLS/tools_defs.h" #include "nr-uesoftmodem.h" diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c b/openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c index 613e70be0d..0c78cb3cb1 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c @@ -36,8 +36,8 @@ #include "openair1/SCHED_NR_UE/defs.h" #include #include -#include "openair1/PHY/NR_REFSIG/nr_refsig_common.h" #include "PHY/nr_phy_common/inc/nr_phy_common.h" +#include "openair1/PHY/NR_REFSIG/nr_refsig.h" #include "reverse_bits.h" #include "instrumentation.h" //#define DEBUG_PBCH diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c b/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c index 804529ffbf..94ee8022a8 100644 --- a/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c +++ b/openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c @@ -32,7 +32,7 @@ #include #include "PHY/NR_REFSIG/dmrs_nr.h" #include "PHY/NR_REFSIG/ptrs_nr.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" +#include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/NR_UE_TRANSPORT/nr_transport_ue.h" #include "PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h" #include "PHY/MODULATION/nr_modulation.h" diff --git a/openair1/PHY/nr_phy_common/inc/nr_phy_common.h b/openair1/PHY/nr_phy_common/inc/nr_phy_common.h index 5b60f3bdf6..b4c0e1239c 100644 --- a/openair1/PHY/nr_phy_common/inc/nr_phy_common.h +++ b/openair1/PHY/nr_phy_common/inc/nr_phy_common.h @@ -23,7 +23,7 @@ #define __NR_PHY_COMMON__H__ #include "PHY/impl_defs_top.h" #include "PHY/TOOLS/tools_defs.h" -#include "PHY/NR_REFSIG/nr_refsig_common.h" +#include "PHY/NR_REFSIG/nr_refsig.h" #include "PHY/MODULATION/nr_modulation.h" void init_byte2m128i(void); diff --git a/openair1/SIMULATION/NR_PHY/dlschsim.c b/openair1/SIMULATION/NR_PHY/dlschsim.c index 155c5a6017..076f05db48 100644 --- a/openair1/SIMULATION/NR_PHY/dlschsim.c +++ b/openair1/SIMULATION/NR_PHY/dlschsim.c @@ -38,7 +38,6 @@ #include "PHY/INIT/nr_phy_init.h" #include "PHY/MODULATION/modulation_eNB.h" #include "PHY/MODULATION/modulation_UE.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/NR_TRANSPORT/nr_dlsch.h" #include "PHY/NR_TRANSPORT/nr_transport_proto.h" #include "PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h" diff --git a/openair1/SIMULATION/NR_PHY/pbchsim.c b/openair1/SIMULATION/NR_PHY/pbchsim.c index abf3fd83fe..087b17ab06 100644 --- a/openair1/SIMULATION/NR_PHY/pbchsim.c +++ b/openair1/SIMULATION/NR_PHY/pbchsim.c @@ -34,7 +34,6 @@ #include "PHY/defs_nr_common.h" #include "PHY/defs_nr_UE.h" #include "PHY/defs_gNB.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/MODULATION/modulation_eNB.h" #include "PHY/MODULATION/modulation_UE.h" #include "PHY/MODULATION/nr_modulation.h" diff --git a/openair1/SIMULATION/NR_PHY/pucchsim.c b/openair1/SIMULATION/NR_PHY/pucchsim.c index 67aa99e417..980beac6b3 100644 --- a/openair1/SIMULATION/NR_PHY/pucchsim.c +++ b/openair1/SIMULATION/NR_PHY/pucchsim.c @@ -34,7 +34,6 @@ #include "PHY/defs_nr_common.h" #include "PHY/defs_nr_UE.h" #include "PHY/defs_gNB.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/MODULATION/modulation_eNB.h" #include "PHY/MODULATION/modulation_UE.h" #include "PHY/NR_ESTIMATION/nr_ul_estimation.h" diff --git a/openair1/SIMULATION/NR_PHY/ulschsim.c b/openair1/SIMULATION/NR_PHY/ulschsim.c index a3bf9b5959..df7db31c2e 100644 --- a/openair1/SIMULATION/NR_PHY/ulschsim.c +++ b/openair1/SIMULATION/NR_PHY/ulschsim.c @@ -35,7 +35,6 @@ #include "PHY/defs_gNB.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/INIT/nr_phy_init.h" -#include "PHY/NR_REFSIG/refsig_defs_ue.h" #include "PHY/MODULATION/modulation_eNB.h" #include "PHY/MODULATION/modulation_UE.h" #include "PHY/NR_TRANSPORT/nr_transport_proto.h" From fd69dc08231a6930699c5632b5a7431d91f52a37 Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 13:00:03 +0100 Subject: [PATCH 6/8] include license header in nr_prs.c --- openair1/PHY/NR_TRANSPORT/nr_prs.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/openair1/PHY/NR_TRANSPORT/nr_prs.c b/openair1/PHY/NR_TRANSPORT/nr_prs.c index 17336074db..be1bd8adb8 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_prs.c +++ b/openair1/PHY/NR_TRANSPORT/nr_prs.c @@ -1,3 +1,24 @@ +/* + * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The OpenAirInterface Software Alliance licenses this file to You under + * the OAI Public License, Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.openairinterface.org/?page_id=698 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + *------------------------------------------------------------------------------- + * For more information about the OpenAirInterface (OAI) Software Alliance: + * contact@openairinterface.org + */ + #include "PHY/defs_gNB.h" #include "PHY/NR_TRANSPORT/nr_transport_proto.h" #include "PHY/NR_REFSIG/nr_refsig.h" From e9cef104918b8cc18539fd3edd70d0347444d498 Mon Sep 17 00:00:00 2001 From: francescomani Date: Wed, 25 Feb 2026 09:25:28 +0100 Subject: [PATCH 7/8] other small minor cleanup --- openair1/PHY/NR_TRANSPORT/nr_dci_tools.c | 2 -- openair1/PHY/NR_TRANSPORT/nr_prach_common.c | 1 - openair1/PHY/NR_UE_TRANSPORT/README | 1 - openair1/PHY/defs_gNB.h | 1 - openair1/PHY/defs_nr_common.h | 1 - openair1/PHY/impl_defs_top.h | 14 -------------- 6 files changed, 20 deletions(-) delete mode 100644 openair1/PHY/NR_UE_TRANSPORT/README diff --git a/openair1/PHY/NR_TRANSPORT/nr_dci_tools.c b/openair1/PHY/NR_TRANSPORT/nr_dci_tools.c index c2d2ab7a24..742d3bb43e 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_dci_tools.c +++ b/openair1/PHY/NR_TRANSPORT/nr_dci_tools.c @@ -35,8 +35,6 @@ //#define DEBUG_FILL_DCI -#include "nr_dlsch.h" - int compfunc(const void *a, const void *b) { return (*(int *)a - *(int *)b); diff --git a/openair1/PHY/NR_TRANSPORT/nr_prach_common.c b/openair1/PHY/NR_TRANSPORT/nr_prach_common.c index 7a7c64a048..8c6fe7152a 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_prach_common.c +++ b/openair1/PHY/NR_TRANSPORT/nr_prach_common.c @@ -31,7 +31,6 @@ */ #include "PHY/sse_intrin.h" #include "PHY/impl_defs_nr.h" -#include "PHY/defs_nr_UE.h" #include "PHY/NR_TRANSPORT/nr_prach.h" #include "PHY/NR_TRANSPORT/nr_transport_common_proto.h" #include "common/utils/LOG/log.h" diff --git a/openair1/PHY/NR_UE_TRANSPORT/README b/openair1/PHY/NR_UE_TRANSPORT/README deleted file mode 100644 index 62393afe93..0000000000 --- a/openair1/PHY/NR_UE_TRANSPORT/README +++ /dev/null @@ -1 +0,0 @@ -UE NR transport/physical channel procedures are here diff --git a/openair1/PHY/defs_gNB.h b/openair1/PHY/defs_gNB.h index c5abe7523d..b1113517c6 100644 --- a/openair1/PHY/defs_gNB.h +++ b/openair1/PHY/defs_gNB.h @@ -37,7 +37,6 @@ #include "defs_nr_common.h" #include "CODING/nrPolar_tools/nr_polar_pbch_defs.h" #include "openair2/NR_PHY_INTERFACE/NR_IF_Module.h" -#include "PHY/NR_TRANSPORT/nr_transport_common_proto.h" #include "PHY/impl_defs_top.h" #include "PHY/CODING/nrLDPC_coding/nrLDPC_coding_interface.h" #include "PHY/CODING/nrLDPC_extern.h" diff --git a/openair1/PHY/defs_nr_common.h b/openair1/PHY/defs_nr_common.h index 100cb70e4c..746740b7fa 100644 --- a/openair1/PHY/defs_nr_common.h +++ b/openair1/PHY/defs_nr_common.h @@ -34,7 +34,6 @@ #define __PHY_DEFS_NR_COMMON__H__ #include "PHY/impl_defs_top.h" -#include "nfapi_nr_interface_scf.h" #include "impl_defs_nr.h" #include "PHY/CODING/nrPolar_tools/nr_polar_defs.h" diff --git a/openair1/PHY/impl_defs_top.h b/openair1/PHY/impl_defs_top.h index a59244a14b..2ae4ebb119 100644 --- a/openair1/PHY/impl_defs_top.h +++ b/openair1/PHY/impl_defs_top.h @@ -240,20 +240,6 @@ #define NR_MAX_ULSCH_HARQ_PROCESSES (NR_MAX_HARQ_PROCESSES) /* cf 38.214 6.1 UE procedure for receiving the physical uplink shared channel */ #define NR_MAX_DLSCH_HARQ_PROCESSES (NR_MAX_HARQ_PROCESSES) /* cf 38.214 5.1 UE procedure for receiving the physical downlink shared channel */ -/// Data structure for transmission. -typedef struct { - /// RAW TX sample buffer - char *TX_DMA_BUFFER[2]; -} TX_VARS ; - -/// Data structure for reception. -typedef struct { - /// RAW TX sample buffer - char *TX_DMA_BUFFER[2]; - /// RAW RX sample buffer - int *RX_DMA_BUFFER[2]; -} TX_RX_VARS; - /// Measurement Variables //#define NUMBER_OF_SUBBANDS_MAX 13 From 10c26a79a5e4b63fb8a20fbec30af6d992b6e17f Mon Sep 17 00:00:00 2001 From: Robert Schmidt Date: Thu, 26 Feb 2026 09:32:12 +0100 Subject: [PATCH 8/8] Link log_headers to ldpc_aal to also force build of T headers --- .../PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/CMakeLists.txt b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/CMakeLists.txt index 1bad804fba..383a9c8108 100644 --- a/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/CMakeLists.txt +++ b/openair1/PHY/CODING/nrLDPC_coding/nrLDPC_coding_aal/CMakeLists.txt @@ -21,7 +21,7 @@ if (ENABLE_LDPC_AAL) set_target_properties(ldpc_aal PROPERTIES COMPILE_FLAGS "-DALLOW_EXPERIMENTAL_API") set_target_properties(ldpc_aal PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) target_include_directories(ldpc_aal PRIVATE ${LIBDPDK_AAL_INCLUDE_DIRS}) - target_link_libraries(ldpc_aal PRIVATE ldpc_gen_HEADERS ${LIBDPDK_AAL_LDFLAGS}) + target_link_libraries(ldpc_aal PRIVATE log_headers ldpc_gen_HEADERS ${LIBDPDK_AAL_LDFLAGS}) if (PMD_T2) target_link_libraries(ldpc_aal PRIVATE ${PMD_T2}) endif()