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
+
+ Intel O-RAN/X-RAN Generated Doxygen Documentation
+ |
+
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"
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 |
+Typedefs | |
typedef struct sectorHandleInfo | XranSectorHandleInfo |
typedef struct sectorHandleInfo * | PXranSectorHandleInfo |
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_config * | xran_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_ctx * | xran_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_entry * | xran_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] |
XRAN layer common functionality for both lls-CU and RU as well as C-plane and U-plane.
+ + +Definition in file xran_common.h.
+#define MAX_N_FULLBAND_SC 273 | +
Definition at line 51 of file xran_common.h.
+ +#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.
+ +#define N_SC_PER_PRB 12 | +
Definition at line 50 of file xran_common.h.
+ +#define N_SYM_PER_SLOT 14 | +
Definition at line 52 of file xran_common.h.
+ +#define NSEC_PER_SEC 1000000000L | +
Definition at line 67 of file xran_common.h.
+ +#define O_DU 0 | +
Definition at line 47 of file xran_common.h.
+ +#define O_RU 1 | +
Definition at line 48 of file xran_common.h.
+ +#define PRACH_PLAYBACK_BUFFER_BYTES (144*14*4L) | +
Definition at line 59 of file xran_common.h.
+ +#define PRACH_SRS_BUFFER_BYTES (144*14*4L) | +
this is the configuration of M-plane
+ +Definition at line 61 of file xran_common.h.
+ +#define SLOTNUM_PER_SUBFRAME (SUBFRAME_DURATION_US/interval_us) | +
Definition at line 54 of file xran_common.h.
+ +#define SLOTS_PER_SYSTEMFRAME (SLOTNUM_PER_SUBFRAME*SUBFRAMES_PER_SYSTEMFRAME) | +
Definition at line 56 of file xran_common.h.
+ +#define SUBFRAME_DURATION_US 1000 | +
Definition at line 53 of file xran_common.h.
+ +#define SUBFRAMES_PER_SYSTEMFRAME 10 | +
Definition at line 55 of file xran_common.h.
+ +#define TIMER_RESOLUTION_CYCLES 1596*1 /* 1us */ | +
Definition at line 68 of file xran_common.h.
+ +#define XRAN_MAX_MBUF_LEN 9600 | +
jumbo frame
+ +Definition at line 66 of file xran_common.h.
+ +#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.
+ +#define XRAN_MAX_PACKET_FRAG 9 | +
Definition at line 194 of file xran_common.h.
+ +#define XRAN_MAX_PKT_BURST_PER_SYM 32 | +
Definition at line 193 of file xran_common.h.
+ +#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.
+ +#define XRAN_MLOG_VAR 0 | +
enable debug variables to mlog
+ +Definition at line 75 of file xran_common.h.
+ +#define XRAN_NAME_MAX_LEN (64) | +
Definition at line 70 of file xran_common.h.
+ +#define XRAN_PRACH_CANDIDATE_PREAMBLE (2) | +
Definition at line 78 of file xran_common.h.
+ +#define XRAN_PRACH_CANDIDATE_SLOT (40) | +
Definition at line 80 of file xran_common.h.
+ +#define XRAN_PRACH_CANDIDATE_Y (2) | +
Definition at line 79 of file xran_common.h.
+ +#define XRAN_PRACH_CONFIG_TABLE_SIZE (256) | +
Definition at line 81 of file xran_common.h.
+ +#define XRAN_PRACH_PREAMBLE_FORMAT_OF_ABC (9) | +
Definition at line 82 of file xran_common.h.
+ +#define XRAN_RING_NUM (3) | +
Definition at line 71 of file xran_common.h.
+ +#define XRAN_RING_SIZE 512 /*4*14*8 pow of 2 */ | +
Definition at line 69 of file xran_common.h.
+ +#define XranDiffSymIdx | +( | ++ | prevSymIdx, | +
+ | + | + | currSymIdx, | +
+ | + | + | numTotalSymIdx | +
+ | ) | +((prevSymIdx > currSymIdx) ? ((currSymIdx + numTotalSymIdx) - prevSymIdx) : (currSymIdx - prevSymIdx)) | +
Definition at line 73 of file xran_common.h.
+ +#define XranIncrementJob | +( | ++ | i | ) | +((i >= (XRAN_SYM_JOB_SIZE-1)) ? 0 : (i+1)) | +
Definition at line 191 of file xran_common.h.
+ +typedef struct sectorHandleInfo * PXranSectorHandleInfo | +
typedef int(* xran_ethdi_mbuf_send_fn) (struct rte_mbuf *mb, uint16_t ethertype) | +
Definition at line 169 of file xran_common.h.
+ +typedef struct sectorHandleInfo XranSectorHandleInfo | +
typedef void(* XranSymCallbackFn) (struct rte_timer *tim, void *arg) | +
Definition at line 160 of file xran_common.h.
+ +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.
+ +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 | +
+ | ) | ++ |
Definition at line 535 of file xran_common.c.
+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 | +
+ | ) | ++ |
Definition at line 595 of file xran_common.c.
+int packets_dump_thread | +( | +void * | +args | ) | ++ |
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 | +
+ | ) | ++ |
Definition at line 348 of file xran_common.c.
+int process_mbuf | +( | +struct rte_mbuf * | +pkt | ) | ++ |
Definition at line 143 of file xran_common.c.
+ +int process_ring | +( | +struct rte_ring * | +r | ) | ++ |
Definition at line 676 of file xran_common.c.
+int32_t ring_processing_func | +( | +void | +) | ++ |
Definition at line 700 of file xran_common.c.
+int ring_processing_thread | +( | +void * | +args | ) | ++ |
Definition at line 742 of file xran_common.c.
+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 | +
+ | ) | ++ |
Definition at line 510 of file xran_common.c.
+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 | +
+ | ) | ++ |
Definition at line 436 of file xran_common.c.
+
+
|
+ +inline | +
Definition at line 379 of file xran_main.c.
+struct cb_elem_entry* xran_create_cb | +( | +XranSymCallbackFn | +cb_fn, | +
+ | + | void * | +cb_data | +
+ | ) | ++ |
Definition at line 125 of file xran_common.c.
+ +int xran_destroy_cb | +( | +struct cb_elem_entry * | +cb_elm | ) | ++ |
Definition at line 136 of file xran_common.c.
+ +struct xran_device_ctx* xran_dev_get_ctx | +( | +void | +) | ++ |
Definition at line 223 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of compression method for RU.
+Definition at line 3018 of file xran_main.c.
+struct xran_eaxcid_config* xran_get_conf_eAxC | +( | +void * | +pHandle | ) | ++ |
Get the configuration of eAxC ID.
+Definition at line 2955 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of FFT size for RU.
+Definition at line 2985 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of IQ bit width for RU.
+Definition at line 3005 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of the total number of beamforming weights on RU.
+Definition at line 2965 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of nummerology.
+Definition at line 2995 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of subcarrier spacing for PRACH.
+Definition at line 2975 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of the number of antenna elements.
+Definition at line 3069 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of the number of component carriers.
+Definition at line 3029 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of the number of antenna for UL.
+Definition at line 3039 of file xran_main.c.
+
+
|
+ +inline | +
Get the configuration of the number of antenna.
+Definition at line 3059 of file xran_main.c.
+
+
|
+ +inline | +
Get configuration of O-RU (Cat A or Cat B)
+Definition at line 3049 of file xran_main.c.
+uint8_t xran_get_seqid | +( | +void * | +pHandle, | +
+ | + | uint8_t | +dir, | +
+ | + | uint8_t | +cc_id, | +
+ | + | uint8_t | +ant_id, | +
+ | + | uint8_t | +slot_id | +
+ | ) | ++ |
int xran_init_prach | +( | +struct xran_fh_config * | +pConf, | +
+ | + | struct xran_device_ctx * | +p_xran_dev_ctx | +
+ | ) | ++ |
Definition at line 308 of file xran_main.c.
+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.
+void xran_updateSfnSecStart | +( | +void | +) | ++ |
Definition at line 201 of file xran_main.c.
+const xRANPrachConfigTableStruct gxranPrachDataTable_mmw[XRAN_PRACH_CONFIG_TABLE_SIZE] | +
Definition at line 553 of file xran_ul_tables.c.
+ +const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_fdd[XRAN_PRACH_CONFIG_TABLE_SIZE] | +
Definition at line 32 of file xran_ul_tables.c.
+ +const xRANPrachConfigTableStruct gxranPrachDataTable_sub6_tdd[XRAN_PRACH_CONFIG_TABLE_SIZE] | +
Definition at line 292 of file xran_ul_tables.c.
+ +const xRANPrachPreambleLRAStruct gxranPreambleforLRA[13] | +
Definition at line 845 of file xran_ul_tables.c.
+ +long rx_bytes_counter | +
Definition at line 120 of file xran_common.c.
+ +long rx_bytes_per_sec | +
Definition at line 122 of file xran_common.c.
+ +long rx_counter | +
Definition at line 117 of file xran_common.c.
+ +long tx_bytes_counter | +
Definition at line 119 of file xran_common.c.
+ +long tx_bytes_per_sec | +
Definition at line 121 of file xran_common.c.
+ +long tx_counter | +
Definition at line 118 of file xran_common.c.
+ +