o-du/phy
Intel O-RAN/X-RAN Generated Doxygen Documentation
|
This file provides the definitions for Control Plane Messages APIs. More...
Go to the source code of this file.
Data Structures | |
struct | xran_section_info |
struct | xran_sectionext1_info |
struct | xran_sectionext2_info |
struct | xran_sectionext3_info |
struct | xran_sectionext4_info |
struct | xran_sectionext5_info |
struct | xran_sectionext_info |
struct | xran_cp_header_params |
struct | xran_section_gen_info |
struct | xran_cp_gen_params |
struct | xran_cp_rbmap_list |
Functions | |
uint16_t | xran_get_cplength (int cpLength) |
int32_t | xran_get_freqoffset (int freqOffset, int scs) |
int | xran_prepare_ctrl_pkt (struct rte_mbuf *mbuf, struct xran_cp_gen_params *params, uint8_t CC_ID, uint8_t Ant_ID, uint8_t seq_id) |
Create a C-Plane packet Transport layer fragmentation is not supported. More... | |
int | xran_parse_cp_pkt (struct rte_mbuf *mbuf, struct xran_cp_gen_params *result, struct xran_recv_packet_info *pkt_info) |
Parse a C-Plane packet (for RU emulation) Transport layer fragmentation is not supported. More... | |
int | xran_cp_init_sectiondb (void *pHandle) |
Initialize section database. Allocate required memory space to store section information. Each eAxC allocates dedicated storage and the entry size is the maximum number of sections. Total entry size : number of CC * number of antenna * max number of sections * 2(direction) More... | |
int | xran_cp_free_sectiondb (void *pHandle) |
Release and free section database. More... | |
int | xran_cp_add_section_info (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id, struct xran_section_info *info) |
Add a section information of C-Plane to dabase. More... | |
int | xran_cp_add_multisection_info (void *pHandle, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id, struct xran_cp_gen_params *gen_info) |
struct xran_section_info * | xran_cp_find_section_info (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id, uint16_t section_id) |
Find a section information of C-Plane from dabase by given information. More... | |
struct xran_section_info * | xran_cp_iterate_section_info (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id, uint32_t *next) |
Iterate each section information of C-Plane from the database of eAxC by given information. More... | |
int | xran_cp_getsize_section_info (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id) |
Get the size of stored entries for the database of eAxC by given information. More... | |
int | xran_cp_reset_section_info (void *pHandle, uint8_t dir, uint8_t cc_id, uint8_t ruport_id, uint8_t ctx_id) |
Reset a database of eAxC by given information. More... | |
int32_t | xran_cp_populate_section_ext_1 (int8_t *p_ext1_dst, uint16_t ext1_dst_len, int16_t *p_bfw_iq_src, uint16_t rbNumber, uint16_t bfwNumber, uint8_t bfwiqWidth, uint8_t bfwCompMeth) |
This file provides the definitions for Control Plane Messages APIs.
Definition in file xran_cp_api.h.
#define XRAN_CONVERT_BFWIQWIDTH | ( | x | ) | ((x) > 15 ? 0 : (x)) |
Macro to convert bfwIqWidth defined in 5.4.7.1.1, Table 5-15
Definition at line 158 of file xran_cp_api.h.
#define XRAN_CONVERT_IQWIDTH | ( | x | ) | ((x) > 15 ? 0 : (x)) |
Definition at line 120 of file xran_cp_api.h.
#define XRAN_CONVERT_NUMPRBC | ( | x | ) | ((x) > 255 ? 0 : (x)) |
Macro to convert the number of PRBs as defined in 5.4.5.6
Definition at line 118 of file xran_cp_api.h.
#define XRAN_EF_F_ANOTHER_ONE 1 |
Definition at line 142 of file xran_cp_api.h.
#define XRAN_EF_F_LAST 0 |
Definition at line 141 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_BUFFER_ERROR 4 |
Definition at line 132 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_CWCONFIG_REQ 5 |
Definition at line 133 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_CWCONFIG_RSP 6 |
Definition at line 134 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_DRS_REQ 1 |
Definition at line 129 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_DRS_RSP 3 |
Definition at line 131 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_PDSCH_REQ 0 |
Definition at line 128 of file xran_cp_api.h.
#define XRAN_LAAMSGTYPE_LBT_PDSCH_RSP 2 |
Definition at line 130 of file xran_cp_api.h.
#define XRAN_LBTMODE_FULL 0 |
Definition at line 136 of file xran_cp_api.h.
#define XRAN_LBTMODE_FULLSTOP 3 |
Definition at line 139 of file xran_cp_api.h.
#define XRAN_LBTMODE_PARTIAL25 1 |
Definition at line 137 of file xran_cp_api.h.
#define XRAN_LBTMODE_PARTIAL34 2 |
Definition at line 138 of file xran_cp_api.h.
#define XRAN_MAX_BFW_N (XRAN_MAX_NUM_ANT_BF*XRAN_MAX_NUM_UE) |
Definition at line 47 of file xran_cp_api.h.
#define XRAN_MAX_MODCOMP_ADDPARMS 6 /* max should be even number */ |
Definition at line 48 of file xran_cp_api.h.
#define XRAN_MAX_NUM_ANT_BF |
Definition at line 44 of file xran_cp_api.h.
#define XRAN_MAX_NUM_EXTENSIONS XRAN_MAX_PRBS /* Maximum number of extensions in a section [up to 1 ext section per RB]*/ |
Definition at line 42 of file xran_cp_api.h.
#define XRAN_MAX_NUM_UE 16 /* Maximum number of UEs/Lyaers */ |
Definition at line 43 of file xran_cp_api.h.
#define XRAN_MAX_SECTIONDB_CTX 2 |
Definition at line 40 of file xran_cp_api.h.
#define XRAN_SECTIONEXT_ALIGN 4 /* alignment size in byte for section extension */ |
Definition at line 50 of file xran_cp_api.h.
#define XRAN_SLOTID_MAX 16 |
Maximum Slot Index, defined in 5.4.4.6
Definition at line 75 of file xran_cp_api.h.
#define XRAN_SYMBOLNUMBER_MAX 14 |
Maximum number of symbols, defined in 5.4.5.7
Definition at line 125 of file xran_cp_api.h.
#define XRAN_SYMBOLNUMBER_MIN 1 |
Minimum number of symbols, defined in 5.4.5.7
Definition at line 123 of file xran_cp_api.h.
enum xran_cp_bfa_bitwidth |
Beamforming Attributes Bitwidth 5.4.7.2.1
Definition at line 171 of file xran_cp_api.h.
Beamforming Weights Compression Method 5.4.7.1.1, Table 5-16
Definition at line 161 of file xran_cp_api.h.
enum xran_cp_fftsize |
FFT size in frame structure, defined in 5.4.4.13 Table 5.9
Enumerator | |
---|---|
XRAN_FFTSIZE_128 | |
XRAN_FFTSIZE_256 | |
XRAN_FFTSIZE_512 | |
XRAN_FFTSIZE_1024 | |
XRAN_FFTSIZE_2048 | |
XRAN_FFTSIZE_4096 | |
XRAN_FFTSIZE_1536 | |
XRAN_FFTSIZE_MAX |
Definition at line 78 of file xran_cp_api.h.
enum xran_cp_filterindex |
Filter index, defined in 5.4.4.3
Definition at line 65 of file xran_cp_api.h.
enum xran_cp_rbindicator |
Resource block indicator, defined in 5.4.5.2
Enumerator | |
---|---|
XRAN_RBIND_EVERY | every RB used |
XRAN_RBIND_EVERYOTHER | every other RB used |
XRAN_RBIND_MAX |
Definition at line 104 of file xran_cp_api.h.
Control Plane section extension commands, defined in 5.4.6 Table 5.13
Definition at line 147 of file xran_cp_api.h.
enum xran_cp_sectiontype |
Control Plane section types, defined in 5.4 Table 5.1
Definition at line 54 of file xran_cp_api.h.
Sub-carrier spacing, defined in 5.4.4.13 Table 5.10
Enumerator | |
---|---|
XRAN_SCS_15KHZ | |
XRAN_SCS_30KHZ | |
XRAN_SCS_60KHZ | |
XRAN_SCS_120KHZ | |
XRAN_SCS_240KHZ | |
XRAN_SCS_1P25KHZ | |
XRAN_SCS_3P75KHZ | |
XRAN_SCS_5KHZ | |
XRAN_SCS_7P5KHZ | |
XRAN_SCS_MAX |
Definition at line 90 of file xran_cp_api.h.
enum xran_cp_symbolnuminc |
Symbol number increment command, defined in 5.4.5.3
Enumerator | |
---|---|
XRAN_SYMBOLNUMBER_NOTINC | do not increment the current symbol number |
XRAN_SYMBOLNUMBER_INC | increment the current symbol number and use that |
XRAN_SYMBOLNUMBER_INC_MAX |
Definition at line 111 of file xran_cp_api.h.
int xran_cp_add_multisection_info | ( | void * | pHandle, |
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id, | ||
struct xran_cp_gen_params * | gen_info | ||
) |
Definition at line 187 of file xran_cp_api.c.
int xran_cp_add_section_info | ( | void * | pHandle, |
uint8_t | dir, | ||
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id, | ||
struct xran_section_info * | info | ||
) |
Add a section information of C-Plane to dabase.
pHandle | handle for xRAN interface, currently not being used |
dir | Direction of C-Plane message for the section to store |
cc_id | CC ID of C-Plane message for the section to store |
ruport_id | RU port ID of C-Plane message for the section to store |
ctx_id | Context index for the section database |
info | The information of this section to store |
Definition at line 160 of file xran_cp_api.c.
struct xran_section_info* xran_cp_find_section_info | ( | void * | pHandle, |
uint8_t | dir, | ||
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id, | ||
uint16_t | section_id | ||
) |
Find a section information of C-Plane from dabase by given information.
pHandle | handle for xRAN interface, currently not being used |
dir | The direction of the section to find |
cc_id | The CC ID of the section to find |
ruport_id | RU port ID of the section to find |
ctx_id | Context index for the section database |
section_id | The ID of section to find |
Definition at line 242 of file xran_cp_api.c.
int xran_cp_free_sectiondb | ( | void * | pHandle | ) |
Release and free section database.
pHandle | handle for xRAN interface, currently not being used |
Definition at line 89 of file xran_cp_api.c.
int xran_cp_getsize_section_info | ( | void * | pHandle, |
uint8_t | dir, | ||
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id | ||
) |
Get the size of stored entries for the database of eAxC by given information.
pHandle | handle for xRAN interface, currently not being used |
dir | The direction of the section to find |
cc_id | The CC ID of the section to find |
ruport_id | RU port ID of the section to find |
ctx_id | Context index for the section database |
Definition at line 334 of file xran_cp_api.c.
int xran_cp_init_sectiondb | ( | void * | pHandle | ) |
Initialize section database. Allocate required memory space to store section information. Each eAxC allocates dedicated storage and the entry size is the maximum number of sections. Total entry size : number of CC * number of antenna * max number of sections * 2(direction)
pHandle | handle for xRAN interface, currently not being used |
Definition at line 66 of file xran_cp_api.c.
struct xran_section_info* xran_cp_iterate_section_info | ( | void * | pHandle, |
uint8_t | dir, | ||
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id, | ||
uint32_t * | next | ||
) |
Iterate each section information of C-Plane from the database of eAxC by given information.
pHandle | handle for xRAN interface, currently not being used |
dir | The direction of the section to find |
cc_id | The CC ID of the section to find |
ruport_id | RU port ID of the section to find |
ctx_id | Context index for the section database |
next | The pointer to store the position of next entry |
Definition at line 291 of file xran_cp_api.c.
int32_t xran_cp_populate_section_ext_1 | ( | int8_t * | p_ext1_dst, |
uint16_t | ext1_dst_len, | ||
int16_t * | p_bfw_iq_src, | ||
uint16_t | rbNumber, | ||
uint16_t | bfwNumber, | ||
uint8_t | bfwiqWidth, | ||
uint8_t | bfwCompMeth | ||
) |
compression method
populate one extType=1 section with BFW for 1 RB
p_ext1_dst | destination buffer |
ext1_dst_len | dest buffer size |
p_bfw_iq_src | source buffer of IQs |
rbNumber | number RBs to ext1 chain |
bfwNumber | number of bf weights in this set of sections |
bfwiqWidth | bit size of IQs |
Definition at line 387 of file xran_cp_api.c.
int xran_cp_reset_section_info | ( | void * | pHandle, |
uint8_t | dir, | ||
uint8_t | cc_id, | ||
uint8_t | ruport_id, | ||
uint8_t | ctx_id | ||
) |
Reset a database of eAxC by given information.
pHandle | handle for xRAN interface, currently not being used |
dir | The direction of the section to find |
cc_id | The CC ID of the section to find |
ruport_id | RU port ID of the section to find |
ctx_id | Context index for the section database |
Definition at line 366 of file xran_cp_api.c.
|
inline |
Definition at line 542 of file xran_cp_api.c.
int32_t xran_get_freqoffset | ( | int | freqOffset, |
int | scs | ||
) |
int xran_parse_cp_pkt | ( | struct rte_mbuf * | mbuf, |
struct xran_cp_gen_params * | result, | ||
struct xran_recv_packet_info * | pkt_info | ||
) |
Parse a C-Plane packet (for RU emulation) Transport layer fragmentation is not supported.
mbuf | The pointer of the packet buffer to be parsed |
params | The pointer of structure to store the information of parsed packet |
eaxc | The pointer of sturcture to store the decomposed information of ecpriRtcid/ecpriPcid |
Definition at line 1749 of file xran_cp_api.c.
int xran_prepare_ctrl_pkt | ( | struct rte_mbuf * | mbuf, |
struct xran_cp_gen_params * | params, | ||
uint8_t | CC_ID, | ||
uint8_t | Ant_ID, | ||
uint8_t | seq_id | ||
) |
Create a C-Plane packet Transport layer fragmentation is not supported.
mbuf | A pointer to the packet buffer |
params | A porinter to the information to generate a C-Plane packet |
CC_ID | Component Carrier ID for this C-Plane message |
Ant_ID | Antenna ID(RU Port ID) for this C-Plane message |
seq_id | Sequence ID for this C-Plane message |
Definition at line 1381 of file xran_cp_api.c.