X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=fhi_lib%2Flib%2Fapi%2Fxran_up_api.h;h=7d3afc57f2bded42ef038603c23b30834a18612d;hb=2de97529a4c5a1922214ba0e6f0fb84cacbd0bc7;hp=466576239624346a3b85d040bbdcaad5eb1b0cd5;hpb=4745e5c88ba931c6d71cb6d8c681f76cf364eac5;p=o-du%2Fphy.git diff --git a/fhi_lib/lib/api/xran_up_api.h b/fhi_lib/lib/api/xran_up_api.h index 4665762..7d3afc5 100644 --- a/fhi_lib/lib/api/xran_up_api.h +++ b/fhi_lib/lib/api/xran_up_api.h @@ -1,6 +1,6 @@ /****************************************************************************** * -* Copyright (c) 2019 Intel. +* Copyright (c) 2020 Intel. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,7 +16,6 @@ * *******************************************************************************/ - /** * @brief This file provides the definitions for User Plane Messages APIs. * @@ -29,14 +28,16 @@ #ifndef _XRAN_UP_API_H_ #define _XRAN_UP_API_H_ +#ifdef __cplusplus +extern "C" { +#endif + #include #include #include "xran_pkt.h" #include "xran_pkt_up.h" -#define XRAN_BYTE_ORDER_SWAP - /* * structure used for storing packet parameters needed for generating * a data packet @@ -63,29 +64,6 @@ struct xran_up_pkt_gen_no_compression_params struct data_section_hdr sec_hdr; }; - -/** - * @brief Function that is preparing an mbuf with portion of IQ samples related - * to the single symbol. - * - * @param mbuf Initialized rte_mbuf packet - * @param iq_data_start Address of the first element in IQ data array. - * @param iq_data_num_elements Size of the IQ data array. - * @param iq_data_offset IQ data array's elements already sent. - * @param alignment Align data to this many bytes. - * @param params Structure containing Radio App Header and Data Section Header - * structures. - * @return int Bytes of IQ samples that have been appended to the packet. - */ -int xran_prepare_iq_symbol_portion( - struct rte_mbuf *mbuf, - const void *iq_data_start, - const uint32_t iq_data_num_bytes, - uint32_t *iq_data_offset, - const uint8_t alignment, - struct xran_up_pkt_gen_params *params, - int sub_seq_id); - /** * @brief Function extracts IQ samples from received mbuf packet. * @@ -94,7 +72,7 @@ int xran_prepare_iq_symbol_portion( * here * @return int Bytes of IQ samples that have been extracted from mbuf. */ -int xran_extract_iq_samples(struct rte_mbuf *mbuf, +int32_t xran_extract_iq_samples(struct rte_mbuf *mbuf, void **iq_data_start, uint8_t *CC_ID, uint8_t *Ant_ID, @@ -102,15 +80,31 @@ int xran_extract_iq_samples(struct rte_mbuf *mbuf, uint8_t *subframe_id, uint8_t *slot_id, uint8_t *symb_id, - struct ecpri_seq_id *seq_id); + union ecpri_seq_id *seq_id, + uint16_t *num_prbu, + uint16_t *start_prbu, + uint16_t *sym_inc, + uint16_t *rb, + uint16_t *sect_id, + int8_t expect_comp, + enum xran_comp_hdr_type staticComp, + uint8_t *compMeth, + uint8_t *iqWidth); -int xran_prepare_iq_symbol_portion_no_comp( +inline int xran_prepare_iq_symbol_portion( struct rte_mbuf *mbuf, const void *iq_data_start, + const enum xran_input_byte_order iq_buf_byte_order, const uint32_t iq_data_num_bytes, - struct xran_up_pkt_gen_no_compression_params *params, + struct xran_up_pkt_gen_params *params, uint8_t CC_ID, uint8_t Ant_ID, - uint8_t seq_id); + uint8_t seq_id, + enum xran_comp_hdr_type staticEn, + uint32_t do_copy); + +#ifdef __cplusplus +} +#endif #endif /* _XRAN_UP_API_H_ */