Front Haul Interface Library update to third seed code contribution
[o-du/phy.git] / fhi_lib / app / src / common.h
index 8f9d406..359ba7c 100644 (file)
@@ -16,7 +16,6 @@
 *
 *******************************************************************************/
 
-
 #ifndef _XRAN_APP_COMMON_H_
 #define _XRAN_APP_COMMON_H_
 
@@ -50,12 +49,13 @@ enum nRChBwOptions
 #define N_SC_PER_PRB 12
 #define N_SYM_PER_SLOT 14
 #define MAX_ANT_CARRIER_SUPPORTED (XRAN_MAX_SECTOR_NR*XRAN_MAX_ANTENNA_NR)
+#define MAX_ANT_CARRIER_SUPPORTED_CAT_B (XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR)
 
 #define SUBFRAME_DURATION_US       1000
 //#define SLOTNUM_PER_SUBFRAME       8
 
 #define SUBFRAMES_PER_SYSTEMFRAME  10
-#define IQ_PLAYBACK_BUFFER_BYTES (XRAN_NUM_OF_SLOT_IN_TDD_LOOP*N_SYM_PER_SLOT*66*N_SC_PER_PRB*4L)
+#define IQ_PLAYBACK_BUFFER_BYTES (XRAN_NUM_OF_SLOT_IN_TDD_LOOP*N_SYM_PER_SLOT*XRAN_MAX_PRBS*N_SC_PER_PRB*4L)
 /* PRACH data samples are 32 bits wide, 16bits for I and 16bits for Q. Each packet contains 839 samples for long sequence or 144*14 (max) for short sequence. The payload length is 3356 octets.*/
 #define PRACH_PLAYBACK_BUFFER_BYTES (144*14*4L)
 
@@ -70,6 +70,11 @@ enum nRChBwOptions
 extern int iq_playback_buffer_size_dl;
 extern int iq_playback_buffer_size_ul;
 
+extern int iq_bfw_buffer_size_dl;
+extern int iq_bfw_buffer_size_ul;
+
+extern int iq_srs_buffer_size_ul;
+
 extern uint8_t numCCPorts;
 /* Number of antennas supported by front-end */
 
@@ -83,6 +88,10 @@ extern int16_t *p_tx_prach_play_buffer[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t tx_prach_play_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t tx_prach_play_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
 
+extern int16_t *p_tx_srs_play_buffer[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+extern int32_t tx_srs_play_buffer_size[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+extern int32_t tx_srs_play_buffer_position[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+
 /* Number of antennas supported by front-end */
 extern int16_t *p_rx_log_buffer[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t rx_log_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
@@ -92,12 +101,36 @@ extern int16_t *p_prach_log_buffer[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t prach_log_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t prach_log_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
 
+extern int16_t *p_srs_log_buffer[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+extern int32_t srs_log_buffer_size[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+extern int32_t srs_log_buffer_position[XRAN_MAX_SECTOR_NR*XRAN_MAX_ANT_ARRAY_ELM_NR];
+
 extern int16_t *p_tx_buffer[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t tx_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
 
 extern int16_t *p_rx_buffer[MAX_ANT_CARRIER_SUPPORTED];
 extern int32_t rx_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
 
+/* beamforming weights for UL (O-DU) */
+extern int16_t *p_tx_dl_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t tx_dl_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t tx_dl_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
+
+/* beamforming weights for UL (O-DU) */
+extern int16_t *p_tx_ul_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t tx_ul_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t tx_ul_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
+
+/* beamforming weights for UL (O-RU) */
+extern int16_t *p_rx_dl_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t rx_dl_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t rx_dl_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
+
+/* beamforming weights for UL (O-RU) */
+extern int16_t *p_rx_ul_bfw_buffer[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t rx_ul_bfw_buffer_size[MAX_ANT_CARRIER_SUPPORTED];
+extern int32_t rx_ul_bfw_buffer_position[MAX_ANT_CARRIER_SUPPORTED];
+
 void sys_save_buf_to_file_txt(char *filename, char *bufname, unsigned char *pBuffer, unsigned int size, unsigned int buffers_num);
 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);