o-du/phy
Intel O-RAN/X-RAN Generated Doxygen Documentation
Functions | Variables
common.c File Reference
#include <assert.h>
#include <err.h>
#include <arpa/inet.h>
#include <sys/time.h>
#include <time.h>
#include "common.h"
#include "xran_fh_o_du.h"
#include "xran_pkt.h"
#include "xran_pkt_up.h"
#include "xran_cp_api.h"
#include "xran_up_api.h"
#include "xran_mlog_lnx.h"
Include dependency graph for common.c:

Go to the source code of this file.

Functions

uint32_t app_xran_get_tti_interval (uint8_t nMu)
 
uint32_t app_xran_get_scs (uint8_t nMu)
 
uint16_t app_xran_get_num_rbs (uint32_t nNumerology, uint32_t nBandwidth, uint32_t nAbsFrePointA)
 
uint32_t app_xran_cal_nrarfcn (uint32_t nCenterFreq)
 
int32_t app_xran_slot_limit (int32_t nSfIdx)
 
void app_xran_clear_slot_type (uint32_t nPhyInstanceId)
 
int32_t app_xran_set_slot_type (uint32_t nPhyInstanceId, uint32_t nFrameDuplexType, uint32_t nTddPeriod, struct xran_slot_config *psSlotConfig)
 
int32_t app_xran_get_slot_type (int32_t nCellIdx, int32_t nSlotdx, int32_t nType)
 
void sys_save_buf_to_file (char *filename, char *bufname, unsigned char *pBuffer, unsigned int size, unsigned int buffers_num)
 
int sys_load_file_to_buff (char *filename, char *bufname, unsigned char *pBuffer, unsigned int size, unsigned int buffers_num)
 
void sys_save_buf_to_file_txt (char *filename, char *bufname, unsigned char *pBuffer, unsigned int size, unsigned int buffers_num)
 

Variables

enum app_state state
 
int iq_playback_buffer_size_dl = IQ_PLAYBACK_BUFFER_BYTES
 
int iq_playback_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES
 
int iq_bfw_buffer_size_dl = IQ_PLAYBACK_BUFFER_BYTES
 
int iq_bfw_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES
 
int iq_srs_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES
 
uint8_t numCCPorts = 1
 
uint8_t num_eAxc = 4
 
int16_t * p_tx_play_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_play_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_play_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_tx_prach_play_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_prach_play_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_prach_play_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_tx_srs_play_buffer [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int32_t tx_srs_play_buffer_size [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int32_t tx_srs_play_buffer_position [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int16_t * p_rx_log_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_log_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_log_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_prach_log_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t prach_log_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t prach_log_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_srs_log_buffer [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int32_t srs_log_buffer_size [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int32_t srs_log_buffer_position [XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]
 
int16_t * p_tx_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_rx_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_tx_dl_bfw_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_dl_bfw_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_dl_bfw_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_tx_ul_bfw_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_ul_bfw_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t tx_ul_bfw_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_rx_dl_bfw_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_dl_bfw_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_dl_bfw_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
int16_t * p_rx_ul_bfw_buffer [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_ul_bfw_buffer_size [MAX_ANT_CARRIER_SUPPORTED]
 
int32_t rx_ul_bfw_buffer_position [MAX_ANT_CARRIER_SUPPORTED]
 
uint16_t nNumRbsPerSymF1 [3][13]
 
uint16_t nNumRbsPerSymF2 [2][4]
 
uint16_t nSubCarrierSpacing [5]
 
uint16_t nTtiInterval [4]
 
uint16_t nCpSizeF1 [3][13][2]
 
int16_t nCpSizeF2 [2][4][2]
 
uint32_t gMaxSlotNum
 
uint32_t gNumDLCtx
 
uint32_t gNumULCtx
 
uint32_t gDLResetAdvance
 
uint32_t gDLProcAdvance
 
uint32_t gULProcAdvance
 
float g_UlRate [XRAN_MAX_SECTOR_NR] = {0.0}
 
float g_DlRate [XRAN_MAX_SECTOR_NR] = {0.0}
 

Function Documentation

◆ app_xran_cal_nrarfcn()

uint32_t app_xran_cal_nrarfcn ( uint32_t  nCenterFreq)
Parameters
[in]centerfrequency
Returns
NR-ARFCN

This calculates NR-ARFCN value according to center frequency

Definition at line 338 of file common.c.

◆ app_xran_clear_slot_type()

void app_xran_clear_slot_type ( uint32_t  nPhyInstanceId)

Definition at line 386 of file common.c.

◆ app_xran_get_num_rbs()

uint16_t app_xran_get_num_rbs ( uint32_t  nNumerology,
uint32_t  nBandwidth,
uint32_t  nAbsFrePointA 
)
Parameters
[in]nNumerology- Numerology determine sub carrier spacing, Value: 0->4 0: 15khz, 1: 30khz, 2: 60khz 3: 120khz, 4: 240khz
[in]nBandwidth- Carrier bandwidth for in MHz. Value: 5->400
[in]nAbsFrePointA- Abs Freq Point A of the Carrier Center Frequency for in KHz Value: 450000->52600000
Returns
Number of RBs in cell

Returns number of RBs based on 38.101-1 and 38.101-2 for the cell

Definition at line 213 of file common.c.

◆ app_xran_get_scs()

uint32_t app_xran_get_scs ( uint8_t  nMu)

Definition at line 182 of file common.c.

◆ app_xran_get_slot_type()

int32_t app_xran_get_slot_type ( int32_t  nCellIdx,
int32_t  nSlotdx,
int32_t  nType 
)

Definition at line 517 of file common.c.

Here is the call graph for this function:

◆ app_xran_get_tti_interval()

uint32_t app_xran_get_tti_interval ( uint8_t  nMu)

Definition at line 168 of file common.c.

◆ app_xran_set_slot_type()

int32_t app_xran_set_slot_type ( uint32_t  nPhyInstanceId,
uint32_t  nFrameDuplexType,
uint32_t  nTddPeriod,
struct xran_slot_config psSlotConfig 
)

Definition at line 393 of file common.c.

◆ app_xran_slot_limit()

int32_t app_xran_slot_limit ( int32_t  nSfIdx)

Definition at line 373 of file common.c.

Here is the caller graph for this function:

◆ sys_load_file_to_buff()

int sys_load_file_to_buff ( char *  filename,
char *  bufname,
unsigned char *  pBuffer,
unsigned int  size,
unsigned int  buffers_num 
)

Definition at line 584 of file common.c.

Here is the call graph for this function:

◆ sys_save_buf_to_file()

void sys_save_buf_to_file ( char *  filename,
char *  bufname,
unsigned char *  pBuffer,
unsigned int  size,
unsigned int  buffers_num 
)

Definition at line 550 of file common.c.

Here is the call graph for this function:

◆ sys_save_buf_to_file_txt()

void sys_save_buf_to_file_txt ( char *  filename,
char *  bufname,
unsigned char *  pBuffer,
unsigned int  size,
unsigned int  buffers_num 
)

2 * 2 * 2

Definition at line 635 of file common.c.

Here is the call graph for this function:

Variable Documentation

◆ g_DlRate

float g_DlRate[XRAN_MAX_SECTOR_NR] = {0.0}

Definition at line 166 of file common.c.

◆ g_UlRate

float g_UlRate[XRAN_MAX_SECTOR_NR] = {0.0}

Definition at line 165 of file common.c.

◆ gDLProcAdvance

uint32_t gDLProcAdvance

Definition at line 158 of file common.c.

◆ gDLResetAdvance

uint32_t gDLResetAdvance

Definition at line 157 of file common.c.

◆ gMaxSlotNum

uint32_t gMaxSlotNum

Definition at line 154 of file common.c.

◆ gNumDLCtx

uint32_t gNumDLCtx

Definition at line 155 of file common.c.

◆ gNumULCtx

uint32_t gNumULCtx

Definition at line 156 of file common.c.

◆ gULProcAdvance

uint32_t gULProcAdvance

Definition at line 159 of file common.c.

◆ iq_bfw_buffer_size_dl

int iq_bfw_buffer_size_dl = IQ_PLAYBACK_BUFFER_BYTES

Definition at line 39 of file common.c.

◆ iq_bfw_buffer_size_ul

int iq_bfw_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES

Definition at line 40 of file common.c.

◆ iq_playback_buffer_size_dl

int iq_playback_buffer_size_dl = IQ_PLAYBACK_BUFFER_BYTES

Definition at line 36 of file common.c.

◆ iq_playback_buffer_size_ul

int iq_playback_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES

Definition at line 37 of file common.c.

◆ iq_srs_buffer_size_ul

int iq_srs_buffer_size_ul = IQ_PLAYBACK_BUFFER_BYTES

Definition at line 42 of file common.c.

◆ nCpSizeF1

uint16_t nCpSizeF1[3][13][2]
Initial value:
=
{
{{40, 36}, {80, 72}, {120, 108}, {160, 144}, {160, 144}, {240, 216}, {320, 288}, {320, 288}, {0, 0}, {0, 0}, {0, 0}, {0, 0}, {0, 0}},
{{22, 18}, {44, 36}, {66, 54}, {88, 72}, {88, 72}, {132, 108}, {176, 144}, {176, 144}, {264, 216}, {264, 216}, {352, 288}, {352, 288}, {352, 288}},
{ {0, 0}, {26, 18}, {39, 27}, {52, 36}, {52, 36}, {78, 54}, {104, 72}, {104, 72}, {156, 108}, {156, 108}, {208, 144}, {208, 144}, {208, 144}},
}

Definition at line 138 of file common.c.

◆ nCpSizeF2

int16_t nCpSizeF2[2][4][2]
Initial value:
=
{
{ {0, 0}, {104, 72}, {208, 144}, {416, 288}},
{{68, 36}, {136, 72}, {272, 144}, {544, 288}},
}

Definition at line 147 of file common.c.

◆ nNumRbsPerSymF1

uint16_t nNumRbsPerSymF1[3][13]
Initial value:
=
{
{25, 52, 79, 106, 133, 160, 216, 270, 0, 0, 0, 0, 0},
{11, 24, 38, 51, 65, 78, 106, 133, 162, 0, 217, 245, 273},
{0, 11, 18, 24, 31, 38, 51, 65, 79, 0, 107, 121, 135}
}

Definition at line 101 of file common.c.

◆ nNumRbsPerSymF2

uint16_t nNumRbsPerSymF2[2][4]
Initial value:
=
{
{66, 132, 264, 0},
{32, 66, 132, 264}
}

Definition at line 110 of file common.c.

◆ nSubCarrierSpacing

uint16_t nSubCarrierSpacing[5]
Initial value:
=
{
15,
30,
60,
120,
240
}

Definition at line 118 of file common.c.

◆ nTtiInterval

uint16_t nTtiInterval[4]
Initial value:
=
{
1000,
500,
250,
125,
}

Definition at line 128 of file common.c.

◆ num_eAxc

uint8_t num_eAxc = 4

Definition at line 47 of file common.c.

◆ numCCPorts

uint8_t numCCPorts = 1

Definition at line 44 of file common.c.

◆ p_prach_log_buffer

int16_t* p_prach_log_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 66 of file common.c.

◆ p_rx_buffer

int16_t* p_rx_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 77 of file common.c.

◆ p_rx_dl_bfw_buffer

int16_t* p_rx_dl_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 91 of file common.c.

◆ p_rx_log_buffer

int16_t* p_rx_log_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 62 of file common.c.

◆ p_rx_ul_bfw_buffer

int16_t* p_rx_ul_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 96 of file common.c.

◆ p_srs_log_buffer

int16_t* p_srs_log_buffer[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 70 of file common.c.

◆ p_tx_buffer

int16_t* p_tx_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 74 of file common.c.

◆ p_tx_dl_bfw_buffer

int16_t* p_tx_dl_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 81 of file common.c.

◆ p_tx_play_buffer

int16_t* p_tx_play_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 50 of file common.c.

◆ p_tx_prach_play_buffer

int16_t* p_tx_prach_play_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 54 of file common.c.

◆ p_tx_srs_play_buffer

int16_t* p_tx_srs_play_buffer[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 58 of file common.c.

◆ p_tx_ul_bfw_buffer

int16_t* p_tx_ul_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 86 of file common.c.

◆ prach_log_buffer_position

int32_t prach_log_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 68 of file common.c.

◆ prach_log_buffer_size

int32_t prach_log_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 67 of file common.c.

◆ rx_buffer_size

int32_t rx_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 78 of file common.c.

◆ rx_dl_bfw_buffer_position

int32_t rx_dl_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 93 of file common.c.

◆ rx_dl_bfw_buffer_size

int32_t rx_dl_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 92 of file common.c.

◆ rx_log_buffer_position

int32_t rx_log_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 64 of file common.c.

◆ rx_log_buffer_size

int32_t rx_log_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 63 of file common.c.

◆ rx_ul_bfw_buffer_position

int32_t rx_ul_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 98 of file common.c.

◆ rx_ul_bfw_buffer_size

int32_t rx_ul_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 97 of file common.c.

◆ srs_log_buffer_position

int32_t srs_log_buffer_position[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 72 of file common.c.

◆ srs_log_buffer_size

int32_t srs_log_buffer_size[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 71 of file common.c.

◆ state

enum app_state state

Definition at line 62 of file sample-app.c.

◆ tx_buffer_size

int32_t tx_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 75 of file common.c.

◆ tx_dl_bfw_buffer_position

int32_t tx_dl_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 83 of file common.c.

◆ tx_dl_bfw_buffer_size

int32_t tx_dl_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 82 of file common.c.

◆ tx_play_buffer_position

int32_t tx_play_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 52 of file common.c.

◆ tx_play_buffer_size

int32_t tx_play_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 51 of file common.c.

◆ tx_prach_play_buffer_position

int32_t tx_prach_play_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 56 of file common.c.

◆ tx_prach_play_buffer_size

int32_t tx_prach_play_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 55 of file common.c.

◆ tx_srs_play_buffer_position

int32_t tx_srs_play_buffer_position[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 60 of file common.c.

◆ tx_srs_play_buffer_size

int32_t tx_srs_play_buffer_size[XRAN_MAX_SECTOR_NR *XRAN_MAX_ANT_ARRAY_ELM_NR]

Definition at line 59 of file common.c.

◆ tx_ul_bfw_buffer_position

int32_t tx_ul_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 88 of file common.c.

◆ tx_ul_bfw_buffer_size

int32_t tx_ul_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED]

Definition at line 87 of file common.c.