X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=docs%2FAPI%2Fxran__common_8h.html;fp=docs%2FAPI%2Fxran__common_8h.html;h=f56d9d94b5806af60f4bd228e0c033fb42899a32;hb=870e1b86b0c74169b215c166dee787c7c1a20d06;hp=0000000000000000000000000000000000000000;hpb=298022ce50fa8133cc880507170c4b7120d227b5;p=o-du%2Fphy.git diff --git a/docs/API/xran__common_8h.html b/docs/API/xran__common_8h.html new file mode 100644 index 0000000..f56d9d9 --- /dev/null +++ b/docs/API/xran__common_8h.html @@ -0,0 +1,2765 @@ + + + + + + + +o-du/phy: xran_common.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
o-du/phy +
+
Intel O-RAN/X-RAN Generated Doxygen Documentation
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+Data Structures | +Macros | +Typedefs | +Enumerations | +Functions | +Variables
+
+
xran_common.h File Reference
+
+
+ +

XRAN layer common functionality for both lls-CU and RU as well as C-plane and U-plane. +More...

+
#include <stdio.h>
+#include <unistd.h>
+#include <sys/param.h>
+#include <sys/queue.h>
+#include <rte_common.h>
+#include <rte_mbuf.h>
+#include <rte_timer.h>
+#include "xran_fh_o_du.h"
+#include "xran_pkt_up.h"
+#include "xran_cp_api.h"
+
+Include dependency graph for xran_common.h:
+
+
+ + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + +

+Data Structures

struct  xRANPrachConfigTableStruct
 
struct  xRANPrachPreambleLRAStruct
 
struct  xran_prach_cp_config
 
struct  sectorHandleInfo
 
struct  cb_elem_entry
 
struct  BbuIoBufCtrlStruct
 
struct  mbuf_table
 
struct  xran_device_ctx
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define O_DU   0
 
#define O_RU   1
 
#define N_SC_PER_PRB   12
 
#define MAX_N_FULLBAND_SC   273
 
#define N_SYM_PER_SLOT   14
 
#define SUBFRAME_DURATION_US   1000
 
#define SLOTNUM_PER_SUBFRAME   (SUBFRAME_DURATION_US/interval_us)
 
#define SUBFRAMES_PER_SYSTEMFRAME   10
 
#define SLOTS_PER_SYSTEMFRAME   (SLOTNUM_PER_SUBFRAME*SUBFRAMES_PER_SYSTEMFRAME)
 
#define PRACH_PLAYBACK_BUFFER_BYTES   (144*14*4L)
 
#define PRACH_SRS_BUFFER_BYTES   (144*14*4L)
 
#define XRAN_MAX_NUM_SECTIONS   (N_SYM_PER_SLOT* (XRAN_MAX_ANTENNA_NR*2) + XRAN_MAX_ANT_ARRAY_ELM_NR)
 
#define XRAN_MAX_MBUF_LEN   9600
 
#define NSEC_PER_SEC   1000000000L
 
#define TIMER_RESOLUTION_CYCLES   1596*1 /* 1us */
 
#define XRAN_RING_SIZE   512 /*4*14*8 pow of 2 */
 
#define XRAN_NAME_MAX_LEN   (64)
 
#define XRAN_RING_NUM   (3)
 
#define XranDiffSymIdx(prevSymIdx, currSymIdx, numTotalSymIdx)   ((prevSymIdx > currSymIdx) ? ((currSymIdx + numTotalSymIdx) - prevSymIdx) : (currSymIdx - prevSymIdx))
 
#define XRAN_MLOG_VAR   0
 
#define XRAN_PRACH_CANDIDATE_PREAMBLE   (2)
 
#define XRAN_PRACH_CANDIDATE_Y   (2)
 
#define XRAN_PRACH_CANDIDATE_SLOT   (40)
 
#define XRAN_PRACH_CONFIG_TABLE_SIZE   (256)
 
#define XRAN_PRACH_PREAMBLE_FORMAT_OF_ABC   (9)
 
#define XRAN_MAX_POOLS_PER_SECTOR_NR   8
 
#define XranIncrementJob(i)   ((i >= (XRAN_SYM_JOB_SIZE-1)) ? 0 : (i+1))
 
#define XRAN_MAX_PKT_BURST_PER_SYM   32
 
#define XRAN_MAX_PACKET_FRAG   9
 
#define MBUF_TABLE_SIZE   (2 * MAX(XRAN_MAX_PKT_BURST_PER_SYM, XRAN_MAX_PACKET_FRAG))
 
+ + + + + + + + + +

+Typedefs

typedef struct sectorHandleInfo XranSectorHandleInfo
 
typedef struct sectorHandleInfoPXranSectorHandleInfo
 
typedef void(* XranSymCallbackFn) (struct rte_timer *tim, void *arg)
 
typedef int(* xran_ethdi_mbuf_send_fn) (struct rte_mbuf *mb, uint16_t ethertype)
 
+ + + +

+Enumerations

enum  PreambleFormatEnum {
+  FORMAT_0 = 0, +FORMAT_1, +FORMAT_2, +FORMAT_3, +
+  FORMAT_A1, +FORMAT_A2, +FORMAT_A3, +FORMAT_B1, +
+  FORMAT_B2, +FORMAT_B3, +FORMAT_B4, +FORMAT_C0, +
+  FORMAT_C2, +FORMAT_LAST +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

int process_mbuf (struct rte_mbuf *pkt)
 
int process_ring (struct rte_ring *r)
 
int ring_processing_thread (void *args)
 
int packets_dump_thread (void *args)
 
int send_symbol_ex (enum xran_pkt_dir direction, uint16_t section_id, struct rte_mbuf *mb, struct rb_map *data, const enum xran_input_byte_order iq_buf_byte_order, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint8_t symbol_no, int prb_start, int prb_num, uint8_t CC_ID, uint8_t RU_Port_ID, uint8_t seq_id)
 
int32_t prepare_symbol_ex (enum xran_pkt_dir direction, uint16_t section_id, struct rte_mbuf *mb, struct rb_map *data, uint8_t compMeth, uint8_t iqWidth, const enum xran_input_byte_order iq_buf_byte_order, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint8_t symbol_no, int prb_start, int prb_num, uint8_t CC_ID, uint8_t RU_Port_ID, uint8_t seq_id, uint32_t do_copy)
 
int send_cpmsg (void *pHandle, struct rte_mbuf *mbuf, struct xran_cp_gen_params *params, struct xran_section_gen_info *sect_geninfo, uint8_t cc_id, uint8_t ru_port_id, uint8_t seq_id)
 
int32_t generate_cpmsg_dlul (void *pHandle, struct xran_cp_gen_params *params, struct xran_section_gen_info *sect_geninfo, struct rte_mbuf *mbuf, enum xran_pkt_dir dir, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint8_t startsym, uint8_t numsym, uint16_t prb_start, uint16_t prb_num, int16_t iq_buffer_offset, int16_t iq_buffer_len, uint16_t beam_id, uint8_t cc_id, uint8_t ru_port_id, uint8_t comp_method, uint8_t iqWidth, uint8_t seq_id, uint8_t symInc)
 
int generate_cpmsg_prach (void *pHandle, struct xran_cp_gen_params *params, struct xran_section_gen_info *sect_geninfo, struct rte_mbuf *mbuf, struct xran_device_ctx *pxran_lib_ctx, uint8_t frame_id, uint8_t subframe_id, uint8_t slot_id, uint16_t beam_id, uint8_t cc_id, uint8_t prach_port_id, uint8_t seq_id)
 
struct xran_eaxcid_configxran_get_conf_eAxC (void *pHandle)
 Get the configuration of eAxC ID. More...
 
uint8_t xran_get_conf_prach_scs (void *pHandle)
 Get the configuration of subcarrier spacing for PRACH. More...
 
uint8_t xran_get_conf_fftsize (void *pHandle)
 Get the configuration of FFT size for RU. More...
 
uint8_t xran_get_conf_numerology (void *pHandle)
 Get the configuration of nummerology. More...
 
uint8_t xran_get_conf_iqwidth (void *pHandle)
 Get the configuration of IQ bit width for RU. More...
 
uint8_t xran_get_conf_compmethod (void *pHandle)
 Get the configuration of compression method for RU. More...
 
uint8_t xran_get_conf_num_bfweights (void *pHandle)
 Get the configuration of the total number of beamforming weights on RU. More...
 
uint8_t xran_get_num_cc (void *pHandle)
 Get the configuration of the number of component carriers. More...
 
uint8_t xran_get_num_eAxc (void *pHandle)
 Get the configuration of the number of antenna for UL. More...
 
uint8_t xran_get_num_eAxcUl (void *pHandle)
 Get the configuration of the number of antenna. More...
 
uint8_t xran_get_num_ant_elm (void *pHandle)
 Get the configuration of the number of antenna elements. More...
 
enum xran_category xran_get_ru_category (void *pHandle)
 Get configuration of O-RU (Cat A or Cat B) More...
 
struct xran_device_ctxxran_dev_get_ctx (void)
 
int xran_register_cb_mbuf2ring (xran_ethdi_mbuf_send_fn mbuf_send_cp, xran_ethdi_mbuf_send_fn mbuf_send_up)
 
uint16_t xran_alloc_sectionid (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ant_id, uint8_t slot_id)
 
uint8_t xran_get_seqid (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ant_id, uint8_t slot_id)
 
int32_t ring_processing_func (void)
 
int xran_init_prach (struct xran_fh_config *pConf, struct xran_device_ctx *p_xran_dev_ctx)
 
void xran_updateSfnSecStart (void)
 
struct cb_elem_entryxran_create_cb (XranSymCallbackFn cb_fn, void *cb_data)
 
int xran_destroy_cb (struct cb_elem_entry *cb_elm)
 
+ + + + + + + + + + + + + + + + + + + + + +

+Variables

long rx_counter
 
long tx_counter
 
long tx_bytes_counter
 
long rx_bytes_counter
 
long tx_bytes_per_sec
 
long rx_bytes_per_sec
 
const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_fdd [XRAN_PRACH_CONFIG_TABLE_SIZE]
 
const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_tdd [XRAN_PRACH_CONFIG_TABLE_SIZE]
 
const xRANPrachConfigTableStruct gxranPrachDataTable_mmw [XRAN_PRACH_CONFIG_TABLE_SIZE]
 
const xRANPrachPreambleLRAStruct gxranPreambleforLRA [13]
 
+

Detailed Description

+

XRAN layer common functionality for both lls-CU and RU as well as C-plane and U-plane.

+
Author
Intel Corporation
+ +

Definition in file xran_common.h.

+

Macro Definition Documentation

+ +

◆ MAX_N_FULLBAND_SC

+ +
+
+ + + + +
#define MAX_N_FULLBAND_SC   273
+
+ +

Definition at line 51 of file xran_common.h.

+ +
+
+ +

◆ MBUF_TABLE_SIZE

+ +
+
+ + + + +
#define MBUF_TABLE_SIZE   (2 * MAX(XRAN_MAX_PKT_BURST_PER_SYM, XRAN_MAX_PACKET_FRAG))
+
+ +

Definition at line 196 of file xran_common.h.

+ +
+
+ +

◆ N_SC_PER_PRB

+ +
+
+ + + + +
#define N_SC_PER_PRB   12
+
+ +

Definition at line 50 of file xran_common.h.

+ +
+
+ +

◆ N_SYM_PER_SLOT

+ +
+
+ + + + +
#define N_SYM_PER_SLOT   14
+
+ +

Definition at line 52 of file xran_common.h.

+ +
+
+ +

◆ NSEC_PER_SEC

+ +
+
+ + + + +
#define NSEC_PER_SEC   1000000000L
+
+ +

Definition at line 67 of file xran_common.h.

+ +
+
+ +

◆ O_DU

+ +
+
+ + + + +
#define O_DU   0
+
+ +

Definition at line 47 of file xran_common.h.

+ +
+
+ +

◆ O_RU

+ +
+
+ + + + +
#define O_RU   1
+
+ +

Definition at line 48 of file xran_common.h.

+ +
+
+ +

◆ PRACH_PLAYBACK_BUFFER_BYTES

+ +
+
+ + + + +
#define PRACH_PLAYBACK_BUFFER_BYTES   (144*14*4L)
+
+ +

Definition at line 59 of file xran_common.h.

+ +
+
+ +

◆ PRACH_SRS_BUFFER_BYTES

+ +
+
+ + + + +
#define PRACH_SRS_BUFFER_BYTES   (144*14*4L)
+
+

this is the configuration of M-plane

+ +

Definition at line 61 of file xran_common.h.

+ +
+
+ +

◆ SLOTNUM_PER_SUBFRAME

+ +
+
+ + + + +
#define SLOTNUM_PER_SUBFRAME   (SUBFRAME_DURATION_US/interval_us)
+
+ +

Definition at line 54 of file xran_common.h.

+ +
+
+ +

◆ SLOTS_PER_SYSTEMFRAME

+ +
+
+ + + + +
#define SLOTS_PER_SYSTEMFRAME   (SLOTNUM_PER_SUBFRAME*SUBFRAMES_PER_SYSTEMFRAME)
+
+ +

Definition at line 56 of file xran_common.h.

+ +
+
+ +

◆ SUBFRAME_DURATION_US

+ +
+
+ + + + +
#define SUBFRAME_DURATION_US   1000
+
+ +

Definition at line 53 of file xran_common.h.

+ +
+
+ +

◆ SUBFRAMES_PER_SYSTEMFRAME

+ +
+
+ + + + +
#define SUBFRAMES_PER_SYSTEMFRAME   10
+
+ +

Definition at line 55 of file xran_common.h.

+ +
+
+ +

◆ TIMER_RESOLUTION_CYCLES

+ +
+
+ + + + +
#define TIMER_RESOLUTION_CYCLES   1596*1 /* 1us */
+
+ +

Definition at line 68 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MAX_MBUF_LEN

+ +
+
+ + + + +
#define XRAN_MAX_MBUF_LEN   9600
+
+

jumbo frame

+ +

Definition at line 66 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MAX_NUM_SECTIONS

+ +
+
+ + + + +
#define XRAN_MAX_NUM_SECTIONS   (N_SYM_PER_SLOT* (XRAN_MAX_ANTENNA_NR*2) + XRAN_MAX_ANT_ARRAY_ELM_NR)
+
+ +

Definition at line 64 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MAX_PACKET_FRAG

+ +
+
+ + + + +
#define XRAN_MAX_PACKET_FRAG   9
+
+ +

Definition at line 194 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MAX_PKT_BURST_PER_SYM

+ +
+
+ + + + +
#define XRAN_MAX_PKT_BURST_PER_SYM   32
+
+ +

Definition at line 193 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MAX_POOLS_PER_SECTOR_NR

+ +
+
+ + + + +
#define XRAN_MAX_POOLS_PER_SECTOR_NR   8
+
+

2x(TX_OUT, RX_IN, PRACH_IN, SRS_IN) with C-plane

+ +

Definition at line 142 of file xran_common.h.

+ +
+
+ +

◆ XRAN_MLOG_VAR

+ +
+
+ + + + +
#define XRAN_MLOG_VAR   0
+
+

enable debug variables to mlog

+ +

Definition at line 75 of file xran_common.h.

+ +
+
+ +

◆ XRAN_NAME_MAX_LEN

+ +
+
+ + + + +
#define XRAN_NAME_MAX_LEN   (64)
+
+ +

Definition at line 70 of file xran_common.h.

+ +
+
+ +

◆ XRAN_PRACH_CANDIDATE_PREAMBLE

+ +
+
+ + + + +
#define XRAN_PRACH_CANDIDATE_PREAMBLE   (2)
+
+ +

Definition at line 78 of file xran_common.h.

+ +
+
+ +

◆ XRAN_PRACH_CANDIDATE_SLOT

+ +
+
+ + + + +
#define XRAN_PRACH_CANDIDATE_SLOT   (40)
+
+ +

Definition at line 80 of file xran_common.h.

+ +
+
+ +

◆ XRAN_PRACH_CANDIDATE_Y

+ +
+
+ + + + +
#define XRAN_PRACH_CANDIDATE_Y   (2)
+
+ +

Definition at line 79 of file xran_common.h.

+ +
+
+ +

◆ XRAN_PRACH_CONFIG_TABLE_SIZE

+ +
+
+ + + + +
#define XRAN_PRACH_CONFIG_TABLE_SIZE   (256)
+
+ +

Definition at line 81 of file xran_common.h.

+ +
+
+ +

◆ XRAN_PRACH_PREAMBLE_FORMAT_OF_ABC

+ +
+
+ + + + +
#define XRAN_PRACH_PREAMBLE_FORMAT_OF_ABC   (9)
+
+ +

Definition at line 82 of file xran_common.h.

+ +
+
+ +

◆ XRAN_RING_NUM

+ +
+
+ + + + +
#define XRAN_RING_NUM   (3)
+
+ +

Definition at line 71 of file xran_common.h.

+ +
+
+ +

◆ XRAN_RING_SIZE

+ +
+
+ + + + +
#define XRAN_RING_SIZE   512 /*4*14*8 pow of 2 */
+
+ +

Definition at line 69 of file xran_common.h.

+ +
+
+ +

◆ XranDiffSymIdx

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
#define XranDiffSymIdx( prevSymIdx,
 currSymIdx,
 numTotalSymIdx 
)   ((prevSymIdx > currSymIdx) ? ((currSymIdx + numTotalSymIdx) - prevSymIdx) : (currSymIdx - prevSymIdx))
+
+ +

Definition at line 73 of file xran_common.h.

+ +
+
+ +

◆ XranIncrementJob

+ +
+
+ + + + + + + + +
#define XranIncrementJob( i)   ((i >= (XRAN_SYM_JOB_SIZE-1)) ? 0 : (i+1))
+
+ +

Definition at line 191 of file xran_common.h.

+ +
+
+

Typedef Documentation

+ +

◆ PXranSectorHandleInfo

+ +
+
+ + + + +
typedef struct sectorHandleInfo * PXranSectorHandleInfo
+
+ +
+
+ +

◆ xran_ethdi_mbuf_send_fn

+ +
+
+ + + + +
typedef int(* xran_ethdi_mbuf_send_fn) (struct rte_mbuf *mb, uint16_t ethertype)
+
+ +

Definition at line 169 of file xran_common.h.

+ +
+
+ +

◆ XranSectorHandleInfo

+ +
+
+ + + + +
typedef struct sectorHandleInfo XranSectorHandleInfo
+
+ +
+
+ +

◆ XranSymCallbackFn

+ +
+
+ + + + +
typedef void(* XranSymCallbackFn) (struct rte_timer *tim, void *arg)
+
+ +

Definition at line 160 of file xran_common.h.

+ +
+
+

Enumeration Type Documentation

+ +

◆ PreambleFormatEnum

+ +
+
+ + + + +
enum PreambleFormatEnum
+
+ + + + + + + + + + + + + + + +
Enumerator
FORMAT_0 
FORMAT_1 
FORMAT_2 
FORMAT_3 
FORMAT_A1 
FORMAT_A2 
FORMAT_A3 
FORMAT_B1 
FORMAT_B2 
FORMAT_B3 
FORMAT_B4 
FORMAT_C0 
FORMAT_C2 
FORMAT_LAST 
+ +

Definition at line 83 of file xran_common.h.

+ +
+
+

Function Documentation

+ +

◆ generate_cpmsg_dlul()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int32_t generate_cpmsg_dlul (void * pHandle,
struct xran_cp_gen_paramsparams,
struct xran_section_gen_infosect_geninfo,
struct rte_mbuf * mbuf,
enum xran_pkt_dir dir,
uint8_t frame_id,
uint8_t subframe_id,
uint8_t slot_id,
uint8_t startsym,
uint8_t numsym,
uint16_t prb_start,
uint16_t prb_num,
int16_t iq_buffer_offset,
int16_t iq_buffer_len,
uint16_t beam_id,
uint8_t cc_id,
uint8_t ru_port_id,
uint8_t comp_method,
uint8_t iqWidth,
uint8_t seq_id,
uint8_t symInc 
)
+
+ +

Definition at line 535 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + + + + + + + + + +
+ +
+
+ +

◆ generate_cpmsg_prach()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int generate_cpmsg_prach (void * pHandle,
struct xran_cp_gen_paramsparams,
struct xran_section_gen_infosect_geninfo,
struct rte_mbuf * mbuf,
struct xran_device_ctxpxran_lib_ctx,
uint8_t frame_id,
uint8_t subframe_id,
uint8_t slot_id,
uint16_t beam_id,
uint8_t cc_id,
uint8_t prach_port_id,
uint8_t seq_id 
)
+
+ +

Definition at line 595 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + + + + + + + + + + + + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + +
+ +
+
+ +

◆ packets_dump_thread()

+ +
+
+ + + + + + + + +
int packets_dump_thread (void * args)
+
+ +
+
+ +

◆ prepare_symbol_ex()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int32_t prepare_symbol_ex (enum xran_pkt_dir direction,
uint16_t section_id,
struct rte_mbuf * mb,
struct rb_mapdata,
uint8_t compMeth,
uint8_t iqWidth,
const enum xran_input_byte_order iq_buf_byte_order,
uint8_t frame_id,
uint8_t subframe_id,
uint8_t slot_id,
uint8_t symbol_no,
int prb_start,
int prb_num,
uint8_t CC_ID,
uint8_t RU_Port_ID,
uint8_t seq_id,
uint32_t do_copy 
)
+
+ +

Definition at line 348 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ process_mbuf()

+ +
+
+ + + + + + + + +
int process_mbuf (struct rte_mbuf * pkt)
+
+ +

Definition at line 143 of file xran_common.c.

+ +
+
+ +

◆ process_ring()

+ +
+
+ + + + + + + + +
int process_ring (struct rte_ring * r)
+
+ +

Definition at line 676 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+ +
+
+ +

◆ ring_processing_func()

+ +
+
+ + + + + + + + +
int32_t ring_processing_func (void )
+
+ +

Definition at line 700 of file xran_common.c.

+
+Here is the caller graph for this function:
+
+
+ + + +
+ +
+
+ +

◆ ring_processing_thread()

+ +
+
+ + + + + + + + +
int ring_processing_thread (void * args)
+
+ +

Definition at line 742 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+ +
+
+ +

◆ send_cpmsg()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int send_cpmsg (void * pHandle,
struct rte_mbuf * mbuf,
struct xran_cp_gen_paramsparams,
struct xran_section_gen_infosect_geninfo,
uint8_t cc_id,
uint8_t ru_port_id,
uint8_t seq_id 
)
+
+ +

Definition at line 510 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + + +
+ +
+
+ +

◆ send_symbol_ex()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int send_symbol_ex (enum xran_pkt_dir direction,
uint16_t section_id,
struct rte_mbuf * mb,
struct rb_mapdata,
const enum xran_input_byte_order iq_buf_byte_order,
uint8_t frame_id,
uint8_t subframe_id,
uint8_t slot_id,
uint8_t symbol_no,
int prb_start,
int prb_num,
uint8_t CC_ID,
uint8_t RU_Port_ID,
uint8_t seq_id 
)
+
+ +

Definition at line 436 of file xran_common.c.

+
+Here is the call graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_alloc_sectionid()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uint16_t xran_alloc_sectionid (void * pHandle,
uint8_t dir,
uint8_t cc_id,
uint8_t ant_id,
uint8_t slot_id 
)
+
+inline
+
+ +

Definition at line 379 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + + +
+ +
+
+ +

◆ xran_create_cb()

+ +
+
+ + + + + + + + + + + + + + + + + + +
struct cb_elem_entry* xran_create_cb (XranSymCallbackFn cb_fn,
void * cb_data 
)
+
+ +

Definition at line 125 of file xran_common.c.

+ +
+
+ +

◆ xran_destroy_cb()

+ +
+
+ + + + + + + + +
int xran_destroy_cb (struct cb_elem_entrycb_elm)
+
+ +

Definition at line 136 of file xran_common.c.

+ +
+
+ +

◆ xran_dev_get_ctx()

+ +
+
+ + + + + + + + +
struct xran_device_ctx* xran_dev_get_ctx (void )
+
+ +

Definition at line 223 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +

◆ xran_get_conf_compmethod()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_compmethod (void * pHandle)
+
+inline
+
+ +

Get the configuration of compression method for RU.

+
Returns
Compression method for RU
+ +

Definition at line 3018 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_get_conf_eAxC()

+ +
+
+ + + + + + + + +
struct xran_eaxcid_config* xran_get_conf_eAxC (void * pHandle)
+
+ +

Get the configuration of eAxC ID.

+
Returns
the pointer of configuration
+ +

Definition at line 2955 of file xran_main.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +

◆ xran_get_conf_fftsize()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_fftsize (void * pHandle)
+
+inline
+
+ +

Get the configuration of FFT size for RU.

+
Returns
FFT size value for RU
+ +

Definition at line 2985 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_get_conf_iqwidth()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_iqwidth (void * pHandle)
+
+inline
+
+ +

Get the configuration of IQ bit width for RU.

+
Returns
IQ bit width for RU
+ +

Definition at line 3005 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_get_conf_num_bfweights()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_num_bfweights (void * pHandle)
+
+inline
+
+ +

Get the configuration of the total number of beamforming weights on RU.

+
Returns
Configured the number of beamforming weights
+ +

Definition at line 2965 of file xran_main.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + + + + + +
+ +
+
+ +

◆ xran_get_conf_numerology()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_numerology (void * pHandle)
+
+inline
+
+ +

Get the configuration of nummerology.

+
Returns
Configured numerology
+ +

Definition at line 2995 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + + + +
+ +
+
+ +

◆ xran_get_conf_prach_scs()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_conf_prach_scs (void * pHandle)
+
+inline
+
+ +

Get the configuration of subcarrier spacing for PRACH.

+
Returns
subcarrier spacing value for PRACH
+ +

Definition at line 2975 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_get_num_ant_elm()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_num_ant_elm (void * pHandle)
+
+inline
+
+ +

Get the configuration of the number of antenna elements.

+
Returns
Configured the number of antenna
+ +

Definition at line 3069 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + +
+ +
+
+ +

◆ xran_get_num_cc()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_num_cc (void * pHandle)
+
+inline
+
+ +

Get the configuration of the number of component carriers.

+
Returns
Configured the number of component carriers
+ +

Definition at line 3029 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + + + + + + + +
+ +
+
+ +

◆ xran_get_num_eAxc()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_num_eAxc (void * pHandle)
+
+inline
+
+ +

Get the configuration of the number of antenna for UL.

+
Returns
Configured the number of antenna
+ +

Definition at line 3039 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + + + + + + + + + + + + + + + +
+ +
+
+ +

◆ xran_get_num_eAxcUl()

+ +
+
+ + + + + +
+ + + + + + + + +
uint8_t xran_get_num_eAxcUl (void * pHandle)
+
+inline
+
+ +

Get the configuration of the number of antenna.

+
Returns
Configured the number of antenna
+ +

Definition at line 3059 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + +
+ +
+
+ +

◆ xran_get_ru_category()

+ +
+
+ + + + + +
+ + + + + + + + +
enum xran_category xran_get_ru_category (void * pHandle)
+
+inline
+
+ +

Get configuration of O-RU (Cat A or Cat B)

+
Returns
Configured the number of antenna
+ +

Definition at line 3049 of file xran_main.c.

+
+Here is the caller graph for this function:
+
+
+ + + + + +
+ +
+
+ +

◆ xran_get_seqid()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
uint8_t xran_get_seqid (void * pHandle,
uint8_t dir,
uint8_t cc_id,
uint8_t ant_id,
uint8_t slot_id 
)
+
+ +
+
+ +

◆ xran_init_prach()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_init_prach (struct xran_fh_configpConf,
struct xran_device_ctxp_xran_dev_ctx 
)
+
+ +

Definition at line 308 of file xran_main.c.

+
+Here is the call graph for this function:
+
+
+ + + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + + + + +
+ +
+
+ +

◆ xran_register_cb_mbuf2ring()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_register_cb_mbuf2ring (xran_ethdi_mbuf_send_fn mbuf_send_cp,
xran_ethdi_mbuf_send_fn mbuf_send_up 
)
+
+ +

Definition at line 2918 of file xran_main.c.

+
+Here is the call graph for this function:
+
+
+ + + + +
+
+Here is the caller graph for this function:
+
+
+ + + + + + +
+ +
+
+ +

◆ xran_updateSfnSecStart()

+ +
+
+ + + + + + + + +
void xran_updateSfnSecStart (void )
+
+ +

Definition at line 201 of file xran_main.c.

+
+Here is the call graph for this function:
+
+
+ + + +
+ +
+
+

Variable Documentation

+ +

◆ gxranPrachDataTable_mmw

+ +
+
+ + + + +
const xRANPrachConfigTableStruct gxranPrachDataTable_mmw[XRAN_PRACH_CONFIG_TABLE_SIZE]
+
+ +

Definition at line 553 of file xran_ul_tables.c.

+ +
+
+ +

◆ gxranPrachDataTable_sub6_fdd

+ +
+
+ + + + +
const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_fdd[XRAN_PRACH_CONFIG_TABLE_SIZE]
+
+ +

Definition at line 32 of file xran_ul_tables.c.

+ +
+
+ +

◆ gxranPrachDataTable_sub6_tdd

+ +
+
+ + + + +
const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_tdd[XRAN_PRACH_CONFIG_TABLE_SIZE]
+
+ +

Definition at line 292 of file xran_ul_tables.c.

+ +
+
+ +

◆ gxranPreambleforLRA

+ +
+
+ + + + +
const xRANPrachPreambleLRAStruct gxranPreambleforLRA[13]
+
+ +

Definition at line 845 of file xran_ul_tables.c.

+ +
+
+ +

◆ rx_bytes_counter

+ +
+
+ + + + +
long rx_bytes_counter
+
+ +

Definition at line 120 of file xran_common.c.

+ +
+
+ +

◆ rx_bytes_per_sec

+ +
+
+ + + + +
long rx_bytes_per_sec
+
+ +

Definition at line 122 of file xran_common.c.

+ +
+
+ +

◆ rx_counter

+ +
+
+ + + + +
long rx_counter
+
+ +

Definition at line 117 of file xran_common.c.

+ +
+
+ +

◆ tx_bytes_counter

+ +
+
+ + + + +
long tx_bytes_counter
+
+ +

Definition at line 119 of file xran_common.c.

+ +
+
+ +

◆ tx_bytes_per_sec

+ +
+
+ + + + +
long tx_bytes_per_sec
+
+ +

Definition at line 121 of file xran_common.c.

+ +
+
+ +

◆ tx_counter

+ +
+
+ + + + +
long tx_counter
+
+ +

Definition at line 118 of file xran_common.c.

+ +
+
+
+ + + +