From 4447d67650a618119e8e9495f20d720f52def51b Mon Sep 17 00:00:00 2001 From: francescomani Date: Tue, 24 Feb 2026 10:52:18 +0100 Subject: [PATCH] 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;