o-du/phy
Intel O-RAN/X-RAN Generated Doxygen Documentation
xran_up_api.h
Go to the documentation of this file.
1 /******************************************************************************
2 *
3 * Copyright (c) 2019 Intel.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *******************************************************************************/
18 
28 #ifndef _XRAN_UP_API_H_
29 #define _XRAN_UP_API_H_
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 #include <rte_common.h>
36 #include <rte_mbuf.h>
37 
38 #include "xran_pkt.h"
39 #include "xran_pkt_up.h"
40 
41 /*
42  * structure used for storing packet parameters needed for generating
43  * a data packet
44  */
46 {
51 };
52 
53 /*
54  * structure used for storing packet parameters needed for generating
55  * a data packet without compression
56  * Next fields are omitted:
57  * udCompHdr (not always present)
58  * reserved (not always present)
59  * udCompParam (not always present)
60  */
62 {
65 };
66 
75 int32_t xran_extract_iq_samples(struct rte_mbuf *mbuf,
76  void **iq_data_start,
77  uint8_t *CC_ID,
78  uint8_t *Ant_ID,
79  uint8_t *frame_id,
80  uint8_t *subframe_id,
81  uint8_t *slot_id,
82  uint8_t *symb_id,
83  struct ecpri_seq_id *seq_id,
84  uint16_t *num_prbu,
85  uint16_t *start_prbu,
86  uint16_t *sym_inc,
87  uint16_t *rb,
88  uint16_t *sect_id,
89  int8_t expect_comp,
90  uint8_t *compMeth,
91  uint8_t *iqWidth);
92 
94  struct rte_mbuf *mbuf,
95  const void *iq_data_start,
96  const enum xran_input_byte_order iq_buf_byte_order,
97  const uint32_t iq_data_num_bytes,
98  struct xran_up_pkt_gen_params *params,
99  uint8_t CC_ID,
100  uint8_t Ant_ID,
101  uint8_t seq_id,
102  uint32_t do_copy);
103 
104 #ifdef __cplusplus
105 }
106 #endif
107 
108 #endif /* _XRAN_UP_API_H_ */
uint32_t sym_inc
Definition: xran_pkt_up.h:73
uint32_t rb
Definition: xran_pkt_cp.h:243
struct radio_app_common_hdr app_params
Definition: xran_up_api.h:47
uint32_t num_prbu
Definition: xran_pkt_up.h:71
xran_input_byte_order
Definition: xran_fh_o_du.h:471
struct data_section_hdr sec_hdr
Definition: xran_up_api.h:48
union compression_params compr_param
Definition: xran_up_api.h:50
uint32_t start_prbu
Definition: xran_pkt_up.h:72
Definitions and support functions to process XRAN packet.
Definitions and support functions to process XRAN packet.
uint32_t sect_id
Definition: xran_pkt_up.h:75
int32_t xran_extract_iq_samples(struct rte_mbuf *mbuf, void **iq_data_start, uint8_t *CC_ID, uint8_t *Ant_ID, uint8_t *frame_id, uint8_t *subframe_id, uint8_t *slot_id, uint8_t *symb_id, struct 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, uint8_t *compMeth, uint8_t *iqWidth)
Function extracts IQ samples from received mbuf packet.
Definition: xran_up_api.c:327
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_params *params, uint8_t CC_ID, uint8_t Ant_ID, uint8_t seq_id, uint32_t do_copy)
Function for starting preparion of IQ samples portions to be sent in xRAN packet. ...
Definition: xran_up_api.c:455
struct data_section_compression_hdr compr_hdr_param
Definition: xran_up_api.h:49