add Doxygen documentation
[o-du/phy.git] / docs / API / xran__fh__o__du_8h.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.13"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>o-du/phy: xran_fh_o_du.h File Reference</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="search/search.css" rel="stylesheet" type="text/css"/>
13 <script type="text/javascript" src="search/searchdata.js"></script>
14 <script type="text/javascript" src="search/search.js"></script>
15 <link href="doxygen.css" rel="stylesheet" type="text/css" />
16 </head>
17 <body>
18 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19 <div id="titlearea">
20 <table cellspacing="0" cellpadding="0">
21  <tbody>
22  <tr style="height: 56px;">
23   <td id="projectalign" style="padding-left: 0.5em;">
24    <div id="projectname">o-du/phy
25    </div>
26    <div id="projectbrief">Intel O-RAN/X-RAN Generated Doxygen Documentation</div>
27   </td>
28  </tr>
29  </tbody>
30 </table>
31 </div>
32 <!-- end header part -->
33 <!-- Generated by Doxygen 1.8.13 -->
34 <script type="text/javascript">
35 var searchBox = new SearchBox("searchBox", "search",false,'Search');
36 </script>
37 <script type="text/javascript" src="menudata.js"></script>
38 <script type="text/javascript" src="menu.js"></script>
39 <script type="text/javascript">
40 $(function() {
41   initMenu('',true,false,'search.php','Search');
42   $(document).ready(function() { init_search(); });
43 });
44 </script>
45 <div id="main-nav"></div>
46 <!-- window showing the filter options -->
47 <div id="MSearchSelectWindow"
48      onmouseover="return searchBox.OnSearchSelectShow()"
49      onmouseout="return searchBox.OnSearchSelectHide()"
50      onkeydown="return searchBox.OnSearchSelectKey(event)">
51 </div>
52
53 <!-- iframe showing the search results (closed by default) -->
54 <div id="MSearchResultsWindow">
55 <iframe src="javascript:void(0)" frameborder="0" 
56         name="MSearchResults" id="MSearchResults">
57 </iframe>
58 </div>
59
60 <div id="nav-path" class="navpath">
61   <ul>
62 <li class="navelem"><a class="el" href="dir_a4c74d6baed87eba72f3b201b7b4b8f2.html">fhi_lib</a></li><li class="navelem"><a class="el" href="dir_5cc0cc0264b57168b75ca56bde6cc403.html">lib</a></li><li class="navelem"><a class="el" href="dir_7b477aa413287cfa2199e983b77d66dd.html">api</a></li>  </ul>
63 </div>
64 </div><!-- top -->
65 <div class="header">
66   <div class="summary">
67 <a href="#nested-classes">Data Structures</a> &#124;
68 <a href="#define-members">Macros</a> &#124;
69 <a href="#typedef-members">Typedefs</a> &#124;
70 <a href="#enum-members">Enumerations</a> &#124;
71 <a href="#func-members">Functions</a>  </div>
72   <div class="headertitle">
73 <div class="title">xran_fh_o_du.h File Reference</div>  </div>
74 </div><!--header-->
75 <div class="contents">
76
77 <p>This file provides public interface to xRAN Front Haul layer implementation as defined in the ORAN-WG4.CUS.0-v01.00 spec. Implementation specific to Lower Layer Split Central Unit (O-DU): a logical node that includes the eNB/gNB functions as listed in section 2.1 split option 7-2x, excepting those functions allocated exclusively to the O-RU. The O-DU controls the operation of O-RUs for 5G NR Radio Access technology.  
78 <a href="#details">More...</a></p>
79 <div class="textblock"><code>#include &lt;stdio.h&gt;</code><br />
80 <code>#include &lt;stdlib.h&gt;</code><br />
81 <code>#include &lt;string.h&gt;</code><br />
82 <code>#include &lt;stdint.h&gt;</code><br />
83 <code>#include &lt;inttypes.h&gt;</code><br />
84 <code>#include &lt;sys/types.h&gt;</code><br />
85 <code>#include &lt;sys/queue.h&gt;</code><br />
86 <code>#include &lt;netinet/in.h&gt;</code><br />
87 <code>#include &lt;setjmp.h&gt;</code><br />
88 <code>#include &lt;stdarg.h&gt;</code><br />
89 <code>#include &lt;ctype.h&gt;</code><br />
90 <code>#include &lt;errno.h&gt;</code><br />
91 <code>#include &lt;getopt.h&gt;</code><br />
92 <code>#include &lt;unistd.h&gt;</code><br />
93 </div><div class="textblock"><div class="dynheader">
94 Include dependency graph for xran_fh_o_du.h:</div>
95 <div class="dyncontent">
96 <div class="center"><img src="xran__fh__o__du_8h__incl.png" border="0" usemap="#xran__fh__o__du_8h" alt=""/></div>
97 <map name="xran__fh__o__du_8h" id="xran__fh__o__du_8h">
98 </map>
99 </div>
100 </div><div class="textblock"><div class="dynheader">
101 This graph shows which files directly or indirectly include this file:</div>
102 <div class="dyncontent">
103 <div class="center"><img src="xran__fh__o__du_8h__dep__incl.png" border="0" usemap="#xran__fh__o__du_8hdep" alt=""/></div>
104 <map name="xran__fh__o__du_8hdep" id="xran__fh__o__du_8hdep">
105 <area shape="rect" id="node2" href="common_8h.html" title="common.h" alt="" coords="132,80,215,107"/>
106 <area shape="rect" id="node3" href="common_8c.html" title="common.c" alt="" coords="26,155,108,181"/>
107 <area shape="rect" id="node5" href="sample-app_8c.html" title="sample&#45;app.c" alt="" coords="133,155,233,181"/>
108 <area shape="rect" id="node6" href="config_8h.html" title="config.h" alt="" coords="306,80,374,107"/>
109 <area shape="rect" id="node8" href="xran__cp__api_8h.html" title="This file provides the definitions for Control Plane Messages APIs. " alt="" coords="876,80,978,107"/>
110 <area shape="rect" id="node9" href="xran__app__frag_8h.html" title="Header file for functions to perform application level fragmentation. " alt="" coords="1574,155,1688,181"/>
111 <area shape="rect" id="node11" href="xran__main_8c.html" title="XRAN main functionality module. " alt="" coords="2026,229,2119,256"/>
112 <area shape="rect" id="node12" href="xran__common_8h.html" title="XRAN layer common functionality for both lls&#45;CU and RU as well as C&#45;plane and U&#45;plane. " alt="" coords="1384,155,1499,181"/>
113 <area shape="rect" id="node15" href="xran__timer_8c.html" title="This file provides implementation to Timing for XRAN. " alt="" coords="2597,229,2692,256"/>
114 <area shape="rect" id="node16" href="xran__transport_8c.html" title="This file provides the implementation for Transport lyaer (eCPRI) API. " alt="" coords="688,229,804,256"/>
115 <area shape="rect" id="node18" href="xran__lib__wrap_8hpp.html" title="xran_lib_wrap.hpp" alt="" coords="2144,229,2270,256"/>
116 <area shape="rect" id="node20" href="c__plane__tests_8cc.html" title="c_plane_tests.cc" alt="" coords="1185,304,1306,331"/>
117 <area shape="rect" id="node21" href="chain__tests_8cc.html" title="chain_tests.cc" alt="" coords="1384,304,1491,331"/>
118 <area shape="rect" id="node22" href="init__sys__functional_8cc.html" title="init_sys_functional.cc" alt="" coords="2225,304,2373,331"/>
119 <area shape="rect" id="node23" href="prach__functional_8cc.html" title="prach_functional.cc" alt="" coords="477,229,612,256"/>
120 <area shape="rect" id="node24" href="prach__performance_8cc.html" title="prach_performance.cc" alt="" coords="1057,229,1208,256"/>
121 <area shape="rect" id="node25" href="u__plane__functional_8cc.html" title="u_plane_functional.cc" alt="" coords="1665,229,1813,256"/>
122 <area shape="rect" id="node26" href="u__plane__performance_8cc.html" title="u_plane_performance.cc" alt="" coords="1837,229,2001,256"/>
123 <area shape="rect" id="node27" href="ethdi_8h.html" title="This file has all definitions for the Ethernet Data Interface Layer. " alt="" coords="2699,155,2760,181"/>
124 <area shape="rect" id="node28" href="ethdi_8c.html" title="This file has all definitions for the Ethernet Data Interface Layer. " alt="" coords="2972,229,3034,256"/>
125 <area shape="rect" id="node30" href="xran__frame__struct_8h.html" title="Header file for function to work with 5G NR frame structure and related routines. ..." alt="" coords="2010,155,2148,181"/>
126 <area shape="rect" id="node32" href="xran__up__api_8c.html" title="This file provides the implementation of User Plane Messages APIs. " alt="" coords="3109,80,3212,107"/>
127 <area shape="rect" id="node33" href="compander__functional_8cc.html" title="compander_functional.cc" alt="" coords="3236,80,3402,107"/>
128 <area shape="rect" id="node4" href="config_8c.html" title="config.c" alt="" coords="237,229,305,256"/>
129 <area shape="rect" id="node7" href="debug_8h.html" title="debug.h" alt="" coords="309,155,377,181"/>
130 <area shape="rect" id="node10" href="xran__app__frag_8c.html" title="xRAN application frgamentation for U&#45;plane packets " alt="" coords="1526,229,1640,256"/>
131 <area shape="rect" id="node14" href="xran__cp__api_8c.html" title="This file provides the API functions to build Control Plane Messages for XRAN Front Haul layer as def..." alt="" coords="930,229,1033,256"/>
132 <area shape="rect" id="node13" href="xran__common_8c.html" title="XRAN layer common functionality for both O&#45;DU and O&#45;RU as well as C&#45;plane and U&#45;plane. " alt="" coords="2458,229,2572,256"/>
133 <area shape="rect" id="node17" href="xran__ul__tables_8c.html" title="This file defines those table used in 5G NR spec. " alt="" coords="1283,229,1400,256"/>
134 <area shape="rect" id="node19" href="xranlib__unit__test__main_8cc.html" title="xranlib_unit_test_main.cc" alt="" coords="2030,304,2200,331"/>
135 <area shape="rect" id="node29" href="ethernet_8c.html" title="This file has all definitions for the Ethernet Data Interface Layer. " alt="" coords="2868,229,2948,256"/>
136 <area shape="rect" id="node31" href="xran__frame__struct_8c.html" title="xran_frame_struct.c" alt="" coords="2295,229,2434,256"/>
137 </map>
138 </div>
139 </div>
140 <p><a href="xran__fh__o__du_8h_source.html">Go to the source code of this file.</a></p>
141 <table class="memberdecls">
142 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
143 Data Structures</h2></td></tr>
144 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__cb__tag.html">xran_cb_tag</a></td></tr>
145 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
146 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__io__cfg.html">xran_io_cfg</a></td></tr>
147 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
148 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__eaxcid__config.html">xran_eaxcid_config</a></td></tr>
149 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
150 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__fh__init.html">xran_fh_init</a></td></tr>
151 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
152 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__cp__bf__weight.html">xran_cp_bf_weight</a></td></tr>
153 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
154 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__cp__bf__attribute.html">xran_cp_bf_attribute</a></td></tr>
155 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
156 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__cp__bf__precoding.html">xran_cp_bf_precoding</a></td></tr>
157 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
158 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__section__desc.html">xran_section_desc</a></td></tr>
159 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
160 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__prb__elm.html">xran_prb_elm</a></td></tr>
161 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
162 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__prb__map.html">xran_prb_map</a></td></tr>
163 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
164 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__prach__config.html">xran_prach_config</a></td></tr>
165 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
166 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__srs__config.html">xran_srs_config</a></td></tr>
167 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
168 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__slot__config.html">xran_slot_config</a></td></tr>
169 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
170 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__frame__config.html">xran_frame_config</a></td></tr>
171 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
172 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__ru__config.html">xran_ru_config</a></td></tr>
173 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
174 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__fh__config.html">xran_fh_config</a></td></tr>
175 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
176 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__common__counters.html">xran_common_counters</a></td></tr>
177 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
178 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__flat__buffer.html">xran_flat_buffer</a></td></tr>
179 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
180 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structxran__buffer__list.html">xran_buffer_list</a></td></tr>
181 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
182 </table><table class="memberdecls">
183 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
184 Macros</h2></td></tr>
185 <tr class="memitem:a814959a7b5ff6cd4474433f62312eee0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a814959a7b5ff6cd4474433f62312eee0">XRAN_STATUS_SUCCESS</a>&#160;&#160;&#160;(0)</td></tr>
186 <tr class="separator:a814959a7b5ff6cd4474433f62312eee0"><td class="memSeparator" colspan="2">&#160;</td></tr>
187 <tr class="memitem:a4a957453875309739caacdd651bdab75"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a4a957453875309739caacdd651bdab75">XRAN_STATUS_FAIL</a>&#160;&#160;&#160;(-1)</td></tr>
188 <tr class="separator:a4a957453875309739caacdd651bdab75"><td class="memSeparator" colspan="2">&#160;</td></tr>
189 <tr class="memitem:a746b130d3c5db158af75c32c240183fc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a746b130d3c5db158af75c32c240183fc">XRAN_STATUS_RETRY</a>&#160;&#160;&#160;(-2)</td></tr>
190 <tr class="separator:a746b130d3c5db158af75c32c240183fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
191 <tr class="memitem:a341e6485fd9de350805503e938f90708"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a341e6485fd9de350805503e938f90708">XRAN_STATUS_RESOURCE</a>&#160;&#160;&#160;(-3)</td></tr>
192 <tr class="separator:a341e6485fd9de350805503e938f90708"><td class="memSeparator" colspan="2">&#160;</td></tr>
193 <tr class="memitem:aad8a35383b986f4ca80437468b6c625f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aad8a35383b986f4ca80437468b6c625f">XRAN_STATUS_INVALID_PARAM</a>&#160;&#160;&#160;(-4)</td></tr>
194 <tr class="separator:aad8a35383b986f4ca80437468b6c625f"><td class="memSeparator" colspan="2">&#160;</td></tr>
195 <tr class="memitem:ace75e6583c9238fc2f957c3cc9b92ec4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ace75e6583c9238fc2f957c3cc9b92ec4">XRAN_STATUS_FATAL</a>&#160;&#160;&#160;(-5)</td></tr>
196 <tr class="separator:ace75e6583c9238fc2f957c3cc9b92ec4"><td class="memSeparator" colspan="2">&#160;</td></tr>
197 <tr class="memitem:a45590c7e932d3d78451dd72d2cbf5454"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a45590c7e932d3d78451dd72d2cbf5454">XRAN_STATUS_UNSUPPORTED</a>&#160;&#160;&#160;(-6)</td></tr>
198 <tr class="separator:a45590c7e932d3d78451dd72d2cbf5454"><td class="memSeparator" colspan="2">&#160;</td></tr>
199 <tr class="memitem:a6602a966370956b35631e68698539cac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a6602a966370956b35631e68698539cac">XRAN_STATUS_INVALID_PACKET</a>&#160;&#160;&#160;(-7)</td></tr>
200 <tr class="separator:a6602a966370956b35631e68698539cac"><td class="memSeparator" colspan="2">&#160;</td></tr>
201 <tr class="memitem:aa76014e778bb54907d85e05cac204d71"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aa76014e778bb54907d85e05cac204d71">XranGetTtiNum</a>(symIdx,  numSymPerTti)&#160;&#160;&#160;(((uint32_t)symIdx / (uint32_t)numSymPerTti))</td></tr>
202 <tr class="separator:aa76014e778bb54907d85e05cac204d71"><td class="memSeparator" colspan="2">&#160;</td></tr>
203 <tr class="memitem:a605ecc3c0ad6066e39465a108b873373"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a605ecc3c0ad6066e39465a108b873373">XranGetSymNum</a>(symIdx,  numSymPerTti)&#160;&#160;&#160;(((uint32_t)symIdx % (uint32_t)numSymPerTti))</td></tr>
204 <tr class="separator:a605ecc3c0ad6066e39465a108b873373"><td class="memSeparator" colspan="2">&#160;</td></tr>
205 <tr class="memitem:a5a8a3a7c7c4ff43865b57971dfbf0aa6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a5a8a3a7c7c4ff43865b57971dfbf0aa6">XranGetFrameNum</a>(tti,  SFNatSecStart,  numSubFramePerSystemFrame,  numSlotPerSubFrame)&#160;&#160;&#160;((((uint32_t)tti / ((uint32_t)numSubFramePerSystemFrame * (uint32_t)numSlotPerSubFrame)) + SFNatSecStart) &amp; 0x3FF)</td></tr>
206 <tr class="separator:a5a8a3a7c7c4ff43865b57971dfbf0aa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
207 <tr class="memitem:a5ca2a2076a042acdca2e326a436a7882"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a5ca2a2076a042acdca2e326a436a7882">XranGetSubFrameNum</a>(tti,  numSlotPerSubFrame,  numSubFramePerSystemFrame)&#160;&#160;&#160;(((uint32_t)tti/(uint32_t)numSlotPerSubFrame) % (uint32_t)numSubFramePerSystemFrame)</td></tr>
208 <tr class="separator:a5ca2a2076a042acdca2e326a436a7882"><td class="memSeparator" colspan="2">&#160;</td></tr>
209 <tr class="memitem:a36c7ae37e30524321b18fde971372b92"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a36c7ae37e30524321b18fde971372b92">XranGetSlotNum</a>(tti,  numSlotPerSfn)&#160;&#160;&#160;((uint32_t)tti % ((uint32_t)numSlotPerSfn))</td></tr>
210 <tr class="separator:a36c7ae37e30524321b18fde971372b92"><td class="memSeparator" colspan="2">&#160;</td></tr>
211 <tr class="memitem:ac1e23b437693cb93f1ddd5a74f97cab4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac1e23b437693cb93f1ddd5a74f97cab4">XRAN_PORTS_NUM</a>&#160;&#160;&#160;(1)</td></tr>
212 <tr class="separator:ac1e23b437693cb93f1ddd5a74f97cab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
213 <tr class="memitem:af0963ba32cc8ecd280afd2e474eb426a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>&#160;&#160;&#160;(40)</td></tr>
214 <tr class="separator:af0963ba32cc8ecd280afd2e474eb426a"><td class="memSeparator" colspan="2">&#160;</td></tr>
215 <tr class="memitem:a34dbe5e515cc78b4ce26fa287e6c1edc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>&#160;&#160;&#160;(12)</td></tr>
216 <tr class="separator:a34dbe5e515cc78b4ce26fa287e6c1edc"><td class="memSeparator" colspan="2">&#160;</td></tr>
217 <tr class="memitem:a35fa05e7523928c0c86cbcf835c12dc5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>&#160;&#160;&#160;(16)</td></tr>
218 <tr class="separator:a35fa05e7523928c0c86cbcf835c12dc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
219 <tr class="memitem:a42f4a51ad2109eb30e8cbefcde747e92"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a42f4a51ad2109eb30e8cbefcde747e92">XRAN_MAX_PANEL_NR</a>&#160;&#160;&#160;(1)</td></tr>
220 <tr class="separator:a42f4a51ad2109eb30e8cbefcde747e92"><td class="memSeparator" colspan="2">&#160;</td></tr>
221 <tr class="memitem:a78d58409e31b11cd5b3512f52c6556ac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a78d58409e31b11cd5b3512f52c6556ac">XRAN_MAX_TRX_ANTENNA_ARRAY</a>&#160;&#160;&#160;(1)</td></tr>
222 <tr class="separator:a78d58409e31b11cd5b3512f52c6556ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
223 <tr class="memitem:af3e0ced3530652b3c92220c8783b55fa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#af3e0ced3530652b3c92220c8783b55fa">XRAN_MAX_ANT_ARRAY_ELM_NR</a>&#160;&#160;&#160;(64)</td></tr>
224 <tr class="separator:af3e0ced3530652b3c92220c8783b55fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
225 <tr class="memitem:a87d92ec177ed9c388685a91051f66205"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a87d92ec177ed9c388685a91051f66205">XRAN_NUM_OF_SYMBOL_PER_SLOT</a>&#160;&#160;&#160;(14)</td></tr>
226 <tr class="separator:a87d92ec177ed9c388685a91051f66205"><td class="memSeparator" colspan="2">&#160;</td></tr>
227 <tr class="memitem:a6a9b0521b0d67ed1e761047b2a929422"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a6a9b0521b0d67ed1e761047b2a929422">XRAN_MAX_NUM_OF_SRS_SYMBOL_PER_SLOT</a>&#160;&#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#a87d92ec177ed9c388685a91051f66205">XRAN_NUM_OF_SYMBOL_PER_SLOT</a></td></tr>
228 <tr class="separator:a6a9b0521b0d67ed1e761047b2a929422"><td class="memSeparator" colspan="2">&#160;</td></tr>
229 <tr class="memitem:aba79881ec9b30850184b4f5f6b0afc39"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aba79881ec9b30850184b4f5f6b0afc39">XRAN_MAX_TDD_PERIODICITY</a>&#160;&#160;&#160;(80)</td></tr>
230 <tr class="separator:aba79881ec9b30850184b4f5f6b0afc39"><td class="memSeparator" colspan="2">&#160;</td></tr>
231 <tr class="memitem:a6447bf8849000b9fecf51d77d4fa50b2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a6447bf8849000b9fecf51d77d4fa50b2">XRAN_MAX_CELLS_PER_PORT</a>&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>)</td></tr>
232 <tr class="separator:a6447bf8849000b9fecf51d77d4fa50b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
233 <tr class="memitem:ad366e06c49d56ecfe336917a71236554"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad366e06c49d56ecfe336917a71236554">XRAN_COMPONENT_CARRIERS_MAX</a>&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>)</td></tr>
234 <tr class="separator:ad366e06c49d56ecfe336917a71236554"><td class="memSeparator" colspan="2">&#160;</td></tr>
235 <tr class="memitem:a93482eb351961fb07e09d913701dd033"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a93482eb351961fb07e09d913701dd033">XRAN_NUM_OF_ANT_RADIO</a>&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>*<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>)</td></tr>
236 <tr class="separator:a93482eb351961fb07e09d913701dd033"><td class="memSeparator" colspan="2">&#160;</td></tr>
237 <tr class="memitem:a9435009d03a49d495b2b608129c64b61"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a9435009d03a49d495b2b608129c64b61">XRAN_MAX_PRBS</a>&#160;&#160;&#160;(275)</td></tr>
238 <tr class="separator:a9435009d03a49d495b2b608129c64b61"><td class="memSeparator" colspan="2">&#160;</td></tr>
239 <tr class="memitem:aa099ceebb1479cddef1ee64f5c311973"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aa099ceebb1479cddef1ee64f5c311973">XRAN_MAX_SECTIONS_PER_SYM</a>&#160;&#160;&#160;(16)</td></tr>
240 <tr class="separator:aa099ceebb1479cddef1ee64f5c311973"><td class="memSeparator" colspan="2">&#160;</td></tr>
241 <tr class="memitem:a5a579cae10a206d64b2810a7df8a66f6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a5a579cae10a206d64b2810a7df8a66f6">XRAN_MAX_PKT_BURST</a>&#160;&#160;&#160;(448+4)</td></tr>
242 <tr class="separator:a5a579cae10a206d64b2810a7df8a66f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
243 <tr class="memitem:ad1cc410c971930e1972f329c5130c886"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad1cc410c971930e1972f329c5130c886">XRAN_N_MAX_BUFFER_SEGMENT</a>&#160;&#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#a5a579cae10a206d64b2810a7df8a66f6">XRAN_MAX_PKT_BURST</a></td></tr>
244 <tr class="separator:ad1cc410c971930e1972f329c5130c886"><td class="memSeparator" colspan="2">&#160;</td></tr>
245 <tr class="memitem:ac1cd6517de77baee725c67b3e5bd417c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac1cd6517de77baee725c67b3e5bd417c">XRAN_STRICT_PARM_CHECK</a>&#160;&#160;&#160;(1)</td></tr>
246 <tr class="separator:ac1cd6517de77baee725c67b3e5bd417c"><td class="memSeparator" colspan="2">&#160;</td></tr>
247 <tr class="memitem:a81efa76a214d1fd1b9b409bdea15c87c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a81efa76a214d1fd1b9b409bdea15c87c">XRAN_SLOT_TYPE_INVALID</a>&#160;&#160;&#160;(0)</td></tr>
248 <tr class="separator:a81efa76a214d1fd1b9b409bdea15c87c"><td class="memSeparator" colspan="2">&#160;</td></tr>
249 <tr class="memitem:a3640d50cafb5ccc15b73219309f60a3b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a3640d50cafb5ccc15b73219309f60a3b">XRAN_SLOT_TYPE_DL</a>&#160;&#160;&#160;(1)</td></tr>
250 <tr class="separator:a3640d50cafb5ccc15b73219309f60a3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
251 <tr class="memitem:a3167443dbf786f9b87a133119a8f69e8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a3167443dbf786f9b87a133119a8f69e8">XRAN_SLOT_TYPE_UL</a>&#160;&#160;&#160;(2)</td></tr>
252 <tr class="separator:a3167443dbf786f9b87a133119a8f69e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
253 <tr class="memitem:a37ddab95bdd53de1ee17a3607a183eae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a37ddab95bdd53de1ee17a3607a183eae">XRAN_SLOT_TYPE_SP</a>&#160;&#160;&#160;(3)</td></tr>
254 <tr class="separator:a37ddab95bdd53de1ee17a3607a183eae"><td class="memSeparator" colspan="2">&#160;</td></tr>
255 <tr class="memitem:ad997c19049d5e80611e4360b1ed79b80"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad997c19049d5e80611e4360b1ed79b80">XRAN_SLOT_TYPE_FDD</a>&#160;&#160;&#160;(4)</td></tr>
256 <tr class="separator:ad997c19049d5e80611e4360b1ed79b80"><td class="memSeparator" colspan="2">&#160;</td></tr>
257 <tr class="memitem:a581b66d2fea333f0a2e9ca3f9589fd89"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a581b66d2fea333f0a2e9ca3f9589fd89">XRAN_SLOT_TYPE_LAST</a>&#160;&#160;&#160;(5)</td></tr>
258 <tr class="separator:a581b66d2fea333f0a2e9ca3f9589fd89"><td class="memSeparator" colspan="2">&#160;</td></tr>
259 <tr class="memitem:aa7db41b67e2cd3be904b7332d8df6657"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aa7db41b67e2cd3be904b7332d8df6657">XRAN_SYMBOL_TYPE_DL</a>&#160;&#160;&#160;(0)</td></tr>
260 <tr class="separator:aa7db41b67e2cd3be904b7332d8df6657"><td class="memSeparator" colspan="2">&#160;</td></tr>
261 <tr class="memitem:a78bce62effeb80d1e2bda74c6ee3d5f4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a78bce62effeb80d1e2bda74c6ee3d5f4">XRAN_SYMBOL_TYPE_UL</a>&#160;&#160;&#160;(1)</td></tr>
262 <tr class="separator:a78bce62effeb80d1e2bda74c6ee3d5f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
263 <tr class="memitem:a0e0df6a907cf2724cf3e531d7f18fb3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a0e0df6a907cf2724cf3e531d7f18fb3c">XRAN_SYMBOL_TYPE_GUARD</a>&#160;&#160;&#160;(2)</td></tr>
264 <tr class="separator:a0e0df6a907cf2724cf3e531d7f18fb3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
265 <tr class="memitem:ac7915d813606499af39f5e952391fded"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac7915d813606499af39f5e952391fded">XRAN_SYMBOL_TYPE_FDD</a>&#160;&#160;&#160;(3)</td></tr>
266 <tr class="separator:ac7915d813606499af39f5e952391fded"><td class="memSeparator" colspan="2">&#160;</td></tr>
267 <tr class="memitem:acd3869dff9738650c847e456c6ab21ae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#acd3869dff9738650c847e456c6ab21ae">XRAN_NUM_OF_SLOT_IN_TDD_LOOP</a>&#160;&#160;&#160;(80)</td></tr>
268 <tr class="separator:acd3869dff9738650c847e456c6ab21ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
269 <tr class="memitem:adb623b32cb8644414383af3de60433d8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#adb623b32cb8644414383af3de60433d8">xran_log_dbg</a>(fmt, ...)</td></tr>
270 <tr class="separator:adb623b32cb8644414383af3de60433d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
271 <tr class="memitem:adb623b32cb8644414383af3de60433d8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#adb623b32cb8644414383af3de60433d8">xran_log_dbg</a>(fmt, ...)</td></tr>
272 <tr class="separator:adb623b32cb8644414383af3de60433d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
273 <tr class="memitem:a8f97ad3d53e73a2807e3b2cf097e267a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a8f97ad3d53e73a2807e3b2cf097e267a">xran_log_wrn</a>(fmt, ...)</td></tr>
274 <tr class="separator:a8f97ad3d53e73a2807e3b2cf097e267a"><td class="memSeparator" colspan="2">&#160;</td></tr>
275 <tr class="memitem:a02b163e2e7f90f2c7941fdcb19ebcb3e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a02b163e2e7f90f2c7941fdcb19ebcb3e">xran_log_err</a>(fmt, ...)</td></tr>
276 <tr class="separator:a02b163e2e7f90f2c7941fdcb19ebcb3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
277 </table><table class="memberdecls">
278 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
279 Typedefs</h2></td></tr>
280 <tr class="memitem:aa3ceca070f84e316e0e2f6002419d572"><td class="memItemLeft" align="right" valign="top">typedef int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aa3ceca070f84e316e0e2f6002419d572">xran_status_t</a></td></tr>
281 <tr class="separator:aa3ceca070f84e316e0e2f6002419d572"><td class="memSeparator" colspan="2">&#160;</td></tr>
282 <tr class="memitem:ad2e55b4fa82ed8c7f00e083b0406c6c8"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad2e55b4fa82ed8c7f00e083b0406c6c8">xran_callback_sym_fn</a>) (void *)</td></tr>
283 <tr class="separator:ad2e55b4fa82ed8c7f00e083b0406c6c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
284 <tr class="memitem:af48a00f171ef7a017fddd2a29f9854d0"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#af48a00f171ef7a017fddd2a29f9854d0">xran_fh_tti_callback_fn</a>) (void *)</td></tr>
285 <tr class="separator:af48a00f171ef7a017fddd2a29f9854d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
286 <tr class="memitem:ad52207145e383ae136995f5a2b7dd82d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a>) (void *, <a class="el" href="xran__fh__o__du_8h.html#aa3ceca070f84e316e0e2f6002419d572">xran_status_t</a>)</td></tr>
287 <tr class="separator:ad52207145e383ae136995f5a2b7dd82d"><td class="memSeparator" colspan="2">&#160;</td></tr>
288 <tr class="memitem:adce425900af03693ff55da9deb17a679"><td class="memItemLeft" align="right" valign="top">typedef int16_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#adce425900af03693ff55da9deb17a679">phy_encoder_poll_fn</a>) (void)</td></tr>
289 <tr class="separator:adce425900af03693ff55da9deb17a679"><td class="memSeparator" colspan="2">&#160;</td></tr>
290 <tr class="memitem:a2c1d5f131c5a23d8339f1babb3b22ade"><td class="memItemLeft" align="right" valign="top">typedef int16_t(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a2c1d5f131c5a23d8339f1babb3b22ade">phy_decoder_poll_fn</a>) (void)</td></tr>
291 <tr class="separator:a2c1d5f131c5a23d8339f1babb3b22ade"><td class="memSeparator" colspan="2">&#160;</td></tr>
292 <tr class="memitem:afe623da85d4542bce592f333046e2c81"><td class="memItemLeft" align="right" valign="top">typedef void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#afe623da85d4542bce592f333046e2c81">xran_cc_handle_t</a></td></tr>
293 <tr class="separator:afe623da85d4542bce592f333046e2c81"><td class="memSeparator" colspan="2">&#160;</td></tr>
294 </table><table class="memberdecls">
295 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
296 Enumerations</h2></td></tr>
297 <tr class="memitem:a1784f85d62401cba0ffb49c4d2467aae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a1784f85d62401cba0ffb49c4d2467aae">XranFrameDuplexType</a> { <a class="el" href="xran__fh__o__du_8h.html#a1784f85d62401cba0ffb49c4d2467aaea852ad6bfdec7d14a64425c01c16d00c0">XRAN_FDD</a> = 0, 
298 <a class="el" href="xran__fh__o__du_8h.html#a1784f85d62401cba0ffb49c4d2467aaeaf54a8e4c1661f320606100a7f5bc0d08">XRAN_TDD</a>
299  }</td></tr>
300 <tr class="separator:a1784f85d62401cba0ffb49c4d2467aae"><td class="memSeparator" colspan="2">&#160;</td></tr>
301 <tr class="memitem:a2f600110ab5726a0f21375b7f24c0326"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326">xran_if_state</a> { <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326a4b6bcf9a51e104e19a5fa2d859a63080">XRAN_INIT</a> = 0, 
302 <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326a35916b54fc6804c2f2dc1f5891f3047e">XRAN_RUNNING</a>, 
303 <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326a57a68dd3f4413f7cc255838c4442938c">XRAN_STOPPED</a>
304  }</td></tr>
305 <tr class="separator:a2f600110ab5726a0f21375b7f24c0326"><td class="memSeparator" colspan="2">&#160;</td></tr>
306 <tr class="memitem:afc082593977ad91f3dcdd2175cb74615"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615">xran_compression_method</a> { <br />
307 &#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615a7fbf705170e00d2ce3e838fa9826ca8d">XRAN_COMPMETHOD_NONE</a> = 0, 
308 <a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615a91815a9c09cf9e8bc646b51efef13c28">XRAN_COMPMETHOD_BLKFLOAT</a> = 1, 
309 <a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615abb1f75bf59f6240e8bb007f1baca8b76">XRAN_COMPMETHOD_BLKSCALE</a> = 2, 
310 <a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615a1b9e420d95dba65260f772a83acdf713">XRAN_COMPMETHOD_ULAW</a> = 3, 
311 <br />
312 &#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615a9f74b93c96dd056e192cbe2295d0e33c">XRAN_COMPMETHOD_MODULATION</a> = 4, 
313 <a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615a52b87e9b516e0c85522a8c2cd21b4fae">XRAN_COMPMETHOD_MAX</a>
314 <br />
315  }</td></tr>
316 <tr class="separator:afc082593977ad91f3dcdd2175cb74615"><td class="memSeparator" colspan="2">&#160;</td></tr>
317 <tr class="memitem:a8eb67099ddcb1b5877a494edfd450d24"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24">callback_to_phy_id</a> { <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24ae2863e9abb188c74c5e36966396988e3">XRAN_CB_TTI</a> = 0, 
318 <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24a75d1b6240b461efda58c8e06e8e9f6d2">XRAN_CB_HALF_SLOT_RX</a> =1, 
319 <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24a1e3bbfc0078205779b22c99889f927af">XRAN_CB_FULL_SLOT_RX</a> =2, 
320 <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24ae94002de5bb212ba3d5d0d761ab8149d">XRAN_CB_MAX</a>
321  }</td></tr>
322 <tr class="separator:a8eb67099ddcb1b5877a494edfd450d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
323 <tr class="memitem:a80cd33d519d5b1993e2a1de8b78b3059"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059">xran_weight_based_beamforming_type</a> { <a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059a459884d8e31ccd918c52f051b1b870d3">XRAN_BF_T_FREQUENCY</a> = 0, 
324 <a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059aa2fb4539eb367f9d2c8f3392a5558f1d">XRAN_BF_T_TIME</a> = 1, 
325 <a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059abdddd2bf1b12f6fe676edd6a56284ceb">XRAN_BF_T_HYBRID</a> = 2, 
326 <a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059a3173fbcf6585cebb8a2e1959d908a003">XRAN_BF_T_MAX</a>
327  }</td></tr>
328 <tr class="separator:a80cd33d519d5b1993e2a1de8b78b3059"><td class="memSeparator" colspan="2">&#160;</td></tr>
329 <tr class="memitem:a185d8ae20c697568878935f0a260227a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a185d8ae20c697568878935f0a260227a">xran_vf_ports</a> { <a class="el" href="xran__fh__o__du_8h.html#a185d8ae20c697568878935f0a260227aafe31ae20f49aa6ca5a568bfdc89f69ab">XRAN_UP_VF</a> = 0, 
330 <a class="el" href="xran__fh__o__du_8h.html#a185d8ae20c697568878935f0a260227aabadad61426458852f6c89f1a74b03c1a">XRAN_CP_VF</a>, 
331 <a class="el" href="xran__fh__o__du_8h.html#a185d8ae20c697568878935f0a260227aaacf0b73353fef317536c389fcccde6ac">XRAN_VF_MAX</a>
332  }</td></tr>
333 <tr class="separator:a185d8ae20c697568878935f0a260227a"><td class="memSeparator" colspan="2">&#160;</td></tr>
334 <tr class="memitem:abf0211a253f5881ebad3910cef98d30e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#abf0211a253f5881ebad3910cef98d30e">xran_category</a> { <a class="el" href="xran__fh__o__du_8h.html#abf0211a253f5881ebad3910cef98d30ea25cae7703b653209b61647fa65ac7e9f">XRAN_CATEGORY_A</a> = 0, 
335 <a class="el" href="xran__fh__o__du_8h.html#abf0211a253f5881ebad3910cef98d30ea6f7ea23328e0189a3c4879d7fa0d3749">XRAN_CATEGORY_B</a> = 1, 
336 <a class="el" href="xran__fh__o__du_8h.html#abf0211a253f5881ebad3910cef98d30ea9d20ba705f8c8fa5fca2ac5dfb10c561">XRAN_CATEGORY_MAX</a>
337  }</td></tr>
338 <tr class="separator:abf0211a253f5881ebad3910cef98d30e"><td class="memSeparator" colspan="2">&#160;</td></tr>
339 <tr class="memitem:ab78adb73387ef66b18318c2425be2f27"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ab78adb73387ef66b18318c2425be2f27">xran_beamforming_type</a> { <a class="el" href="xran__fh__o__du_8h.html#ab78adb73387ef66b18318c2425be2f27a28eb3e91604ef0f752bef0c98e48a21f">XRAN_BEAM_ID_BASED</a> = 0, 
340 <a class="el" href="xran__fh__o__du_8h.html#ab78adb73387ef66b18318c2425be2f27ac65119b19d6f3b1195050fb56529e02a">XRAN_BEAM_WEIGHT</a>, 
341 <a class="el" href="xran__fh__o__du_8h.html#ab78adb73387ef66b18318c2425be2f27a04381c94022b91dd4d93c039dd2f87cd">XRAN_BEAM_ATTRIBUTE</a>
342  }</td></tr>
343 <tr class="separator:ab78adb73387ef66b18318c2425be2f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
344 <tr class="memitem:a4c62e469317040d695487f294cf9e0ba"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0ba">xran_bbdev_init</a> { <a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0baaedc9957e395dca8c38c07377885b5339">XRAN_BBDEV_NOT_USED</a> = -1, 
345 <a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0baab0a570cb95560770482680552b5dc5d0">XRAN_BBDEV_MODE_HW_OFF</a> = 0, 
346 <a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0baa444621cf5453a912cc492b1bf62c0d39">XRAN_BBDEV_MODE_HW_ON</a> = 1, 
347 <a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0baadcefd86b1065c7105f59941e8c589f09">XRAN_BBDEV_MODE_MAX</a>
348  }</td></tr>
349 <tr class="separator:a4c62e469317040d695487f294cf9e0ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
350 <tr class="memitem:ab5ce6839bae2968c79930a0bfa17f4d8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ab5ce6839bae2968c79930a0bfa17f4d8">xran_input_byte_order</a> { <a class="el" href="xran__fh__o__du_8h.html#ab5ce6839bae2968c79930a0bfa17f4d8a61bd03fd3153385f6791bd16e55892b8">XRAN_NE_BE_BYTE_ORDER</a> = 0, 
351 <a class="el" href="xran__fh__o__du_8h.html#ab5ce6839bae2968c79930a0bfa17f4d8ae0b667dc04b0baacb15bc9c40b776098">XRAN_CPU_LE_BYTE_ORDER</a>
352  }</td></tr>
353 <tr class="separator:ab5ce6839bae2968c79930a0bfa17f4d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
354 <tr class="memitem:a0d9cb4cebbc59a8fa5bfef7547898859"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a0d9cb4cebbc59a8fa5bfef7547898859">xran_input_i_q_order</a> { <a class="el" href="xran__fh__o__du_8h.html#a0d9cb4cebbc59a8fa5bfef7547898859a0064217ac0728d6ac2d4f92d95db0d21">XRAN_I_Q_ORDER</a> = 0, 
355 <a class="el" href="xran__fh__o__du_8h.html#a0d9cb4cebbc59a8fa5bfef7547898859affc94d5062a9df002a08262d843fc2f3">XRAN_Q_I_ORDER</a>
356  }</td></tr>
357 <tr class="separator:a0d9cb4cebbc59a8fa5bfef7547898859"><td class="memSeparator" colspan="2">&#160;</td></tr>
358 </table><table class="memberdecls">
359 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
360 Functions</h2></td></tr>
361 <tr class="memitem:a3efe8aba779b0a2f90adc02065579f5f"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a3efe8aba779b0a2f90adc02065579f5f">xran_init</a> (int argc, char *argv[], struct <a class="el" href="structxran__fh__init.html">xran_fh_init</a> *p_xran_fh_init, char *appName, void **pHandle)</td></tr>
362 <tr class="separator:a3efe8aba779b0a2f90adc02065579f5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
363 <tr class="memitem:adf5ead6a9f90b5d524e8012521d64bb5"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#adf5ead6a9f90b5d524e8012521d64bb5">xran_sector_get_instances</a> (void *pHandle, uint16_t nNumInstances, <a class="el" href="xran__fh__o__du_8h.html#afe623da85d4542bce592f333046e2c81">xran_cc_handle_t</a> *pSectorInstanceHandles)</td></tr>
364 <tr class="separator:adf5ead6a9f90b5d524e8012521d64bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
365 <tr class="memitem:a999189549fd6b524b733ddd61f1f9962"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a999189549fd6b524b733ddd61f1f9962">xran_mm_init</a> (void *pHandle, uint64_t nMemorySize, uint32_t nMemorySegmentSize)</td></tr>
366 <tr class="separator:a999189549fd6b524b733ddd61f1f9962"><td class="memSeparator" colspan="2">&#160;</td></tr>
367 <tr class="memitem:a39a9f7b5d01979eb1f8d806d6b9c50fe"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a39a9f7b5d01979eb1f8d806d6b9c50fe">xran_bm_init</a> (void *pHandle, uint32_t *pPoolIndex, uint32_t nNumberOfBuffers, uint32_t nBufferSize)</td></tr>
368 <tr class="separator:a39a9f7b5d01979eb1f8d806d6b9c50fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
369 <tr class="memitem:ae79ca138dc77d69ef692886be4e5da81"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ae79ca138dc77d69ef692886be4e5da81">xran_bm_allocate_buffer</a> (void *pHandle, uint32_t nPoolIndex, void **ppData, void **ppCtrl)</td></tr>
370 <tr class="separator:ae79ca138dc77d69ef692886be4e5da81"><td class="memSeparator" colspan="2">&#160;</td></tr>
371 <tr class="memitem:a0f904fe772b55bcfc449759a23063aa3"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a0f904fe772b55bcfc449759a23063aa3">xran_bm_free_buffer</a> (void *pHandle, void *pData, void *pCtrl)</td></tr>
372 <tr class="separator:a0f904fe772b55bcfc449759a23063aa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
373 <tr class="memitem:a4120602c15ddabfc3372e238d17f0414"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a4120602c15ddabfc3372e238d17f0414">xran_mm_destroy</a> (void *pHandle)</td></tr>
374 <tr class="separator:a4120602c15ddabfc3372e238d17f0414"><td class="memSeparator" colspan="2">&#160;</td></tr>
375 <tr class="memitem:ac94e2474beef3b68521cfd391211b1be"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac94e2474beef3b68521cfd391211b1be">xran_5g_fronthault_config</a> (void *pHandle, struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pSrcBuffer[<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pSrcCpBuffer[<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pDstBuffer[<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pDstCpBuffer[<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], <a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a> pCallback, void *pCallbackTag)</td></tr>
376 <tr class="separator:ac94e2474beef3b68521cfd391211b1be"><td class="memSeparator" colspan="2">&#160;</td></tr>
377 <tr class="memitem:ab204e979de14c21d34e9b88c6c700d25"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ab204e979de14c21d34e9b88c6c700d25">xran_5g_prach_req</a> (void *pHandle, struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pDstBuffer[<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], <a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a> pCallback, void *pCallbackTag)</td></tr>
378 <tr class="separator:ab204e979de14c21d34e9b88c6c700d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
379 <tr class="memitem:a2bd01fc3432f80a787d6bf317949dd80"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a2bd01fc3432f80a787d6bf317949dd80">xran_5g_srs_req</a> (void *pHandle, struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *pDstBuffer[<a class="el" href="xran__fh__o__du_8h.html#af3e0ced3530652b3c92220c8783b55fa">XRAN_MAX_ANT_ARRAY_ELM_NR</a>][<a class="el" href="xran__fh__o__du_8h.html#af0963ba32cc8ecd280afd2e474eb426a">XRAN_N_FE_BUF_LEN</a>], <a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a> pCallback, void *pCallbackTag)</td></tr>
380 <tr class="separator:a2bd01fc3432f80a787d6bf317949dd80"><td class="memSeparator" colspan="2">&#160;</td></tr>
381 <tr class="memitem:ac5d259c362d10b47c233b5098052cbf2"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac5d259c362d10b47c233b5098052cbf2">xran_get_time_stats</a> (uint64_t *total_time, uint64_t *used_time, uint32_t *core_used, uint32_t clear)</td></tr>
382 <tr class="separator:ac5d259c362d10b47c233b5098052cbf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
383 <tr class="memitem:a03f408f45e97aa68ca47c92e4e7d1a70"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a03f408f45e97aa68ca47c92e4e7d1a70">xran_open</a> (void *pHandle, struct <a class="el" href="structxran__fh__config.html">xran_fh_config</a> *pConf)</td></tr>
384 <tr class="separator:a03f408f45e97aa68ca47c92e4e7d1a70"><td class="memSeparator" colspan="2">&#160;</td></tr>
385 <tr class="memitem:ad4852c0827600db95f9841e2f5f9f6f1"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad4852c0827600db95f9841e2f5f9f6f1">xran_start</a> (void *pHandle)</td></tr>
386 <tr class="separator:ad4852c0827600db95f9841e2f5f9f6f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
387 <tr class="memitem:a8f2daee2fe90126f1f7c361b7760a7a3"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a8f2daee2fe90126f1f7c361b7760a7a3">xran_stop</a> (void *pHandle)</td></tr>
388 <tr class="separator:a8f2daee2fe90126f1f7c361b7760a7a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
389 <tr class="memitem:a2f8866c9d6536a56e4d8232b8c45808b"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a2f8866c9d6536a56e4d8232b8c45808b">xran_close</a> (void *pHandle)</td></tr>
390 <tr class="separator:a2f8866c9d6536a56e4d8232b8c45808b"><td class="memSeparator" colspan="2">&#160;</td></tr>
391 <tr class="memitem:adfcabe4091a4782ecb9ca029314c99ca"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#adfcabe4091a4782ecb9ca029314c99ca">xran_reg_sym_cb</a> (void *pHandle, <a class="el" href="xran__fh__o__du_8h.html#ad2e55b4fa82ed8c7f00e083b0406c6c8">xran_callback_sym_fn</a> symCb, void *symCbParam, uint8_t symb, uint8_t <a class="el" href="gen__test_8m.html#a38d2cdf58cc777c61b71dd2785d139af">ant</a>)</td></tr>
392 <tr class="separator:adfcabe4091a4782ecb9ca029314c99ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
393 <tr class="memitem:aa8354b56b0be4be47c44a8a5c38db86e"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#aa8354b56b0be4be47c44a8a5c38db86e">xran_reg_physide_cb</a> (void *pHandle, <a class="el" href="xran__fh__o__du_8h.html#af48a00f171ef7a017fddd2a29f9854d0">xran_fh_tti_callback_fn</a> Cb, void *cbParam, int skipTtiNum, enum <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24">callback_to_phy_id</a>)</td></tr>
394 <tr class="separator:aa8354b56b0be4be47c44a8a5c38db86e"><td class="memSeparator" colspan="2">&#160;</td></tr>
395 <tr class="memitem:a2816fdf0ed3269e998720d01c2b6bf76"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a2816fdf0ed3269e998720d01c2b6bf76">xran_get_slot_idx</a> (uint32_t *nFrameIdx, uint32_t *nSubframeIdx, uint32_t *nSlotIdx, uint64_t *nSecond)</td></tr>
396 <tr class="separator:a2816fdf0ed3269e998720d01c2b6bf76"><td class="memSeparator" colspan="2">&#160;</td></tr>
397 <tr class="memitem:ac153c5a3e3f4f64ab0fafca6f593c380"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ac153c5a3e3f4f64ab0fafca6f593c380">xran_get_common_counters</a> (void *pXranLayerHandle, struct <a class="el" href="structxran__common__counters.html">xran_common_counters</a> *pStats)</td></tr>
398 <tr class="separator:ac153c5a3e3f4f64ab0fafca6f593c380"><td class="memSeparator" colspan="2">&#160;</td></tr>
399 <tr class="memitem:a937105f52446cfcb951e43e1dc3c4d8b"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326">xran_if_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a937105f52446cfcb951e43e1dc3c4d8b">xran_get_if_state</a> (void)</td></tr>
400 <tr class="separator:a937105f52446cfcb951e43e1dc3c4d8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
401 <tr class="memitem:ad32fb64c20521dbcfeb317e143046e27"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#ad32fb64c20521dbcfeb317e143046e27">xran_malloc</a> (size_t buf_len)</td></tr>
402 <tr class="separator:ad32fb64c20521dbcfeb317e143046e27"><td class="memSeparator" colspan="2">&#160;</td></tr>
403 <tr class="memitem:a68b53cf51fb3aee4a6d8be54d540965a"><td class="memItemLeft" align="right" valign="top">uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xran__fh__o__du_8h.html#a68b53cf51fb3aee4a6d8be54d540965a">xran_add_hdr_offset</a> (uint8_t *dst, int16_t compMethod)</td></tr>
404 <tr class="separator:a68b53cf51fb3aee4a6d8be54d540965a"><td class="memSeparator" colspan="2">&#160;</td></tr>
405 </table>
406 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
407 <div class="textblock"><p>This file provides public interface to xRAN Front Haul layer implementation as defined in the ORAN-WG4.CUS.0-v01.00 spec. Implementation specific to Lower Layer Split Central Unit (O-DU): a logical node that includes the eNB/gNB functions as listed in section 2.1 split option 7-2x, excepting those functions allocated exclusively to the O-RU. The O-DU controls the operation of O-RUs for 5G NR Radio Access technology. </p>
408 <dl class="section author"><dt>Author</dt><dd>Intel Corporation </dd></dl>
409
410 <p class="definition">Definition in file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
411 </div><h2 class="groupheader">Macro Definition Documentation</h2>
412 <a id="ad366e06c49d56ecfe336917a71236554"></a>
413 <h2 class="memtitle"><span class="permalink"><a href="#ad366e06c49d56ecfe336917a71236554">&#9670;&nbsp;</a></span>XRAN_COMPONENT_CARRIERS_MAX</h2>
414
415 <div class="memitem">
416 <div class="memproto">
417       <table class="memname">
418         <tr>
419           <td class="memname">#define XRAN_COMPONENT_CARRIERS_MAX&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>)</td>
420         </tr>
421       </table>
422 </div><div class="memdoc">
423 <p>number of CCs </p>
424
425 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00126">126</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
426
427 </div>
428 </div>
429 <a id="adb623b32cb8644414383af3de60433d8"></a>
430 <h2 class="memtitle"><span class="permalink"><a href="#adb623b32cb8644414383af3de60433d8">&#9670;&nbsp;</a></span>xran_log_dbg <span class="overload">[1/2]</span></h2>
431
432 <div class="memitem">
433 <div class="memproto">
434       <table class="memname">
435         <tr>
436           <td class="memname">#define xran_log_dbg</td>
437           <td>(</td>
438           <td class="paramtype">&#160;</td>
439           <td class="paramname">fmt, </td>
440         </tr>
441         <tr>
442           <td class="paramkey"></td>
443           <td></td>
444           <td class="paramtype">&#160;</td>
445           <td class="paramname"><em>...</em>&#160;</td>
446         </tr>
447         <tr>
448           <td></td>
449           <td>)</td>
450           <td></td><td></td>
451         </tr>
452       </table>
453 </div><div class="memdoc">
454
455 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00174">174</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
456
457 </div>
458 </div>
459 <a id="adb623b32cb8644414383af3de60433d8"></a>
460 <h2 class="memtitle"><span class="permalink"><a href="#adb623b32cb8644414383af3de60433d8">&#9670;&nbsp;</a></span>xran_log_dbg <span class="overload">[2/2]</span></h2>
461
462 <div class="memitem">
463 <div class="memproto">
464       <table class="memname">
465         <tr>
466           <td class="memname">#define xran_log_dbg</td>
467           <td>(</td>
468           <td class="paramtype">&#160;</td>
469           <td class="paramname">fmt, </td>
470         </tr>
471         <tr>
472           <td class="paramkey"></td>
473           <td></td>
474           <td class="paramtype">&#160;</td>
475           <td class="paramname"><em>...</em>&#160;</td>
476         </tr>
477         <tr>
478           <td></td>
479           <td>)</td>
480           <td></td><td></td>
481         </tr>
482       </table>
483 </div><div class="memdoc">
484
485 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00174">174</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
486
487 </div>
488 </div>
489 <a id="a02b163e2e7f90f2c7941fdcb19ebcb3e"></a>
490 <h2 class="memtitle"><span class="permalink"><a href="#a02b163e2e7f90f2c7941fdcb19ebcb3e">&#9670;&nbsp;</a></span>xran_log_err</h2>
491
492 <div class="memitem">
493 <div class="memproto">
494       <table class="memname">
495         <tr>
496           <td class="memname">#define xran_log_err</td>
497           <td>(</td>
498           <td class="paramtype">&#160;</td>
499           <td class="paramname">fmt, </td>
500         </tr>
501         <tr>
502           <td class="paramkey"></td>
503           <td></td>
504           <td class="paramtype">&#160;</td>
505           <td class="paramname"><em>...</em>&#160;</td>
506         </tr>
507         <tr>
508           <td></td>
509           <td>)</td>
510           <td></td><td></td>
511         </tr>
512       </table>
513 </div><div class="memdoc">
514 <b>Value:</b><div class="fragment"><div class="line">fprintf(stderr,                     \</div><div class="line">        <span class="stringliteral">&quot;ERROR: %s(%d): &quot;</span> fmt <span class="stringliteral">&quot;\n&quot;</span>,     \</div><div class="line">        __FILE__,                       \</div><div class="line">        __LINE__, ##__VA_ARGS__)</div></div><!-- fragment -->
515 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00178">178</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
516
517 </div>
518 </div>
519 <a id="a8f97ad3d53e73a2807e3b2cf097e267a"></a>
520 <h2 class="memtitle"><span class="permalink"><a href="#a8f97ad3d53e73a2807e3b2cf097e267a">&#9670;&nbsp;</a></span>xran_log_wrn</h2>
521
522 <div class="memitem">
523 <div class="memproto">
524       <table class="memname">
525         <tr>
526           <td class="memname">#define xran_log_wrn</td>
527           <td>(</td>
528           <td class="paramtype">&#160;</td>
529           <td class="paramname">fmt, </td>
530         </tr>
531         <tr>
532           <td class="paramkey"></td>
533           <td></td>
534           <td class="paramtype">&#160;</td>
535           <td class="paramname"><em>...</em>&#160;</td>
536         </tr>
537         <tr>
538           <td></td>
539           <td>)</td>
540           <td></td><td></td>
541         </tr>
542       </table>
543 </div><div class="memdoc">
544
545 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00175">175</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
546
547 </div>
548 </div>
549 <a id="af3e0ced3530652b3c92220c8783b55fa"></a>
550 <h2 class="memtitle"><span class="permalink"><a href="#af3e0ced3530652b3c92220c8783b55fa">&#9670;&nbsp;</a></span>XRAN_MAX_ANT_ARRAY_ELM_NR</h2>
551
552 <div class="memitem">
553 <div class="memproto">
554       <table class="memname">
555         <tr>
556           <td class="memname">#define XRAN_MAX_ANT_ARRAY_ELM_NR&#160;&#160;&#160;(64)</td>
557         </tr>
558       </table>
559 </div><div class="memdoc">
560 <p>Maximum number of Antenna Array Elemets in Antenna Array in the O-RU </p>
561
562 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00118">118</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
563
564 </div>
565 </div>
566 <a id="a35fa05e7523928c0c86cbcf835c12dc5"></a>
567 <h2 class="memtitle"><span class="permalink"><a href="#a35fa05e7523928c0c86cbcf835c12dc5">&#9670;&nbsp;</a></span>XRAN_MAX_ANTENNA_NR</h2>
568
569 <div class="memitem">
570 <div class="memproto">
571       <table class="memname">
572         <tr>
573           <td class="memname">#define XRAN_MAX_ANTENNA_NR&#160;&#160;&#160;(16)</td>
574         </tr>
575       </table>
576 </div><div class="memdoc">
577 <p>Max number of extended Antenna-Carriers: a data flow for a single antenna (or spatial stream) for a single carrier in a single sector </p>
578
579 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00111">111</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
580
581 </div>
582 </div>
583 <a id="a6447bf8849000b9fecf51d77d4fa50b2"></a>
584 <h2 class="memtitle"><span class="permalink"><a href="#a6447bf8849000b9fecf51d77d4fa50b2">&#9670;&nbsp;</a></span>XRAN_MAX_CELLS_PER_PORT</h2>
585
586 <div class="memitem">
587 <div class="memproto">
588       <table class="memname">
589         <tr>
590           <td class="memname">#define XRAN_MAX_CELLS_PER_PORT&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>)</td>
591         </tr>
592       </table>
593 </div><div class="memdoc">
594 <p>Max cells mapped to XRAN port </p>
595
596 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00125">125</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
597
598 </div>
599 </div>
600 <a id="a6a9b0521b0d67ed1e761047b2a929422"></a>
601 <h2 class="memtitle"><span class="permalink"><a href="#a6a9b0521b0d67ed1e761047b2a929422">&#9670;&nbsp;</a></span>XRAN_MAX_NUM_OF_SRS_SYMBOL_PER_SLOT</h2>
602
603 <div class="memitem">
604 <div class="memproto">
605       <table class="memname">
606         <tr>
607           <td class="memname">#define XRAN_MAX_NUM_OF_SRS_SYMBOL_PER_SLOT&#160;&#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#a87d92ec177ed9c388685a91051f66205">XRAN_NUM_OF_SYMBOL_PER_SLOT</a></td>
608         </tr>
609       </table>
610 </div><div class="memdoc">
611 <p>Max Number of SRS symbols per slot </p>
612
613 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00123">123</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
614
615 </div>
616 </div>
617 <a id="a42f4a51ad2109eb30e8cbefcde747e92"></a>
618 <h2 class="memtitle"><span class="permalink"><a href="#a42f4a51ad2109eb30e8cbefcde747e92">&#9670;&nbsp;</a></span>XRAN_MAX_PANEL_NR</h2>
619
620 <div class="memitem">
621 <div class="memproto">
622       <table class="memname">
623         <tr>
624           <td class="memname">#define XRAN_MAX_PANEL_NR&#160;&#160;&#160;(1)</td>
625         </tr>
626       </table>
627 </div><div class="memdoc">
628 <p>Max number of Panels supported per O-RU </p>
629
630 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00116">116</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
631
632 </div>
633 </div>
634 <a id="a5a579cae10a206d64b2810a7df8a66f6"></a>
635 <h2 class="memtitle"><span class="permalink"><a href="#a5a579cae10a206d64b2810a7df8a66f6">&#9670;&nbsp;</a></span>XRAN_MAX_PKT_BURST</h2>
636
637 <div class="memitem">
638 <div class="memproto">
639       <table class="memname">
640         <tr>
641           <td class="memname">#define XRAN_MAX_PKT_BURST&#160;&#160;&#160;(448+4)</td>
642         </tr>
643       </table>
644 </div><div class="memdoc">
645 <p>4x14x8 symbols per ms </p>
646
647 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00132">132</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
648
649 </div>
650 </div>
651 <a id="a9435009d03a49d495b2b608129c64b61"></a>
652 <h2 class="memtitle"><span class="permalink"><a href="#a9435009d03a49d495b2b608129c64b61">&#9670;&nbsp;</a></span>XRAN_MAX_PRBS</h2>
653
654 <div class="memitem">
655 <div class="memproto">
656       <table class="memname">
657         <tr>
658           <td class="memname">#define XRAN_MAX_PRBS&#160;&#160;&#160;(275)</td>
659         </tr>
660       </table>
661 </div><div class="memdoc">
662 <p>Max of PRBs per CC per antanna for 5G NR </p>
663
664 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00128">128</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
665
666 </div>
667 </div>
668 <a id="aa099ceebb1479cddef1ee64f5c311973"></a>
669 <h2 class="memtitle"><span class="permalink"><a href="#aa099ceebb1479cddef1ee64f5c311973">&#9670;&nbsp;</a></span>XRAN_MAX_SECTIONS_PER_SYM</h2>
670
671 <div class="memitem">
672 <div class="memproto">
673       <table class="memname">
674         <tr>
675           <td class="memname">#define XRAN_MAX_SECTIONS_PER_SYM&#160;&#160;&#160;(16)</td>
676         </tr>
677       </table>
678 </div><div class="memdoc">
679 <p>Max number of different sections in single symbol (section is equal to RB allocation for UE) </p>
680
681 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00130">130</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
682
683 </div>
684 </div>
685 <a id="a34dbe5e515cc78b4ce26fa287e6c1edc"></a>
686 <h2 class="memtitle"><span class="permalink"><a href="#a34dbe5e515cc78b4ce26fa287e6c1edc">&#9670;&nbsp;</a></span>XRAN_MAX_SECTOR_NR</h2>
687
688 <div class="memitem">
689 <div class="memproto">
690       <table class="memname">
691         <tr>
692           <td class="memname">#define XRAN_MAX_SECTOR_NR&#160;&#160;&#160;(12)</td>
693         </tr>
694       </table>
695 </div><div class="memdoc">
696 <p>Max sectors per XRAN port </p>
697
698 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00110">110</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
699
700 </div>
701 </div>
702 <a id="aba79881ec9b30850184b4f5f6b0afc39"></a>
703 <h2 class="memtitle"><span class="permalink"><a href="#aba79881ec9b30850184b4f5f6b0afc39">&#9670;&nbsp;</a></span>XRAN_MAX_TDD_PERIODICITY</h2>
704
705 <div class="memitem">
706 <div class="memproto">
707       <table class="memname">
708         <tr>
709           <td class="memname">#define XRAN_MAX_TDD_PERIODICITY&#160;&#160;&#160;(80)</td>
710         </tr>
711       </table>
712 </div><div class="memdoc">
713 <p>Max TDD pattern period </p>
714
715 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00124">124</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
716
717 </div>
718 </div>
719 <a id="a78d58409e31b11cd5b3512f52c6556ac"></a>
720 <h2 class="memtitle"><span class="permalink"><a href="#a78d58409e31b11cd5b3512f52c6556ac">&#9670;&nbsp;</a></span>XRAN_MAX_TRX_ANTENNA_ARRAY</h2>
721
722 <div class="memitem">
723 <div class="memproto">
724       <table class="memname">
725         <tr>
726           <td class="memname">#define XRAN_MAX_TRX_ANTENNA_ARRAY&#160;&#160;&#160;(1)</td>
727         </tr>
728       </table>
729 </div><div class="memdoc">
730 <p>Max number of TX and RX arrays per panel in O-RU </p>
731
732 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00117">117</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
733
734 </div>
735 </div>
736 <a id="af0963ba32cc8ecd280afd2e474eb426a"></a>
737 <h2 class="memtitle"><span class="permalink"><a href="#af0963ba32cc8ecd280afd2e474eb426a">&#9670;&nbsp;</a></span>XRAN_N_FE_BUF_LEN</h2>
738
739 <div class="memitem">
740 <div class="memproto">
741       <table class="memname">
742         <tr>
743           <td class="memname">#define XRAN_N_FE_BUF_LEN&#160;&#160;&#160;(40)</td>
744         </tr>
745       </table>
746 </div><div class="memdoc">
747 <p>Number of TTIs (slots) </p>
748
749 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00109">109</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
750
751 </div>
752 </div>
753 <a id="ad1cc410c971930e1972f329c5130c886"></a>
754 <h2 class="memtitle"><span class="permalink"><a href="#ad1cc410c971930e1972f329c5130c886">&#9670;&nbsp;</a></span>XRAN_N_MAX_BUFFER_SEGMENT</h2>
755
756 <div class="memitem">
757 <div class="memproto">
758       <table class="memname">
759         <tr>
760           <td class="memname">#define XRAN_N_MAX_BUFFER_SEGMENT&#160;&#160;&#160;<a class="el" href="xran__fh__o__du_8h.html#a5a579cae10a206d64b2810a7df8a66f6">XRAN_MAX_PKT_BURST</a></td>
761         </tr>
762       </table>
763 </div><div class="memdoc">
764 <p>Max number of segments per ms </p>
765
766 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00133">133</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
767
768 </div>
769 </div>
770 <a id="a93482eb351961fb07e09d913701dd033"></a>
771 <h2 class="memtitle"><span class="permalink"><a href="#a93482eb351961fb07e09d913701dd033">&#9670;&nbsp;</a></span>XRAN_NUM_OF_ANT_RADIO</h2>
772
773 <div class="memitem">
774 <div class="memproto">
775       <table class="memname">
776         <tr>
777           <td class="memname">#define XRAN_NUM_OF_ANT_RADIO&#160;&#160;&#160;(<a class="el" href="xran__fh__o__du_8h.html#a34dbe5e515cc78b4ce26fa287e6c1edc">XRAN_MAX_SECTOR_NR</a>*<a class="el" href="xran__fh__o__du_8h.html#a35fa05e7523928c0c86cbcf835c12dc5">XRAN_MAX_ANTENNA_NR</a>)</td>
778         </tr>
779       </table>
780 </div><div class="memdoc">
781 <p>Max Number of Antennas supported for all CC on single XRAN port </p>
782
783 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00127">127</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
784
785 </div>
786 </div>
787 <a id="acd3869dff9738650c847e456c6ab21ae"></a>
788 <h2 class="memtitle"><span class="permalink"><a href="#acd3869dff9738650c847e456c6ab21ae">&#9670;&nbsp;</a></span>XRAN_NUM_OF_SLOT_IN_TDD_LOOP</h2>
789
790 <div class="memitem">
791 <div class="memproto">
792       <table class="memname">
793         <tr>
794           <td class="memname">#define XRAN_NUM_OF_SLOT_IN_TDD_LOOP&#160;&#160;&#160;(80)</td>
795         </tr>
796       </table>
797 </div><div class="memdoc">
798 <p>MAX number of slot for TDD repetition </p>
799
800 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00151">151</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
801
802 </div>
803 </div>
804 <a id="a87d92ec177ed9c388685a91051f66205"></a>
805 <h2 class="memtitle"><span class="permalink"><a href="#a87d92ec177ed9c388685a91051f66205">&#9670;&nbsp;</a></span>XRAN_NUM_OF_SYMBOL_PER_SLOT</h2>
806
807 <div class="memitem">
808 <div class="memproto">
809       <table class="memname">
810         <tr>
811           <td class="memname">#define XRAN_NUM_OF_SYMBOL_PER_SLOT&#160;&#160;&#160;(14)</td>
812         </tr>
813       </table>
814 </div><div class="memdoc">
815 <p>Number of symbols per slot </p>
816
817 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00122">122</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
818
819 </div>
820 </div>
821 <a id="ac1e23b437693cb93f1ddd5a74f97cab4"></a>
822 <h2 class="memtitle"><span class="permalink"><a href="#ac1e23b437693cb93f1ddd5a74f97cab4">&#9670;&nbsp;</a></span>XRAN_PORTS_NUM</h2>
823
824 <div class="memitem">
825 <div class="memproto">
826       <table class="memname">
827         <tr>
828           <td class="memname">#define XRAN_PORTS_NUM&#160;&#160;&#160;(1)</td>
829         </tr>
830       </table>
831 </div><div class="memdoc">
832 <p>number of XRAN ports (aka O-RU devices) supported </p>
833
834 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00108">108</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
835
836 </div>
837 </div>
838 <a id="a3640d50cafb5ccc15b73219309f60a3b"></a>
839 <h2 class="memtitle"><span class="permalink"><a href="#a3640d50cafb5ccc15b73219309f60a3b">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_DL</h2>
840
841 <div class="memitem">
842 <div class="memproto">
843       <table class="memname">
844         <tr>
845           <td class="memname">#define XRAN_SLOT_TYPE_DL&#160;&#160;&#160;(1)</td>
846         </tr>
847       </table>
848 </div><div class="memdoc">
849 <p>DL slot </p>
850
851 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00139">139</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
852
853 </div>
854 </div>
855 <a id="ad997c19049d5e80611e4360b1ed79b80"></a>
856 <h2 class="memtitle"><span class="permalink"><a href="#ad997c19049d5e80611e4360b1ed79b80">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_FDD</h2>
857
858 <div class="memitem">
859 <div class="memproto">
860       <table class="memname">
861         <tr>
862           <td class="memname">#define XRAN_SLOT_TYPE_FDD&#160;&#160;&#160;(4)</td>
863         </tr>
864       </table>
865 </div><div class="memdoc">
866 <p>FDD slot </p>
867
868 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00142">142</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
869
870 </div>
871 </div>
872 <a id="a81efa76a214d1fd1b9b409bdea15c87c"></a>
873 <h2 class="memtitle"><span class="permalink"><a href="#a81efa76a214d1fd1b9b409bdea15c87c">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_INVALID</h2>
874
875 <div class="memitem">
876 <div class="memproto">
877       <table class="memname">
878         <tr>
879           <td class="memname">#define XRAN_SLOT_TYPE_INVALID&#160;&#160;&#160;(0)</td>
880         </tr>
881       </table>
882 </div><div class="memdoc">
883 <p>invalid slot type </p>
884
885 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00138">138</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
886
887 </div>
888 </div>
889 <a id="a581b66d2fea333f0a2e9ca3f9589fd89"></a>
890 <h2 class="memtitle"><span class="permalink"><a href="#a581b66d2fea333f0a2e9ca3f9589fd89">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_LAST</h2>
891
892 <div class="memitem">
893 <div class="memproto">
894       <table class="memname">
895         <tr>
896           <td class="memname">#define XRAN_SLOT_TYPE_LAST&#160;&#160;&#160;(5)</td>
897         </tr>
898       </table>
899 </div><div class="memdoc">
900 <p>MAX slot </p>
901
902 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00143">143</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
903
904 </div>
905 </div>
906 <a id="a37ddab95bdd53de1ee17a3607a183eae"></a>
907 <h2 class="memtitle"><span class="permalink"><a href="#a37ddab95bdd53de1ee17a3607a183eae">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_SP</h2>
908
909 <div class="memitem">
910 <div class="memproto">
911       <table class="memname">
912         <tr>
913           <td class="memname">#define XRAN_SLOT_TYPE_SP&#160;&#160;&#160;(3)</td>
914         </tr>
915       </table>
916 </div><div class="memdoc">
917 <p>Special slot </p>
918
919 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00141">141</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
920
921 </div>
922 </div>
923 <a id="a3167443dbf786f9b87a133119a8f69e8"></a>
924 <h2 class="memtitle"><span class="permalink"><a href="#a3167443dbf786f9b87a133119a8f69e8">&#9670;&nbsp;</a></span>XRAN_SLOT_TYPE_UL</h2>
925
926 <div class="memitem">
927 <div class="memproto">
928       <table class="memname">
929         <tr>
930           <td class="memname">#define XRAN_SLOT_TYPE_UL&#160;&#160;&#160;(2)</td>
931         </tr>
932       </table>
933 </div><div class="memdoc">
934 <p>UL slot </p>
935
936 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00140">140</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
937
938 </div>
939 </div>
940 <a id="a4a957453875309739caacdd651bdab75"></a>
941 <h2 class="memtitle"><span class="permalink"><a href="#a4a957453875309739caacdd651bdab75">&#9670;&nbsp;</a></span>XRAN_STATUS_FAIL</h2>
942
943 <div class="memitem">
944 <div class="memproto">
945       <table class="memname">
946         <tr>
947           <td class="memname">#define XRAN_STATUS_FAIL&#160;&#160;&#160;(-1)</td>
948         </tr>
949       </table>
950 </div><div class="memdoc">
951 <p>Fail status value. </p>
952
953 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00058">58</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
954
955 </div>
956 </div>
957 <a id="ace75e6583c9238fc2f957c3cc9b92ec4"></a>
958 <h2 class="memtitle"><span class="permalink"><a href="#ace75e6583c9238fc2f957c3cc9b92ec4">&#9670;&nbsp;</a></span>XRAN_STATUS_FATAL</h2>
959
960 <div class="memitem">
961 <div class="memproto">
962       <table class="memname">
963         <tr>
964           <td class="memname">#define XRAN_STATUS_FATAL&#160;&#160;&#160;(-5)</td>
965         </tr>
966       </table>
967 </div><div class="memdoc">
968 <p>A serious error has occurred. Recommended course of action is to shutdown and restart the component. </p>
969
970 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00079">79</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
971
972 </div>
973 </div>
974 <a id="a6602a966370956b35631e68698539cac"></a>
975 <h2 class="memtitle"><span class="permalink"><a href="#a6602a966370956b35631e68698539cac">&#9670;&nbsp;</a></span>XRAN_STATUS_INVALID_PACKET</h2>
976
977 <div class="memitem">
978 <div class="memproto">
979       <table class="memname">
980         <tr>
981           <td class="memname">#define XRAN_STATUS_INVALID_PACKET&#160;&#160;&#160;(-7)</td>
982         </tr>
983       </table>
984 </div><div class="memdoc">
985 <p>Recevied packet does not have correct format. </p>
986
987 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00092">92</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
988
989 </div>
990 </div>
991 <a id="aad8a35383b986f4ca80437468b6c625f"></a>
992 <h2 class="memtitle"><span class="permalink"><a href="#aad8a35383b986f4ca80437468b6c625f">&#9670;&nbsp;</a></span>XRAN_STATUS_INVALID_PARAM</h2>
993
994 <div class="memitem">
995 <div class="memproto">
996       <table class="memname">
997         <tr>
998           <td class="memname">#define XRAN_STATUS_INVALID_PARAM&#160;&#160;&#160;(-4)</td>
999         </tr>
1000       </table>
1001 </div><div class="memdoc">
1002 <p>Invalid parameter has been passed in. </p>
1003
1004 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00075">75</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1005
1006 </div>
1007 </div>
1008 <a id="a341e6485fd9de350805503e938f90708"></a>
1009 <h2 class="memtitle"><span class="permalink"><a href="#a341e6485fd9de350805503e938f90708">&#9670;&nbsp;</a></span>XRAN_STATUS_RESOURCE</h2>
1010
1011 <div class="memitem">
1012 <div class="memproto">
1013       <table class="memname">
1014         <tr>
1015           <td class="memname">#define XRAN_STATUS_RESOURCE&#160;&#160;&#160;(-3)</td>
1016         </tr>
1017       </table>
1018 </div><div class="memdoc">
1019 <p>The resource that has been requested is unavailable. Refer to relevant sections of the API for specifics on what the suggested course of action is. </p>
1020
1021 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00068">68</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1022
1023 </div>
1024 </div>
1025 <a id="a746b130d3c5db158af75c32c240183fc"></a>
1026 <h2 class="memtitle"><span class="permalink"><a href="#a746b130d3c5db158af75c32c240183fc">&#9670;&nbsp;</a></span>XRAN_STATUS_RETRY</h2>
1027
1028 <div class="memitem">
1029 <div class="memproto">
1030       <table class="memname">
1031         <tr>
1032           <td class="memname">#define XRAN_STATUS_RETRY&#160;&#160;&#160;(-2)</td>
1033         </tr>
1034       </table>
1035 </div><div class="memdoc">
1036 <p>Retry status value. </p>
1037
1038 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00063">63</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1039
1040 </div>
1041 </div>
1042 <a id="a814959a7b5ff6cd4474433f62312eee0"></a>
1043 <h2 class="memtitle"><span class="permalink"><a href="#a814959a7b5ff6cd4474433f62312eee0">&#9670;&nbsp;</a></span>XRAN_STATUS_SUCCESS</h2>
1044
1045 <div class="memitem">
1046 <div class="memproto">
1047       <table class="memname">
1048         <tr>
1049           <td class="memname">#define XRAN_STATUS_SUCCESS&#160;&#160;&#160;(0)</td>
1050         </tr>
1051       </table>
1052 </div><div class="memdoc">
1053 <p>Success status value. </p>
1054
1055 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00054">54</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1056
1057 </div>
1058 </div>
1059 <a id="a45590c7e932d3d78451dd72d2cbf5454"></a>
1060 <h2 class="memtitle"><span class="permalink"><a href="#a45590c7e932d3d78451dd72d2cbf5454">&#9670;&nbsp;</a></span>XRAN_STATUS_UNSUPPORTED</h2>
1061
1062 <div class="memitem">
1063 <div class="memproto">
1064       <table class="memname">
1065         <tr>
1066           <td class="memname">#define XRAN_STATUS_UNSUPPORTED&#160;&#160;&#160;(-6)</td>
1067         </tr>
1068       </table>
1069 </div><div class="memdoc">
1070 <p>The function is not supported, at least not with the specific parameters supplied. This may be because a particular capability is not supported by the current implementation. </p>
1071
1072 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00085">85</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1073
1074 </div>
1075 </div>
1076 <a id="ac1cd6517de77baee725c67b3e5bd417c"></a>
1077 <h2 class="memtitle"><span class="permalink"><a href="#ac1cd6517de77baee725c67b3e5bd417c">&#9670;&nbsp;</a></span>XRAN_STRICT_PARM_CHECK</h2>
1078
1079 <div class="memitem">
1080 <div class="memproto">
1081       <table class="memname">
1082         <tr>
1083           <td class="memname">#define XRAN_STRICT_PARM_CHECK&#160;&#160;&#160;(1)</td>
1084         </tr>
1085       </table>
1086 </div><div class="memdoc">
1087 <p>enable parameter check for C-plane </p>
1088
1089 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00135">135</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1090
1091 </div>
1092 </div>
1093 <a id="aa7db41b67e2cd3be904b7332d8df6657"></a>
1094 <h2 class="memtitle"><span class="permalink"><a href="#aa7db41b67e2cd3be904b7332d8df6657">&#9670;&nbsp;</a></span>XRAN_SYMBOL_TYPE_DL</h2>
1095
1096 <div class="memitem">
1097 <div class="memproto">
1098       <table class="memname">
1099         <tr>
1100           <td class="memname">#define XRAN_SYMBOL_TYPE_DL&#160;&#160;&#160;(0)</td>
1101         </tr>
1102       </table>
1103 </div><div class="memdoc">
1104 <p>DL symbol </p>
1105
1106 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00146">146</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1107
1108 </div>
1109 </div>
1110 <a id="ac7915d813606499af39f5e952391fded"></a>
1111 <h2 class="memtitle"><span class="permalink"><a href="#ac7915d813606499af39f5e952391fded">&#9670;&nbsp;</a></span>XRAN_SYMBOL_TYPE_FDD</h2>
1112
1113 <div class="memitem">
1114 <div class="memproto">
1115       <table class="memname">
1116         <tr>
1117           <td class="memname">#define XRAN_SYMBOL_TYPE_FDD&#160;&#160;&#160;(3)</td>
1118         </tr>
1119       </table>
1120 </div><div class="memdoc">
1121 <p>FDD symbol </p>
1122
1123 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00149">149</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1124
1125 </div>
1126 </div>
1127 <a id="a0e0df6a907cf2724cf3e531d7f18fb3c"></a>
1128 <h2 class="memtitle"><span class="permalink"><a href="#a0e0df6a907cf2724cf3e531d7f18fb3c">&#9670;&nbsp;</a></span>XRAN_SYMBOL_TYPE_GUARD</h2>
1129
1130 <div class="memitem">
1131 <div class="memproto">
1132       <table class="memname">
1133         <tr>
1134           <td class="memname">#define XRAN_SYMBOL_TYPE_GUARD&#160;&#160;&#160;(2)</td>
1135         </tr>
1136       </table>
1137 </div><div class="memdoc">
1138 <p>GUARD symbol </p>
1139
1140 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00148">148</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1141
1142 </div>
1143 </div>
1144 <a id="a78bce62effeb80d1e2bda74c6ee3d5f4"></a>
1145 <h2 class="memtitle"><span class="permalink"><a href="#a78bce62effeb80d1e2bda74c6ee3d5f4">&#9670;&nbsp;</a></span>XRAN_SYMBOL_TYPE_UL</h2>
1146
1147 <div class="memitem">
1148 <div class="memproto">
1149       <table class="memname">
1150         <tr>
1151           <td class="memname">#define XRAN_SYMBOL_TYPE_UL&#160;&#160;&#160;(1)</td>
1152         </tr>
1153       </table>
1154 </div><div class="memdoc">
1155 <p>UL symbol </p>
1156
1157 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00147">147</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1158
1159 </div>
1160 </div>
1161 <a id="a5a8a3a7c7c4ff43865b57971dfbf0aa6"></a>
1162 <h2 class="memtitle"><span class="permalink"><a href="#a5a8a3a7c7c4ff43865b57971dfbf0aa6">&#9670;&nbsp;</a></span>XranGetFrameNum</h2>
1163
1164 <div class="memitem">
1165 <div class="memproto">
1166       <table class="memname">
1167         <tr>
1168           <td class="memname">#define XranGetFrameNum</td>
1169           <td>(</td>
1170           <td class="paramtype">&#160;</td>
1171           <td class="paramname">tti, </td>
1172         </tr>
1173         <tr>
1174           <td class="paramkey"></td>
1175           <td></td>
1176           <td class="paramtype">&#160;</td>
1177           <td class="paramname">SFNatSecStart, </td>
1178         </tr>
1179         <tr>
1180           <td class="paramkey"></td>
1181           <td></td>
1182           <td class="paramtype">&#160;</td>
1183           <td class="paramname">numSubFramePerSystemFrame, </td>
1184         </tr>
1185         <tr>
1186           <td class="paramkey"></td>
1187           <td></td>
1188           <td class="paramtype">&#160;</td>
1189           <td class="paramname">numSlotPerSubFrame&#160;</td>
1190         </tr>
1191         <tr>
1192           <td></td>
1193           <td>)</td>
1194           <td></td><td>&#160;&#160;&#160;((((uint32_t)tti / ((uint32_t)numSubFramePerSystemFrame * (uint32_t)numSlotPerSubFrame)) + SFNatSecStart) &amp; 0x3FF)</td>
1195         </tr>
1196       </table>
1197 </div><div class="memdoc">
1198 <p>Macro to calculate Frame number for given tti </p>
1199
1200 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00102">102</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1201
1202 </div>
1203 </div>
1204 <a id="a36c7ae37e30524321b18fde971372b92"></a>
1205 <h2 class="memtitle"><span class="permalink"><a href="#a36c7ae37e30524321b18fde971372b92">&#9670;&nbsp;</a></span>XranGetSlotNum</h2>
1206
1207 <div class="memitem">
1208 <div class="memproto">
1209       <table class="memname">
1210         <tr>
1211           <td class="memname">#define XranGetSlotNum</td>
1212           <td>(</td>
1213           <td class="paramtype">&#160;</td>
1214           <td class="paramname">tti, </td>
1215         </tr>
1216         <tr>
1217           <td class="paramkey"></td>
1218           <td></td>
1219           <td class="paramtype">&#160;</td>
1220           <td class="paramname">numSlotPerSfn&#160;</td>
1221         </tr>
1222         <tr>
1223           <td></td>
1224           <td>)</td>
1225           <td></td><td>&#160;&#160;&#160;((uint32_t)tti % ((uint32_t)numSlotPerSfn))</td>
1226         </tr>
1227       </table>
1228 </div><div class="memdoc">
1229 <p>Macro to calculate Slot number </p>
1230
1231 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00106">106</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1232
1233 </div>
1234 </div>
1235 <a id="a5ca2a2076a042acdca2e326a436a7882"></a>
1236 <h2 class="memtitle"><span class="permalink"><a href="#a5ca2a2076a042acdca2e326a436a7882">&#9670;&nbsp;</a></span>XranGetSubFrameNum</h2>
1237
1238 <div class="memitem">
1239 <div class="memproto">
1240       <table class="memname">
1241         <tr>
1242           <td class="memname">#define XranGetSubFrameNum</td>
1243           <td>(</td>
1244           <td class="paramtype">&#160;</td>
1245           <td class="paramname">tti, </td>
1246         </tr>
1247         <tr>
1248           <td class="paramkey"></td>
1249           <td></td>
1250           <td class="paramtype">&#160;</td>
1251           <td class="paramname">numSlotPerSubFrame, </td>
1252         </tr>
1253         <tr>
1254           <td class="paramkey"></td>
1255           <td></td>
1256           <td class="paramtype">&#160;</td>
1257           <td class="paramname">numSubFramePerSystemFrame&#160;</td>
1258         </tr>
1259         <tr>
1260           <td></td>
1261           <td>)</td>
1262           <td></td><td>&#160;&#160;&#160;(((uint32_t)tti/(uint32_t)numSlotPerSubFrame) % (uint32_t)numSubFramePerSystemFrame)</td>
1263         </tr>
1264       </table>
1265 </div><div class="memdoc">
1266 <p>Macro to calculate Subframe number for given tti </p>
1267
1268 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00104">104</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1269
1270 </div>
1271 </div>
1272 <a id="a605ecc3c0ad6066e39465a108b873373"></a>
1273 <h2 class="memtitle"><span class="permalink"><a href="#a605ecc3c0ad6066e39465a108b873373">&#9670;&nbsp;</a></span>XranGetSymNum</h2>
1274
1275 <div class="memitem">
1276 <div class="memproto">
1277       <table class="memname">
1278         <tr>
1279           <td class="memname">#define XranGetSymNum</td>
1280           <td>(</td>
1281           <td class="paramtype">&#160;</td>
1282           <td class="paramname">symIdx, </td>
1283         </tr>
1284         <tr>
1285           <td class="paramkey"></td>
1286           <td></td>
1287           <td class="paramtype">&#160;</td>
1288           <td class="paramname">numSymPerTti&#160;</td>
1289         </tr>
1290         <tr>
1291           <td></td>
1292           <td>)</td>
1293           <td></td><td>&#160;&#160;&#160;(((uint32_t)symIdx % (uint32_t)numSymPerTti))</td>
1294         </tr>
1295       </table>
1296 </div><div class="memdoc">
1297 <p>Macro to calculate Symbol number for given slot from symbol index </p>
1298
1299 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00100">100</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1300
1301 </div>
1302 </div>
1303 <a id="aa76014e778bb54907d85e05cac204d71"></a>
1304 <h2 class="memtitle"><span class="permalink"><a href="#aa76014e778bb54907d85e05cac204d71">&#9670;&nbsp;</a></span>XranGetTtiNum</h2>
1305
1306 <div class="memitem">
1307 <div class="memproto">
1308       <table class="memname">
1309         <tr>
1310           <td class="memname">#define XranGetTtiNum</td>
1311           <td>(</td>
1312           <td class="paramtype">&#160;</td>
1313           <td class="paramname">symIdx, </td>
1314         </tr>
1315         <tr>
1316           <td class="paramkey"></td>
1317           <td></td>
1318           <td class="paramtype">&#160;</td>
1319           <td class="paramname">numSymPerTti&#160;</td>
1320         </tr>
1321         <tr>
1322           <td></td>
1323           <td>)</td>
1324           <td></td><td>&#160;&#160;&#160;(((uint32_t)symIdx / (uint32_t)numSymPerTti))</td>
1325         </tr>
1326       </table>
1327 </div><div class="memdoc">
1328 <p>Macro to calculate TTI number from symbol index used by timing thread </p>
1329
1330 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00098">98</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1331
1332 </div>
1333 </div>
1334 <h2 class="groupheader">Typedef Documentation</h2>
1335 <a id="a2c1d5f131c5a23d8339f1babb3b22ade"></a>
1336 <h2 class="memtitle"><span class="permalink"><a href="#a2c1d5f131c5a23d8339f1babb3b22ade">&#9670;&nbsp;</a></span>phy_decoder_poll_fn</h2>
1337
1338 <div class="memitem">
1339 <div class="memproto">
1340       <table class="memname">
1341         <tr>
1342           <td class="memname">typedef int16_t(* phy_decoder_poll_fn) (void)</td>
1343         </tr>
1344       </table>
1345 </div><div class="memdoc">
1346 <p>Callback functions to poll BBdev secoder </p>
1347
1348 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00251">251</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1349
1350 </div>
1351 </div>
1352 <a id="adce425900af03693ff55da9deb17a679"></a>
1353 <h2 class="memtitle"><span class="permalink"><a href="#adce425900af03693ff55da9deb17a679">&#9670;&nbsp;</a></span>phy_encoder_poll_fn</h2>
1354
1355 <div class="memitem">
1356 <div class="memproto">
1357       <table class="memname">
1358         <tr>
1359           <td class="memname">typedef int16_t(* phy_encoder_poll_fn) (void)</td>
1360         </tr>
1361       </table>
1362 </div><div class="memdoc">
1363 <p>Callback functions to poll BBdev encoder </p>
1364
1365 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00248">248</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1366
1367 </div>
1368 </div>
1369 <a id="ad2e55b4fa82ed8c7f00e083b0406c6c8"></a>
1370 <h2 class="memtitle"><span class="permalink"><a href="#ad2e55b4fa82ed8c7f00e083b0406c6c8">&#9670;&nbsp;</a></span>xran_callback_sym_fn</h2>
1371
1372 <div class="memitem">
1373 <div class="memproto">
1374       <table class="memname">
1375         <tr>
1376           <td class="memname">typedef void(* xran_callback_sym_fn) (void *)</td>
1377         </tr>
1378       </table>
1379 </div><div class="memdoc">
1380 <p>callback function type for Symbol packet </p>
1381
1382 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00239">239</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1383
1384 </div>
1385 </div>
1386 <a id="afe623da85d4542bce592f333046e2c81"></a>
1387 <h2 class="memtitle"><span class="permalink"><a href="#afe623da85d4542bce592f333046e2c81">&#9670;&nbsp;</a></span>xran_cc_handle_t</h2>
1388
1389 <div class="memitem">
1390 <div class="memproto">
1391       <table class="memname">
1392         <tr>
1393           <td class="memname">typedef void* <a class="el" href="xran__fh__o__du_8h.html#afe623da85d4542bce592f333046e2c81">xran_cc_handle_t</a></td>
1394         </tr>
1395       </table>
1396 </div><div class="memdoc">
1397 <p>CC instance handle pointer type </p>
1398
1399 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00541">541</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1400
1401 </div>
1402 </div>
1403 <a id="af48a00f171ef7a017fddd2a29f9854d0"></a>
1404 <h2 class="memtitle"><span class="permalink"><a href="#af48a00f171ef7a017fddd2a29f9854d0">&#9670;&nbsp;</a></span>xran_fh_tti_callback_fn</h2>
1405
1406 <div class="memitem">
1407 <div class="memproto">
1408       <table class="memname">
1409         <tr>
1410           <td class="memname">typedef int(* xran_fh_tti_callback_fn) (void *)</td>
1411         </tr>
1412       </table>
1413 </div><div class="memdoc">
1414 <p>Callback function type for TTI event </p>
1415
1416 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00242">242</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1417
1418 </div>
1419 </div>
1420 <a id="aa3ceca070f84e316e0e2f6002419d572"></a>
1421 <h2 class="memtitle"><span class="permalink"><a href="#aa3ceca070f84e316e0e2f6002419d572">&#9670;&nbsp;</a></span>xran_status_t</h2>
1422
1423 <div class="memitem">
1424 <div class="memproto">
1425       <table class="memname">
1426         <tr>
1427           <td class="memname">typedef int32_t <a class="el" href="xran__fh__o__du_8h.html#aa3ceca070f84e316e0e2f6002419d572">xran_status_t</a></td>
1428         </tr>
1429       </table>
1430 </div><div class="memdoc">
1431 <p>Xran status return value </p>
1432
1433 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00236">236</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1434
1435 </div>
1436 </div>
1437 <a id="ad52207145e383ae136995f5a2b7dd82d"></a>
1438 <h2 class="memtitle"><span class="permalink"><a href="#ad52207145e383ae136995f5a2b7dd82d">&#9670;&nbsp;</a></span>xran_transport_callback_fn</h2>
1439
1440 <div class="memitem">
1441 <div class="memproto">
1442       <table class="memname">
1443         <tr>
1444           <td class="memname">typedef void(* xran_transport_callback_fn) (void *, <a class="el" href="xran__fh__o__du_8h.html#aa3ceca070f84e316e0e2f6002419d572">xran_status_t</a>)</td>
1445         </tr>
1446       </table>
1447 </div><div class="memdoc">
1448 <p>Callback function type packet arrival from transport layer (ETH or IP) </p>
1449
1450 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00245">245</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1451
1452 </div>
1453 </div>
1454 <h2 class="groupheader">Enumeration Type Documentation</h2>
1455 <a id="a8eb67099ddcb1b5877a494edfd450d24"></a>
1456 <h2 class="memtitle"><span class="permalink"><a href="#a8eb67099ddcb1b5877a494edfd450d24">&#9670;&nbsp;</a></span>callback_to_phy_id</h2>
1457
1458 <div class="memitem">
1459 <div class="memproto">
1460       <table class="memname">
1461         <tr>
1462           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a8eb67099ddcb1b5877a494edfd450d24">callback_to_phy_id</a></td>
1463         </tr>
1464       </table>
1465 </div><div class="memdoc">
1466 <p>Callback function type for symbol packet enum </p>
1467 <table class="fieldtable">
1468 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8eb67099ddcb1b5877a494edfd450d24ae2863e9abb188c74c5e36966396988e3"></a>XRAN_CB_TTI&#160;</td><td class="fielddoc"><p>callback on TTI boundary </p>
1469 </td></tr>
1470 <tr><td class="fieldname"><a id="a8eb67099ddcb1b5877a494edfd450d24a75d1b6240b461efda58c8e06e8e9f6d2"></a>XRAN_CB_HALF_SLOT_RX&#160;</td><td class="fielddoc"><p>callback on half slot (sym 7) packet arrival </p>
1471 </td></tr>
1472 <tr><td class="fieldname"><a id="a8eb67099ddcb1b5877a494edfd450d24a1e3bbfc0078205779b22c99889f927af"></a>XRAN_CB_FULL_SLOT_RX&#160;</td><td class="fielddoc"><p>callback on full slot (sym 14) packet arrival </p>
1473 </td></tr>
1474 <tr><td class="fieldname"><a id="a8eb67099ddcb1b5877a494edfd450d24ae94002de5bb212ba3d5d0d761ab8149d"></a>XRAN_CB_MAX&#160;</td><td class="fielddoc"><p>max number of callbacks </p>
1475 </td></tr>
1476 </table>
1477
1478 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00219">219</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1479
1480 </div>
1481 </div>
1482 <a id="a4c62e469317040d695487f294cf9e0ba"></a>
1483 <h2 class="memtitle"><span class="permalink"><a href="#a4c62e469317040d695487f294cf9e0ba">&#9670;&nbsp;</a></span>xran_bbdev_init</h2>
1484
1485 <div class="memitem">
1486 <div class="memproto">
1487       <table class="memname">
1488         <tr>
1489           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a4c62e469317040d695487f294cf9e0ba">xran_bbdev_init</a></td>
1490         </tr>
1491       </table>
1492 </div><div class="memdoc">
1493 <p>state of bbdev with xran </p>
1494 <table class="fieldtable">
1495 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4c62e469317040d695487f294cf9e0baaedc9957e395dca8c38c07377885b5339"></a>XRAN_BBDEV_NOT_USED&#160;</td><td class="fielddoc"><p>BBDEV is disabled </p>
1496 </td></tr>
1497 <tr><td class="fieldname"><a id="a4c62e469317040d695487f294cf9e0baab0a570cb95560770482680552b5dc5d0"></a>XRAN_BBDEV_MODE_HW_OFF&#160;</td><td class="fielddoc"><p>BBDEV is enabled for SW sim mode </p>
1498 </td></tr>
1499 <tr><td class="fieldname"><a id="a4c62e469317040d695487f294cf9e0baa444621cf5453a912cc492b1bf62c0d39"></a>XRAN_BBDEV_MODE_HW_ON&#160;</td><td class="fielddoc"><p>BBDEV is enable for HW </p>
1500 </td></tr>
1501 <tr><td class="fieldname"><a id="a4c62e469317040d695487f294cf9e0baadcefd86b1065c7105f59941e8c589f09"></a>XRAN_BBDEV_MODE_MAX&#160;</td><td class="fielddoc"></td></tr>
1502 </table>
1503
1504 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00278">278</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1505
1506 </div>
1507 </div>
1508 <a id="ab78adb73387ef66b18318c2425be2f27"></a>
1509 <h2 class="memtitle"><span class="permalink"><a href="#ab78adb73387ef66b18318c2425be2f27">&#9670;&nbsp;</a></span>xran_beamforming_type</h2>
1510
1511 <div class="memitem">
1512 <div class="memproto">
1513       <table class="memname">
1514         <tr>
1515           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#ab78adb73387ef66b18318c2425be2f27">xran_beamforming_type</a></td>
1516         </tr>
1517       </table>
1518 </div><div class="memdoc">
1519 <p>type of beamforming </p>
1520 <table class="fieldtable">
1521 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab78adb73387ef66b18318c2425be2f27a28eb3e91604ef0f752bef0c98e48a21f"></a>XRAN_BEAM_ID_BASED&#160;</td><td class="fielddoc"><p>beam index based </p>
1522 </td></tr>
1523 <tr><td class="fieldname"><a id="ab78adb73387ef66b18318c2425be2f27ac65119b19d6f3b1195050fb56529e02a"></a>XRAN_BEAM_WEIGHT&#160;</td><td class="fielddoc"><p>beam forming weights </p>
1524 </td></tr>
1525 <tr><td class="fieldname"><a id="ab78adb73387ef66b18318c2425be2f27a04381c94022b91dd4d93c039dd2f87cd"></a>XRAN_BEAM_ATTRIBUTE&#160;</td><td class="fielddoc"><p>beam index based </p>
1526 </td></tr>
1527 </table>
1528
1529 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00270">270</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1530
1531 </div>
1532 </div>
1533 <a id="abf0211a253f5881ebad3910cef98d30e"></a>
1534 <h2 class="memtitle"><span class="permalink"><a href="#abf0211a253f5881ebad3910cef98d30e">&#9670;&nbsp;</a></span>xran_category</h2>
1535
1536 <div class="memitem">
1537 <div class="memproto">
1538       <table class="memname">
1539         <tr>
1540           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#abf0211a253f5881ebad3910cef98d30e">xran_category</a></td>
1541         </tr>
1542       </table>
1543 </div><div class="memdoc">
1544 <p>XRAN category enum </p>
1545 <table class="fieldtable">
1546 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="abf0211a253f5881ebad3910cef98d30ea25cae7703b653209b61647fa65ac7e9f"></a>XRAN_CATEGORY_A&#160;</td><td class="fielddoc"></td></tr>
1547 <tr><td class="fieldname"><a id="abf0211a253f5881ebad3910cef98d30ea6f7ea23328e0189a3c4879d7fa0d3749"></a>XRAN_CATEGORY_B&#160;</td><td class="fielddoc"></td></tr>
1548 <tr><td class="fieldname"><a id="abf0211a253f5881ebad3910cef98d30ea9d20ba705f8c8fa5fca2ac5dfb10c561"></a>XRAN_CATEGORY_MAX&#160;</td><td class="fielddoc"></td></tr>
1549 </table>
1550
1551 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00262">262</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1552
1553 </div>
1554 </div>
1555 <a id="afc082593977ad91f3dcdd2175cb74615"></a>
1556 <h2 class="memtitle"><span class="permalink"><a href="#afc082593977ad91f3dcdd2175cb74615">&#9670;&nbsp;</a></span>xran_compression_method</h2>
1557
1558 <div class="memitem">
1559 <div class="memproto">
1560       <table class="memname">
1561         <tr>
1562           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#afc082593977ad91f3dcdd2175cb74615">xran_compression_method</a></td>
1563         </tr>
1564       </table>
1565 </div><div class="memdoc">
1566 <p>Compression Method 6.3.3.13, Table 6-43 </p>
1567 <table class="fieldtable">
1568 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615a7fbf705170e00d2ce3e838fa9826ca8d"></a>XRAN_COMPMETHOD_NONE&#160;</td><td class="fielddoc"></td></tr>
1569 <tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615a91815a9c09cf9e8bc646b51efef13c28"></a>XRAN_COMPMETHOD_BLKFLOAT&#160;</td><td class="fielddoc"></td></tr>
1570 <tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615abb1f75bf59f6240e8bb007f1baca8b76"></a>XRAN_COMPMETHOD_BLKSCALE&#160;</td><td class="fielddoc"></td></tr>
1571 <tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615a1b9e420d95dba65260f772a83acdf713"></a>XRAN_COMPMETHOD_ULAW&#160;</td><td class="fielddoc"></td></tr>
1572 <tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615a9f74b93c96dd056e192cbe2295d0e33c"></a>XRAN_COMPMETHOD_MODULATION&#160;</td><td class="fielddoc"></td></tr>
1573 <tr><td class="fieldname"><a id="afc082593977ad91f3dcdd2175cb74615a52b87e9b516e0c85522a8c2cd21b4fae"></a>XRAN_COMPMETHOD_MAX&#160;</td><td class="fielddoc"></td></tr>
1574 </table>
1575
1576 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00203">203</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1577
1578 </div>
1579 </div>
1580 <a id="a2f600110ab5726a0f21375b7f24c0326"></a>
1581 <h2 class="memtitle"><span class="permalink"><a href="#a2f600110ab5726a0f21375b7f24c0326">&#9670;&nbsp;</a></span>xran_if_state</h2>
1582
1583 <div class="memitem">
1584 <div class="memproto">
1585       <table class="memname">
1586         <tr>
1587           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326">xran_if_state</a></td>
1588         </tr>
1589       </table>
1590 </div><div class="memdoc">
1591 <table class="fieldtable">
1592 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2f600110ab5726a0f21375b7f24c0326a4b6bcf9a51e104e19a5fa2d859a63080"></a>XRAN_INIT&#160;</td><td class="fielddoc"></td></tr>
1593 <tr><td class="fieldname"><a id="a2f600110ab5726a0f21375b7f24c0326a35916b54fc6804c2f2dc1f5891f3047e"></a>XRAN_RUNNING&#160;</td><td class="fielddoc"></td></tr>
1594 <tr><td class="fieldname"><a id="a2f600110ab5726a0f21375b7f24c0326a57a68dd3f4413f7cc255838c4442938c"></a>XRAN_STOPPED&#160;</td><td class="fielddoc"></td></tr>
1595 </table>
1596
1597 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00189">189</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1598
1599 </div>
1600 </div>
1601 <a id="ab5ce6839bae2968c79930a0bfa17f4d8"></a>
1602 <h2 class="memtitle"><span class="permalink"><a href="#ab5ce6839bae2968c79930a0bfa17f4d8">&#9670;&nbsp;</a></span>xran_input_byte_order</h2>
1603
1604 <div class="memitem">
1605 <div class="memproto">
1606       <table class="memname">
1607         <tr>
1608           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#ab5ce6839bae2968c79930a0bfa17f4d8">xran_input_byte_order</a></td>
1609         </tr>
1610       </table>
1611 </div><div class="memdoc">
1612 <p>XRAN-PHY interface byte order </p>
1613 <table class="fieldtable">
1614 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab5ce6839bae2968c79930a0bfa17f4d8a61bd03fd3153385f6791bd16e55892b8"></a>XRAN_NE_BE_BYTE_ORDER&#160;</td><td class="fielddoc"><p>Network byte order (Big endian), xRAN lib doesn't do swap </p>
1615 </td></tr>
1616 <tr><td class="fieldname"><a id="ab5ce6839bae2968c79930a0bfa17f4d8ae0b667dc04b0baacb15bc9c40b776098"></a>XRAN_CPU_LE_BYTE_ORDER&#160;</td><td class="fielddoc"><p>CPU byte order (Little endian), xRAN lib does do swap </p>
1617 </td></tr>
1618 </table>
1619
1620 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00471">471</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1621
1622 </div>
1623 </div>
1624 <a id="a0d9cb4cebbc59a8fa5bfef7547898859"></a>
1625 <h2 class="memtitle"><span class="permalink"><a href="#a0d9cb4cebbc59a8fa5bfef7547898859">&#9670;&nbsp;</a></span>xran_input_i_q_order</h2>
1626
1627 <div class="memitem">
1628 <div class="memproto">
1629       <table class="memname">
1630         <tr>
1631           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a0d9cb4cebbc59a8fa5bfef7547898859">xran_input_i_q_order</a></td>
1632         </tr>
1633       </table>
1634 </div><div class="memdoc">
1635 <p>XRAN-PHY interface I and Q order </p>
1636 <table class="fieldtable">
1637 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0d9cb4cebbc59a8fa5bfef7547898859a0064217ac0728d6ac2d4f92d95db0d21"></a>XRAN_I_Q_ORDER&#160;</td><td class="fielddoc"><p>I , Q </p>
1638 </td></tr>
1639 <tr><td class="fieldname"><a id="a0d9cb4cebbc59a8fa5bfef7547898859affc94d5062a9df002a08262d843fc2f3"></a>XRAN_Q_I_ORDER&#160;</td><td class="fielddoc"><p>Q , I </p>
1640 </td></tr>
1641 </table>
1642
1643 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00477">477</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1644
1645 </div>
1646 </div>
1647 <a id="a185d8ae20c697568878935f0a260227a"></a>
1648 <h2 class="memtitle"><span class="permalink"><a href="#a185d8ae20c697568878935f0a260227a">&#9670;&nbsp;</a></span>xran_vf_ports</h2>
1649
1650 <div class="memitem">
1651 <div class="memproto">
1652       <table class="memname">
1653         <tr>
1654           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a185d8ae20c697568878935f0a260227a">xran_vf_ports</a></td>
1655         </tr>
1656       </table>
1657 </div><div class="memdoc">
1658 <p>XRAN port enum </p>
1659 <table class="fieldtable">
1660 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a185d8ae20c697568878935f0a260227aafe31ae20f49aa6ca5a568bfdc89f69ab"></a>XRAN_UP_VF&#160;</td><td class="fielddoc"><p>port type for U-plane </p>
1661 </td></tr>
1662 <tr><td class="fieldname"><a id="a185d8ae20c697568878935f0a260227aabadad61426458852f6c89f1a74b03c1a"></a>XRAN_CP_VF&#160;</td><td class="fielddoc"><p>port type for C-plane </p>
1663 </td></tr>
1664 <tr><td class="fieldname"><a id="a185d8ae20c697568878935f0a260227aaacf0b73353fef317536c389fcccde6ac"></a>XRAN_VF_MAX&#160;</td><td class="fielddoc"></td></tr>
1665 </table>
1666
1667 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00254">254</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1668
1669 </div>
1670 </div>
1671 <a id="a80cd33d519d5b1993e2a1de8b78b3059"></a>
1672 <h2 class="memtitle"><span class="permalink"><a href="#a80cd33d519d5b1993e2a1de8b78b3059">&#9670;&nbsp;</a></span>xran_weight_based_beamforming_type</h2>
1673
1674 <div class="memitem">
1675 <div class="memproto">
1676       <table class="memname">
1677         <tr>
1678           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a80cd33d519d5b1993e2a1de8b78b3059">xran_weight_based_beamforming_type</a></td>
1679         </tr>
1680       </table>
1681 </div><div class="memdoc">
1682 <p>Beamforming type, enumerated as "frequency", "time" or "hybrid" section 10.4.2 Weight-based dynamic beamforming </p>
1683 <table class="fieldtable">
1684 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a80cd33d519d5b1993e2a1de8b78b3059a459884d8e31ccd918c52f051b1b870d3"></a>XRAN_BF_T_FREQUENCY&#160;</td><td class="fielddoc"></td></tr>
1685 <tr><td class="fieldname"><a id="a80cd33d519d5b1993e2a1de8b78b3059aa2fb4539eb367f9d2c8f3392a5558f1d"></a>XRAN_BF_T_TIME&#160;</td><td class="fielddoc"></td></tr>
1686 <tr><td class="fieldname"><a id="a80cd33d519d5b1993e2a1de8b78b3059abdddd2bf1b12f6fe676edd6a56284ceb"></a>XRAN_BF_T_HYBRID&#160;</td><td class="fielddoc"></td></tr>
1687 <tr><td class="fieldname"><a id="a80cd33d519d5b1993e2a1de8b78b3059a3173fbcf6585cebb8a2e1959d908a003"></a>XRAN_BF_T_MAX&#160;</td><td class="fielddoc"></td></tr>
1688 </table>
1689
1690 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00229">229</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1691
1692 </div>
1693 </div>
1694 <a id="a1784f85d62401cba0ffb49c4d2467aae"></a>
1695 <h2 class="memtitle"><span class="permalink"><a href="#a1784f85d62401cba0ffb49c4d2467aae">&#9670;&nbsp;</a></span>XranFrameDuplexType</h2>
1696
1697 <div class="memitem">
1698 <div class="memproto">
1699       <table class="memname">
1700         <tr>
1701           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a1784f85d62401cba0ffb49c4d2467aae">XranFrameDuplexType</a></td>
1702         </tr>
1703       </table>
1704 </div><div class="memdoc">
1705 <table class="fieldtable">
1706 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1784f85d62401cba0ffb49c4d2467aaea852ad6bfdec7d14a64425c01c16d00c0"></a>XRAN_FDD&#160;</td><td class="fielddoc"></td></tr>
1707 <tr><td class="fieldname"><a id="a1784f85d62401cba0ffb49c4d2467aaeaf54a8e4c1661f320606100a7f5bc0d08"></a>XRAN_TDD&#160;</td><td class="fielddoc"></td></tr>
1708 </table>
1709
1710 <p class="definition">Definition at line <a class="el" href="xran__fh__o__du_8h_source.html#l00184">184</a> of file <a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>.</p>
1711
1712 </div>
1713 </div>
1714 <h2 class="groupheader">Function Documentation</h2>
1715 <a id="ac94e2474beef3b68521cfd391211b1be"></a>
1716 <h2 class="memtitle"><span class="permalink"><a href="#ac94e2474beef3b68521cfd391211b1be">&#9670;&nbsp;</a></span>xran_5g_fronthault_config()</h2>
1717
1718 <div class="memitem">
1719 <div class="memproto">
1720       <table class="memname">
1721         <tr>
1722           <td class="memname">int32_t xran_5g_fronthault_config </td>
1723           <td>(</td>
1724           <td class="paramtype">void *&#160;</td>
1725           <td class="paramname"><em>pHandle</em>, </td>
1726         </tr>
1727         <tr>
1728           <td class="paramkey"></td>
1729           <td></td>
1730           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1731           <td class="paramname"><em>pSrcBuffer</em>[XRAN_MAX_ANTENNA_NR][XRAN_N_FE_BUF_LEN], </td>
1732         </tr>
1733         <tr>
1734           <td class="paramkey"></td>
1735           <td></td>
1736           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1737           <td class="paramname"><em>pSrcCpBuffer</em>[XRAN_MAX_ANTENNA_NR][XRAN_N_FE_BUF_LEN], </td>
1738         </tr>
1739         <tr>
1740           <td class="paramkey"></td>
1741           <td></td>
1742           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1743           <td class="paramname"><em>pDstBuffer</em>[XRAN_MAX_ANTENNA_NR][XRAN_N_FE_BUF_LEN], </td>
1744         </tr>
1745         <tr>
1746           <td class="paramkey"></td>
1747           <td></td>
1748           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1749           <td class="paramname"><em>pDstCpBuffer</em>[XRAN_MAX_ANTENNA_NR][XRAN_N_FE_BUF_LEN], </td>
1750         </tr>
1751         <tr>
1752           <td class="paramkey"></td>
1753           <td></td>
1754           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a>&#160;</td>
1755           <td class="paramname"><em>pCallback</em>, </td>
1756         </tr>
1757         <tr>
1758           <td class="paramkey"></td>
1759           <td></td>
1760           <td class="paramtype">void *&#160;</td>
1761           <td class="paramname"><em>pCallbackTag</em>&#160;</td>
1762         </tr>
1763         <tr>
1764           <td></td>
1765           <td>)</td>
1766           <td></td><td></td>
1767         </tr>
1768       </table>
1769 </div><div class="memdoc">
1770 <p>Function configures TX(DL) and RX(UL) output buffers and callback (UL only) for XRAN layer with given handle</p>
1771 <dl class="params"><dt>Parameters</dt><dd>
1772   <table class="params">
1773     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
1774     <tr><td class="paramname">pSrcBuffer</td><td>list of memory buffers to use to fetch IQs from PHY to XRAN layer (DL) </td></tr>
1775     <tr><td class="paramname">pSrcCpBuffer</td><td>list of memory buffers to use to configure C-plane (DL) </td></tr>
1776     <tr><td class="paramname">pDstBuffer</td><td>list of memory buffers to use to deliver IQs from XRAN layer to PHY (UL) </td></tr>
1777     <tr><td class="paramname">pDstCpBuffer</td><td>list of memory buffers to use to configure C-plane (UL) </td></tr>
1778     <tr><td class="paramname">xran_transport_callback_fn</td><td>pCallback Callback function to call with arrival of all packets for given CC for given symbol </td></tr>
1779     <tr><td class="paramname">pCallbackTag</td><td>Parameters of Callback function</td></tr>
1780   </table>
1781   </dd>
1782 </dl>
1783 <dl class="section return"><dt>Returns</dt><dd>0 - on success -1 - on error </dd></dl>
1784
1785 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02551">2551</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
1786 <div class="dynheader">
1787 Here is the call graph for this function:</div>
1788 <div class="dyncontent">
1789 <div class="center"><img src="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_cgraph" alt=""/></div>
1790 <map name="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_cgraph" id="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_cgraph">
1791 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="183,13,308,39"/>
1792 </map>
1793 </div>
1794 <div class="dynheader">
1795 Here is the caller graph for this function:</div>
1796 <div class="dyncontent">
1797 <div class="center"><img src="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_icgraph" alt=""/></div>
1798 <map name="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_icgraph" id="xran__fh__o__du_8h_ac94e2474beef3b68521cfd391211b1be_icgraph">
1799 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="219,5,291,32"/>
1800 <area shape="rect" id="node3" href="classxran_lib_wraper.html#ad93226058ef4fd59bd7d0cd55701b752" title="xranLibWraper::Open" alt="" coords="183,56,328,83"/>
1801 <area shape="rect" id="node4" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="420,31,492,57"/>
1802 <area shape="rect" id="node6" href="class_init___sys___check.html#a3a1707f6479611fdc609a3eb8a0cef1b" title="Init_Sys_Check::SetUp" alt="" coords="376,81,536,108"/>
1803 <area shape="rect" id="node5" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="584,31,656,57"/>
1804 </map>
1805 </div>
1806
1807 </div>
1808 </div>
1809 <a id="ab204e979de14c21d34e9b88c6c700d25"></a>
1810 <h2 class="memtitle"><span class="permalink"><a href="#ab204e979de14c21d34e9b88c6c700d25">&#9670;&nbsp;</a></span>xran_5g_prach_req()</h2>
1811
1812 <div class="memitem">
1813 <div class="memproto">
1814       <table class="memname">
1815         <tr>
1816           <td class="memname">int32_t xran_5g_prach_req </td>
1817           <td>(</td>
1818           <td class="paramtype">void *&#160;</td>
1819           <td class="paramname"><em>pHandle</em>, </td>
1820         </tr>
1821         <tr>
1822           <td class="paramkey"></td>
1823           <td></td>
1824           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1825           <td class="paramname"><em>pDstBuffer</em>[XRAN_MAX_ANTENNA_NR][XRAN_N_FE_BUF_LEN], </td>
1826         </tr>
1827         <tr>
1828           <td class="paramkey"></td>
1829           <td></td>
1830           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a>&#160;</td>
1831           <td class="paramname"><em>pCallback</em>, </td>
1832         </tr>
1833         <tr>
1834           <td class="paramkey"></td>
1835           <td></td>
1836           <td class="paramtype">void *&#160;</td>
1837           <td class="paramname"><em>pCallbackTag</em>&#160;</td>
1838         </tr>
1839         <tr>
1840           <td></td>
1841           <td>)</td>
1842           <td></td><td></td>
1843         </tr>
1844       </table>
1845 </div><div class="memdoc">
1846 <p>Function configures PRACH output buffers and callback for XRAN layer with given handle</p>
1847 <dl class="params"><dt>Parameters</dt><dd>
1848   <table class="params">
1849     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
1850     <tr><td class="paramname">pDstBuffer</td><td>list of memory buffers to use to deliver PRACH IQs from xran layer to PHY </td></tr>
1851     <tr><td class="paramname">xran_transport_callback_fn</td><td>pCallback Callback function to call with arrival of PRACH packets for given CC </td></tr>
1852     <tr><td class="paramname">pCallbackTag</td><td>Parameters of Callback function</td></tr>
1853   </table>
1854   </dd>
1855 </dl>
1856 <dl class="section return"><dt>Returns</dt><dd>0 - on success -1 - on error </dd></dl>
1857
1858 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02636">2636</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
1859 <div class="dynheader">
1860 Here is the call graph for this function:</div>
1861 <div class="dyncontent">
1862 <div class="center"><img src="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_cgraph" alt=""/></div>
1863 <map name="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_cgraph" id="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_cgraph">
1864 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="185,5,311,32"/>
1865 </map>
1866 </div>
1867 <div class="dynheader">
1868 Here is the caller graph for this function:</div>
1869 <div class="dyncontent">
1870 <div class="center"><img src="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_icgraph" alt=""/></div>
1871 <map name="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_icgraph" id="xran__fh__o__du_8h_ab204e979de14c21d34e9b88c6c700d25_icgraph">
1872 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="222,5,294,32"/>
1873 <area shape="rect" id="node3" href="classxran_lib_wraper.html#ad93226058ef4fd59bd7d0cd55701b752" title="xranLibWraper::Open" alt="" coords="185,56,331,83"/>
1874 <area shape="rect" id="node4" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="423,31,495,57"/>
1875 <area shape="rect" id="node6" href="class_init___sys___check.html#a3a1707f6479611fdc609a3eb8a0cef1b" title="Init_Sys_Check::SetUp" alt="" coords="379,81,539,108"/>
1876 <area shape="rect" id="node5" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="587,31,659,57"/>
1877 </map>
1878 </div>
1879
1880 </div>
1881 </div>
1882 <a id="a2bd01fc3432f80a787d6bf317949dd80"></a>
1883 <h2 class="memtitle"><span class="permalink"><a href="#a2bd01fc3432f80a787d6bf317949dd80">&#9670;&nbsp;</a></span>xran_5g_srs_req()</h2>
1884
1885 <div class="memitem">
1886 <div class="memproto">
1887       <table class="memname">
1888         <tr>
1889           <td class="memname">int32_t xran_5g_srs_req </td>
1890           <td>(</td>
1891           <td class="paramtype">void *&#160;</td>
1892           <td class="paramname"><em>pHandle</em>, </td>
1893         </tr>
1894         <tr>
1895           <td class="paramkey"></td>
1896           <td></td>
1897           <td class="paramtype">struct <a class="el" href="structxran__buffer__list.html">xran_buffer_list</a> *&#160;</td>
1898           <td class="paramname"><em>pDstBuffer</em>[XRAN_MAX_ANT_ARRAY_ELM_NR][XRAN_N_FE_BUF_LEN], </td>
1899         </tr>
1900         <tr>
1901           <td class="paramkey"></td>
1902           <td></td>
1903           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#ad52207145e383ae136995f5a2b7dd82d">xran_transport_callback_fn</a>&#160;</td>
1904           <td class="paramname"><em>pCallback</em>, </td>
1905         </tr>
1906         <tr>
1907           <td class="paramkey"></td>
1908           <td></td>
1909           <td class="paramtype">void *&#160;</td>
1910           <td class="paramname"><em>pCallbackTag</em>&#160;</td>
1911         </tr>
1912         <tr>
1913           <td></td>
1914           <td>)</td>
1915           <td></td><td></td>
1916         </tr>
1917       </table>
1918 </div><div class="memdoc">
1919 <p>Function configures SRS output buffers and callback for XRAN layer with given handle</p>
1920 <dl class="params"><dt>Parameters</dt><dd>
1921   <table class="params">
1922     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
1923     <tr><td class="paramname">pDstBuffer</td><td>list of memory buffers to use to deliver SRS IQs from xran layer to PHY </td></tr>
1924     <tr><td class="paramname">xran_transport_callback_fn</td><td>pCallback Callback function to call with arrival of SRS packets for given CC </td></tr>
1925     <tr><td class="paramname">pCallbackTag</td><td>Parameters of Callback function</td></tr>
1926   </table>
1927   </dd>
1928 </dl>
1929 <dl class="section return"><dt>Returns</dt><dd>0 - on success -1 - on error </dd></dl>
1930
1931 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02679">2679</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
1932 <div class="dynheader">
1933 Here is the call graph for this function:</div>
1934 <div class="dyncontent">
1935 <div class="center"><img src="xran__fh__o__du_8h_a2bd01fc3432f80a787d6bf317949dd80_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_a2bd01fc3432f80a787d6bf317949dd80_cgraph" alt=""/></div>
1936 <map name="xran__fh__o__du_8h_a2bd01fc3432f80a787d6bf317949dd80_cgraph" id="xran__fh__o__du_8h_a2bd01fc3432f80a787d6bf317949dd80_cgraph">
1937 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="172,5,297,32"/>
1938 </map>
1939 </div>
1940
1941 </div>
1942 </div>
1943 <a id="a68b53cf51fb3aee4a6d8be54d540965a"></a>
1944 <h2 class="memtitle"><span class="permalink"><a href="#a68b53cf51fb3aee4a6d8be54d540965a">&#9670;&nbsp;</a></span>xran_add_hdr_offset()</h2>
1945
1946 <div class="memitem">
1947 <div class="memproto">
1948       <table class="memname">
1949         <tr>
1950           <td class="memname">uint8_t* xran_add_hdr_offset </td>
1951           <td>(</td>
1952           <td class="paramtype">uint8_t *&#160;</td>
1953           <td class="paramname"><em>dst</em>, </td>
1954         </tr>
1955         <tr>
1956           <td class="paramkey"></td>
1957           <td></td>
1958           <td class="paramtype">int16_t&#160;</td>
1959           <td class="paramname"><em>compMethod</em>&#160;</td>
1960         </tr>
1961         <tr>
1962           <td></td>
1963           <td>)</td>
1964           <td></td><td></td>
1965         </tr>
1966       </table>
1967 </div><div class="memdoc">
1968 <p>Function calculates offset for ptr according to ORAN headers requared</p>
1969 <dl class="params"><dt>Parameters</dt><dd>
1970   <table class="params">
1971     <tr><td class="paramname">dst</td><td>pointer to be addjusted  compression method according to enum xran_compression_method</td></tr>
1972   </table>
1973   </dd>
1974 </dl>
1975 <dl class="section return"><dt>Returns</dt><dd>ptr - pointer to payload given header requared </dd></dl>
1976
1977 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02741">2741</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
1978
1979 </div>
1980 </div>
1981 <a id="ae79ca138dc77d69ef692886be4e5da81"></a>
1982 <h2 class="memtitle"><span class="permalink"><a href="#ae79ca138dc77d69ef692886be4e5da81">&#9670;&nbsp;</a></span>xran_bm_allocate_buffer()</h2>
1983
1984 <div class="memitem">
1985 <div class="memproto">
1986       <table class="memname">
1987         <tr>
1988           <td class="memname">int32_t xran_bm_allocate_buffer </td>
1989           <td>(</td>
1990           <td class="paramtype">void *&#160;</td>
1991           <td class="paramname"><em>pHandle</em>, </td>
1992         </tr>
1993         <tr>
1994           <td class="paramkey"></td>
1995           <td></td>
1996           <td class="paramtype">uint32_t&#160;</td>
1997           <td class="paramname"><em>nPoolIndex</em>, </td>
1998         </tr>
1999         <tr>
2000           <td class="paramkey"></td>
2001           <td></td>
2002           <td class="paramtype">void **&#160;</td>
2003           <td class="paramname"><em>ppData</em>, </td>
2004         </tr>
2005         <tr>
2006           <td class="paramkey"></td>
2007           <td></td>
2008           <td class="paramtype">void **&#160;</td>
2009           <td class="paramname"><em>ppCtrl</em>&#160;</td>
2010         </tr>
2011         <tr>
2012           <td></td>
2013           <td>)</td>
2014           <td></td><td></td>
2015         </tr>
2016       </table>
2017 </div><div class="memdoc">
2018 <p>Function allocates buffer used between XRAN layer and PHY. In general case it's DPDK mbuf.</p>
2019 <dl class="params"><dt>Parameters</dt><dd>
2020   <table class="params">
2021     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2022     <tr><td class="paramname">nPoolIndex</td><td>buffer pool identification </td></tr>
2023     <tr><td class="paramname">ppData</td><td>Pointer to pointer where to store address of new buffer </td></tr>
2024     <tr><td class="paramname">ppCtrl</td><td>Pointer to pointer where to store address of internal private control information</td></tr>
2025   </table>
2026   </dd>
2027 </dl>
2028 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2029
2030 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02499">2499</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2031 <div class="dynheader">
2032 Here is the caller graph for this function:</div>
2033 <div class="dyncontent">
2034 <div class="center"><img src="xran__fh__o__du_8h_ae79ca138dc77d69ef692886be4e5da81_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_ae79ca138dc77d69ef692886be4e5da81_icgraph" alt=""/></div>
2035 <map name="xran__fh__o__du_8h_ae79ca138dc77d69ef692886be4e5da81_icgraph" id="xran__fh__o__du_8h_ae79ca138dc77d69ef692886be4e5da81_icgraph">
2036 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="217,5,289,32"/>
2037 </map>
2038 </div>
2039
2040 </div>
2041 </div>
2042 <a id="a0f904fe772b55bcfc449759a23063aa3"></a>
2043 <h2 class="memtitle"><span class="permalink"><a href="#a0f904fe772b55bcfc449759a23063aa3">&#9670;&nbsp;</a></span>xran_bm_free_buffer()</h2>
2044
2045 <div class="memitem">
2046 <div class="memproto">
2047       <table class="memname">
2048         <tr>
2049           <td class="memname">int32_t xran_bm_free_buffer </td>
2050           <td>(</td>
2051           <td class="paramtype">void *&#160;</td>
2052           <td class="paramname"><em>pHandle</em>, </td>
2053         </tr>
2054         <tr>
2055           <td class="paramkey"></td>
2056           <td></td>
2057           <td class="paramtype">void *&#160;</td>
2058           <td class="paramname"><em>pData</em>, </td>
2059         </tr>
2060         <tr>
2061           <td class="paramkey"></td>
2062           <td></td>
2063           <td class="paramtype">void *&#160;</td>
2064           <td class="paramname"><em>pCtrl</em>&#160;</td>
2065         </tr>
2066         <tr>
2067           <td></td>
2068           <td>)</td>
2069           <td></td><td></td>
2070         </tr>
2071       </table>
2072 </div><div class="memdoc">
2073 <p>Function frees buffer used between XRAN layer and PHY. In general case it's DPDK mbuf</p>
2074 <dl class="params"><dt>Parameters</dt><dd>
2075   <table class="params">
2076     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2077     <tr><td class="paramname">pData</td><td>Pointer to buffer </td></tr>
2078     <tr><td class="paramname">pData</td><td>Pointer to internal private control information</td></tr>
2079   </table>
2080   </dd>
2081 </dl>
2082 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2083
2084 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02541">2541</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2085 <div class="dynheader">
2086 Here is the caller graph for this function:</div>
2087 <div class="dyncontent">
2088 <div class="center"><img src="xran__fh__o__du_8h_a0f904fe772b55bcfc449759a23063aa3_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a0f904fe772b55bcfc449759a23063aa3_icgraph" alt=""/></div>
2089 <map name="xran__fh__o__du_8h_a0f904fe772b55bcfc449759a23063aa3_icgraph" id="xran__fh__o__du_8h_a0f904fe772b55bcfc449759a23063aa3_icgraph">
2090 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="195,5,267,32"/>
2091 </map>
2092 </div>
2093
2094 </div>
2095 </div>
2096 <a id="a39a9f7b5d01979eb1f8d806d6b9c50fe"></a>
2097 <h2 class="memtitle"><span class="permalink"><a href="#a39a9f7b5d01979eb1f8d806d6b9c50fe">&#9670;&nbsp;</a></span>xran_bm_init()</h2>
2098
2099 <div class="memitem">
2100 <div class="memproto">
2101       <table class="memname">
2102         <tr>
2103           <td class="memname">int32_t xran_bm_init </td>
2104           <td>(</td>
2105           <td class="paramtype">void *&#160;</td>
2106           <td class="paramname"><em>pHandle</em>, </td>
2107         </tr>
2108         <tr>
2109           <td class="paramkey"></td>
2110           <td></td>
2111           <td class="paramtype">uint32_t *&#160;</td>
2112           <td class="paramname"><em>pPoolIndex</em>, </td>
2113         </tr>
2114         <tr>
2115           <td class="paramkey"></td>
2116           <td></td>
2117           <td class="paramtype">uint32_t&#160;</td>
2118           <td class="paramname"><em>nNumberOfBuffers</em>, </td>
2119         </tr>
2120         <tr>
2121           <td class="paramkey"></td>
2122           <td></td>
2123           <td class="paramtype">uint32_t&#160;</td>
2124           <td class="paramname"><em>nBufferSize</em>&#160;</td>
2125         </tr>
2126         <tr>
2127           <td></td>
2128           <td>)</td>
2129           <td></td><td></td>
2130         </tr>
2131       </table>
2132 </div><div class="memdoc">
2133 <p>Function allocates buffer memory (bm) used between XRAN layer and PHY. In general case it's DPDK mbuf. it uses Memory Management system to get memory chunk and define memory pool on top of it.</p>
2134 <dl class="params"><dt>Parameters</dt><dd>
2135   <table class="params">
2136     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2137     <tr><td class="paramname">nPoolIndex</td><td>pointer to buffer pool identification to be returned </td></tr>
2138     <tr><td class="paramname">nNumberOfBuffers</td><td>number of buffer to allocate in the pool </td></tr>
2139     <tr><td class="paramname">nBufferSize</td><td>buffer size to allocate</td></tr>
2140   </table>
2141   </dd>
2142 </dl>
2143 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2144
2145 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02454">2454</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2146 <div class="dynheader">
2147 Here is the caller graph for this function:</div>
2148 <div class="dyncontent">
2149 <div class="center"><img src="xran__fh__o__du_8h_a39a9f7b5d01979eb1f8d806d6b9c50fe_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a39a9f7b5d01979eb1f8d806d6b9c50fe_icgraph" alt=""/></div>
2150 <map name="xran__fh__o__du_8h_a39a9f7b5d01979eb1f8d806d6b9c50fe_icgraph" id="xran__fh__o__du_8h_a39a9f7b5d01979eb1f8d806d6b9c50fe_icgraph">
2151 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="149,5,221,32"/>
2152 </map>
2153 </div>
2154
2155 </div>
2156 </div>
2157 <a id="a2f8866c9d6536a56e4d8232b8c45808b"></a>
2158 <h2 class="memtitle"><span class="permalink"><a href="#a2f8866c9d6536a56e4d8232b8c45808b">&#9670;&nbsp;</a></span>xran_close()</h2>
2159
2160 <div class="memitem">
2161 <div class="memproto">
2162       <table class="memname">
2163         <tr>
2164           <td class="memname">int32_t xran_close </td>
2165           <td>(</td>
2166           <td class="paramtype">void *&#160;</td>
2167           <td class="paramname"><em>pHandle</em></td><td>)</td>
2168           <td></td>
2169         </tr>
2170       </table>
2171 </div><div class="memdoc">
2172 <p>Function closes XRAN layer with given handle</p>
2173 <dl class="params"><dt>Parameters</dt><dd>
2174   <table class="params">
2175     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC</td></tr>
2176   </table>
2177   </dd>
2178 </dl>
2179 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2180
2181 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02863">2863</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2182 <div class="dynheader">
2183 Here is the caller graph for this function:</div>
2184 <div class="dyncontent">
2185 <div class="center"><img src="xran__fh__o__du_8h_a2f8866c9d6536a56e4d8232b8c45808b_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a2f8866c9d6536a56e4d8232b8c45808b_icgraph" alt=""/></div>
2186 <map name="xran__fh__o__du_8h_a2f8866c9d6536a56e4d8232b8c45808b_icgraph" id="xran__fh__o__du_8h_a2f8866c9d6536a56e4d8232b8c45808b_icgraph">
2187 <area shape="rect" id="node2" href="classxran_lib_wraper.html#a931587596081ef8178c2b128facb0411" title="xranLibWraper::TearDown" alt="" coords="139,5,313,32"/>
2188 <area shape="rect" id="node3" href="classxran_lib_wraper.html#a7f7a3199c392465d0767c6506c1af5b4" title="xranLibWraper::Close" alt="" coords="152,56,300,83"/>
2189 <area shape="rect" id="node4" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="417,31,489,57"/>
2190 <area shape="rect" id="node6" href="class_init___sys___check.html#ac4fca95dc3b93372ce7f2078baf8e8b6" title="Init_Sys_Check::TearDown" alt="" coords="361,81,544,108"/>
2191 <area shape="rect" id="node5" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="592,31,664,57"/>
2192 </map>
2193 </div>
2194
2195 </div>
2196 </div>
2197 <a id="ac153c5a3e3f4f64ab0fafca6f593c380"></a>
2198 <h2 class="memtitle"><span class="permalink"><a href="#ac153c5a3e3f4f64ab0fafca6f593c380">&#9670;&nbsp;</a></span>xran_get_common_counters()</h2>
2199
2200 <div class="memitem">
2201 <div class="memproto">
2202       <table class="memname">
2203         <tr>
2204           <td class="memname">int32_t xran_get_common_counters </td>
2205           <td>(</td>
2206           <td class="paramtype">void *&#160;</td>
2207           <td class="paramname"><em>pXranLayerHandle</em>, </td>
2208         </tr>
2209         <tr>
2210           <td class="paramkey"></td>
2211           <td></td>
2212           <td class="paramtype">struct <a class="el" href="structxran__common__counters.html">xran_common_counters</a> *&#160;</td>
2213           <td class="paramname"><em>pStats</em>&#160;</td>
2214         </tr>
2215         <tr>
2216           <td></td>
2217           <td>)</td>
2218           <td></td><td></td>
2219         </tr>
2220       </table>
2221 </div><div class="memdoc">
2222 <p>Function retrun XRAN layer common counters for given handle</p>
2223 <dl class="params"><dt>Parameters</dt><dd>
2224   <table class="params">
2225     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC</td></tr>
2226     <tr><td class="paramname">pStats</td><td>Pointer to pointer of common counter structure</td></tr>
2227   </table>
2228   </dd>
2229 </dl>
2230 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2231
2232 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l03074">3074</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2233 <div class="dynheader">
2234 Here is the caller graph for this function:</div>
2235 <div class="dyncontent">
2236 <div class="center"><img src="xran__fh__o__du_8h_ac153c5a3e3f4f64ab0fafca6f593c380_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_ac153c5a3e3f4f64ab0fafca6f593c380_icgraph" alt=""/></div>
2237 <map name="xran__fh__o__du_8h_ac153c5a3e3f4f64ab0fafca6f593c380_icgraph" id="xran__fh__o__du_8h_ac153c5a3e3f4f64ab0fafca6f593c380_icgraph">
2238 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#a8e9607426b34de712f7d450018d0dc05" title="TEST_P" alt="" coords="240,5,312,32"/>
2239 </map>
2240 </div>
2241
2242 </div>
2243 </div>
2244 <a id="a937105f52446cfcb951e43e1dc3c4d8b"></a>
2245 <h2 class="memtitle"><span class="permalink"><a href="#a937105f52446cfcb951e43e1dc3c4d8b">&#9670;&nbsp;</a></span>xran_get_if_state()</h2>
2246
2247 <div class="memitem">
2248 <div class="memproto">
2249       <table class="memname">
2250         <tr>
2251           <td class="memname">enum <a class="el" href="xran__fh__o__du_8h.html#a2f600110ab5726a0f21375b7f24c0326">xran_if_state</a> xran_get_if_state </td>
2252           <td>(</td>
2253           <td class="paramtype">void&#160;</td>
2254           <td class="paramname"></td><td>)</td>
2255           <td></td>
2256         </tr>
2257       </table>
2258 </div><div class="memdoc">
2259 <p>Function returns status of operation of FH layer</p>
2260 <dl class="section return"><dt>Returns</dt><dd>XRAN_INIT - init state XRAN_RUNNING - running XRAN_STOPPED - stopped </dd></dl>
2261
2262 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l00238">238</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2263 <div class="dynheader">
2264 Here is the caller graph for this function:</div>
2265 <div class="dyncontent">
2266 <div class="center"><img src="xran__fh__o__du_8h_a937105f52446cfcb951e43e1dc3c4d8b_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a937105f52446cfcb951e43e1dc3c4d8b_icgraph" alt=""/></div>
2267 <map name="xran__fh__o__du_8h_a937105f52446cfcb951e43e1dc3c4d8b_icgraph" id="xran__fh__o__du_8h_a937105f52446cfcb951e43e1dc3c4d8b_icgraph">
2268 <area shape="rect" id="node2" href="classxran_lib_wraper.html#a61da580fc69a74f3ef17956ba5fd88a0" title="xranLibWraper::is_running" alt="" coords="181,18,354,45"/>
2269 <area shape="rect" id="node5" href="xran__main_8c.html#ad4852c0827600db95f9841e2f5f9f6f1" title="xran_start" alt="" coords="227,75,307,102"/>
2270 <area shape="rect" id="node8" href="xran__main_8c.html#a8f2daee2fe90126f1f7c361b7760a7a3" title="xran_stop" alt="" coords="228,133,307,159"/>
2271 <area shape="rect" id="node10" href="xran__main_8c.html#a4120602c15ddabfc3372e238d17f0414" title="xran_mm_destroy" alt="" coords="204,195,331,222"/>
2272 <area shape="rect" id="node13" href="xran__main_8c.html#adfcabe4091a4782ecb9ca029314c99ca" title="xran_reg_sym_cb" alt="" coords="205,271,330,298"/>
2273 <area shape="rect" id="node15" href="xran__main_8c.html#a57bc216aff0d372305a6d13a072c605b" title="xran_reg_physide_cb" alt="" coords="195,325,340,351"/>
2274 <area shape="rect" id="node21" href="xran__main_8c.html#ad1ada9c5c57979c50f1a17a9050b8f3a" title="xran_register_cb_mbuf2ring" alt="" coords="176,375,359,402"/>
2275 <area shape="rect" id="node3" href="classxran_lib_wraper.html#a165ca95dea40ce1abcc161f39087d38d" title="xranLibWraper::apply\l_cpenable" alt="" coords="407,5,552,47"/>
2276 <area shape="rect" id="node4" href="chain__tests_8cc.html#a2bc2178388f6edfa69905ff5f52fbcdc" title="TEST_P" alt="" coords="644,13,716,39"/>
2277 <area shape="rect" id="node6" href="classxran_lib_wraper.html#af9989f7ffd89540fc26371e24a29fefc" title="xranLibWraper::Start" alt="" coords="408,71,551,98"/>
2278 <area shape="rect" id="node7" href="init__sys__functional_8cc.html#a03935019c7cdf89f54e582fbaf9bff76" title="TEST_P" alt="" coords="644,97,716,123"/>
2279 <area shape="rect" id="node9" href="classxran_lib_wraper.html#af7c499a1fa8e52a104500d7d01c1a280" title="xranLibWraper::Stop" alt="" coords="409,122,550,149"/>
2280 <area shape="rect" id="node11" href="init__sys__functional_8cc.html#ae5f944f4eff8e2963b83b56f208a114d" title="TEST_P" alt="" coords="443,173,515,199"/>
2281 <area shape="rect" id="node12" href="sample-app_8c.html#ac871776e03d4a4ae1717d2600a7f7dff" title="stop_xran" alt="" coords="440,223,519,250"/>
2282 <area shape="rect" id="node14" href="init__sys__functional_8cc.html#a7b1dc2a3c7a3d8e2eb7f2616417feb75" title="TEST_P" alt="" coords="443,274,515,301"/>
2283 <area shape="rect" id="node16" href="init__sys__functional_8cc.html#a74a4819defc7dbd1cfa7e793456be743" title="TEST_P" alt="" coords="443,325,515,351"/>
2284 <area shape="rect" id="node17" href="classxran_lib_wraper.html#ad93226058ef4fd59bd7d0cd55701b752" title="xranLibWraper::Open" alt="" coords="407,375,552,402"/>
2285 <area shape="rect" id="node18" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="644,350,716,377"/>
2286 <area shape="rect" id="node20" href="class_init___sys___check.html#a3a1707f6479611fdc609a3eb8a0cef1b" title="Init_Sys_Check::SetUp" alt="" coords="600,401,760,427"/>
2287 <area shape="rect" id="node19" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="808,350,880,377"/>
2288 </map>
2289 </div>
2290
2291 </div>
2292 </div>
2293 <a id="a2816fdf0ed3269e998720d01c2b6bf76"></a>
2294 <h2 class="memtitle"><span class="permalink"><a href="#a2816fdf0ed3269e998720d01c2b6bf76">&#9670;&nbsp;</a></span>xran_get_slot_idx()</h2>
2295
2296 <div class="memitem">
2297 <div class="memproto">
2298       <table class="memname">
2299         <tr>
2300           <td class="memname">int32_t xran_get_slot_idx </td>
2301           <td>(</td>
2302           <td class="paramtype">uint32_t *&#160;</td>
2303           <td class="paramname"><em>nFrameIdx</em>, </td>
2304         </tr>
2305         <tr>
2306           <td class="paramkey"></td>
2307           <td></td>
2308           <td class="paramtype">uint32_t *&#160;</td>
2309           <td class="paramname"><em>nSubframeIdx</em>, </td>
2310         </tr>
2311         <tr>
2312           <td class="paramkey"></td>
2313           <td></td>
2314           <td class="paramtype">uint32_t *&#160;</td>
2315           <td class="paramname"><em>nSlotIdx</em>, </td>
2316         </tr>
2317         <tr>
2318           <td class="paramkey"></td>
2319           <td></td>
2320           <td class="paramtype">uint64_t *&#160;</td>
2321           <td class="paramname"><em>nSecond</em>&#160;</td>
2322         </tr>
2323         <tr>
2324           <td></td>
2325           <td>)</td>
2326           <td></td><td></td>
2327         </tr>
2328       </table>
2329 </div><div class="memdoc">
2330 <p>Function returns current TTI, Frame, Subframe, Slot Number as seen "Over air" base on PTP time</p>
2331 <dl class="params"><dt>Parameters</dt><dd>
2332   <table class="params">
2333     <tr><td class="paramname">nFrameIdx</td><td>Pointer to Frame number [0-99]</td></tr>
2334     <tr><td class="paramname">nSubframeIdx</td><td>Pointer to Subframe number [0-10]</td></tr>
2335     <tr><td class="paramname">nSlotIdx</td><td>Pointer to Slot number [0-7]</td></tr>
2336     <tr><td class="paramname">nSecond</td><td>Pointer to current UTC second</td></tr>
2337   </table>
2338   </dd>
2339 </dl>
2340 <dl class="section return"><dt>Returns</dt><dd>current TTI number [0-7999] </dd></dl>
2341
2342 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02936">2936</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2343 <div class="dynheader">
2344 Here is the caller graph for this function:</div>
2345 <div class="dyncontent">
2346 <div class="center"><img src="xran__fh__o__du_8h_a2816fdf0ed3269e998720d01c2b6bf76_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a2816fdf0ed3269e998720d01c2b6bf76_icgraph" alt=""/></div>
2347 <map name="xran__fh__o__du_8h_a2816fdf0ed3269e998720d01c2b6bf76_icgraph" id="xran__fh__o__du_8h_a2816fdf0ed3269e998720d01c2b6bf76_icgraph">
2348 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#a593270c79e8ce298caeb715272c65173" title="TEST_P" alt="" coords="219,5,291,32"/>
2349 <area shape="rect" id="node3" href="xran__main_8c.html#ad4544f4d6f4713c010f083bce5758d14" title="rx_ul_deadline_half_cb" alt="" coords="177,56,332,83"/>
2350 <area shape="rect" id="node4" href="xran__main_8c.html#a63aa00dad3b771f4db5df8ca8ac68323" title="rx_ul_deadline_full_cb" alt="" coords="179,107,330,133"/>
2351 </map>
2352 </div>
2353
2354 </div>
2355 </div>
2356 <a id="ac5d259c362d10b47c233b5098052cbf2"></a>
2357 <h2 class="memtitle"><span class="permalink"><a href="#ac5d259c362d10b47c233b5098052cbf2">&#9670;&nbsp;</a></span>xran_get_time_stats()</h2>
2358
2359 <div class="memitem">
2360 <div class="memproto">
2361       <table class="memname">
2362         <tr>
2363           <td class="memname">uint32_t xran_get_time_stats </td>
2364           <td>(</td>
2365           <td class="paramtype">uint64_t *&#160;</td>
2366           <td class="paramname"><em>total_time</em>, </td>
2367         </tr>
2368         <tr>
2369           <td class="paramkey"></td>
2370           <td></td>
2371           <td class="paramtype">uint64_t *&#160;</td>
2372           <td class="paramname"><em>used_time</em>, </td>
2373         </tr>
2374         <tr>
2375           <td class="paramkey"></td>
2376           <td></td>
2377           <td class="paramtype">uint32_t *&#160;</td>
2378           <td class="paramname"><em>core_used</em>, </td>
2379         </tr>
2380         <tr>
2381           <td class="paramkey"></td>
2382           <td></td>
2383           <td class="paramtype">uint32_t&#160;</td>
2384           <td class="paramname"><em>clear</em>&#160;</td>
2385         </tr>
2386         <tr>
2387           <td></td>
2388           <td>)</td>
2389           <td></td><td></td>
2390         </tr>
2391       </table>
2392 </div><div class="memdoc">
2393 <p>Function returns XRAN core utilization stats</p>
2394 <dl class="params"><dt>Parameters</dt><dd>
2395   <table class="params">
2396     <tr><td class="paramname">total_time</td><td>(out) Pointer to variable to store Total time thread has been running </td></tr>
2397     <tr><td class="paramname">used_time</td><td>(out) Pointer to variable to store Total time essential tasks have been running on the thread </td></tr>
2398     <tr><td class="paramname">core_used</td><td>(out) Pointer to variable to store Core on which the XRAN thread is running </td></tr>
2399     <tr><td class="paramname">clear</td><td>(in) If set to 1, then internal variables total_time and used_time are cleared</td></tr>
2400   </table>
2401   </dd>
2402 </dl>
2403 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2404
2405 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02721">2721</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2406
2407 </div>
2408 </div>
2409 <a id="a3efe8aba779b0a2f90adc02065579f5f"></a>
2410 <h2 class="memtitle"><span class="permalink"><a href="#a3efe8aba779b0a2f90adc02065579f5f">&#9670;&nbsp;</a></span>xran_init()</h2>
2411
2412 <div class="memitem">
2413 <div class="memproto">
2414       <table class="memname">
2415         <tr>
2416           <td class="memname">int32_t xran_init </td>
2417           <td>(</td>
2418           <td class="paramtype">int&#160;</td>
2419           <td class="paramname"><em>argc</em>, </td>
2420         </tr>
2421         <tr>
2422           <td class="paramkey"></td>
2423           <td></td>
2424           <td class="paramtype">char *&#160;</td>
2425           <td class="paramname"><em>argv</em>[], </td>
2426         </tr>
2427         <tr>
2428           <td class="paramkey"></td>
2429           <td></td>
2430           <td class="paramtype">struct <a class="el" href="structxran__fh__init.html">xran_fh_init</a> *&#160;</td>
2431           <td class="paramname"><em>p_xran_fh_init</em>, </td>
2432         </tr>
2433         <tr>
2434           <td class="paramkey"></td>
2435           <td></td>
2436           <td class="paramtype">char *&#160;</td>
2437           <td class="paramname"><em>appName</em>, </td>
2438         </tr>
2439         <tr>
2440           <td class="paramkey"></td>
2441           <td></td>
2442           <td class="paramtype">void **&#160;</td>
2443           <td class="paramname"><em>pHandle</em>&#160;</td>
2444         </tr>
2445         <tr>
2446           <td></td>
2447           <td>)</td>
2448           <td></td><td></td>
2449         </tr>
2450       </table>
2451 </div><div class="memdoc">
2452 <p>Initialize the XRAN Layer via DPDK.</p>
2453 <dl class="params"><dt>Parameters</dt><dd>
2454   <table class="params">
2455     <tr><td class="paramname">argc</td><td>A non-negative value. If it is greater than 0, the array members for argv[0] through argv[argc] (non-inclusive) shall contain pointers to strings. </td></tr>
2456     <tr><td class="paramname">argv</td><td>An array of strings. The contents of the array, as well as the strings which are pointed to by the array, may be modified by this function.</td></tr>
2457   </table>
2458   </dd>
2459 </dl>
2460 <dl class="section return"><dt>Returns</dt><dd>0 - on success Error codes returned via rte_errno </dd></dl>
2461
2462 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02319">2319</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2463 <div class="dynheader">
2464 Here is the call graph for this function:</div>
2465 <div class="dyncontent">
2466 <div class="center"><img src="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_cgraph" alt=""/></div>
2467 <map name="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_cgraph" id="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_cgraph">
2468 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="1131,245,1256,272"/>
2469 <area shape="rect" id="node3" href="ethdi_8c.html#a69c763967ba7e28c4a589ce624c226ff" title="xran_register_ethertype\l_handler" alt="" coords="124,86,283,127"/>
2470 <area shape="rect" id="node4" href="xran__main_8c.html#a7a412a9cd0ac919dccb2112fb386d64a" title="handle_ecpri_ethertype" alt="" coords="125,152,281,179"/>
2471 <area shape="rect" id="node16" href="ethdi_8c.html#a97dcf8200aebed714f47764c302a06b5" title="xran_ethdi_init_dpdk_io" alt="" coords="124,203,283,229"/>
2472 <area shape="rect" id="node5" href="xran__common_8c.html#a3d4bd5c7eec6da4ab71688e209100761" title="process_mbuf" alt="" coords="335,195,439,221"/>
2473 <area shape="rect" id="node15" href="xran__main_8c.html#a4eb2b37a85455e8078520bcea40296cc" title="process_cplane" alt="" coords="331,245,444,272"/>
2474 <area shape="rect" id="node6" href="xran__common_8h.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="513,93,638,120"/>
2475 <area shape="rect" id="node7" href="xran__common_8h.html#a3fc01469558ddf728239d59038ac5803" title="Get the configuration of the number of antenna for UL. " alt="" coords="505,144,646,171"/>
2476 <area shape="rect" id="node8" href="xran__up__api_8h.html#adfc5ea408600c8de1384be020b359d95" title="Function extracts IQ samples from received mbuf packet. " alt="" coords="492,195,659,221"/>
2477 <area shape="rect" id="node11" href="xran__common_8c.html#ac5201df2d161091f7319ff2f57432823" title="xran_pkt_validate" alt="" coords="730,245,854,272"/>
2478 <area shape="rect" id="node12" href="xran__common_8c.html#a300b87c29358bb161404c0122a9b2a46" title="xran_process_srs_sym" alt="" coords="925,296,1083,323"/>
2479 <area shape="rect" id="node13" href="xran__common_8c.html#aec7f5a73cca88563e12b7e82e7c75b50" title="xran_process_prach_sym" alt="" coords="707,347,877,373"/>
2480 <area shape="rect" id="node14" href="xran__common_8c.html#acb6ecf7858c99c963182b9b7884deca6" title="xran_process_rx_sym" alt="" coords="929,397,1079,424"/>
2481 <area shape="rect" id="node9" href="xran__transport_8h.html#ab08a85b6527f45a9ba22d25061a96a3c" title="Decompose ecpriRtcid/ecpriPcid. " alt="" coords="719,195,865,221"/>
2482 <area shape="rect" id="node10" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="932,195,1076,221"/>
2483 </map>
2484 </div>
2485 <div class="dynheader">
2486 Here is the caller graph for this function:</div>
2487 <div class="dyncontent">
2488 <div class="center"><img src="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_icgraph" alt=""/></div>
2489 <map name="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_icgraph" id="xran__fh__o__du_8h_a3efe8aba779b0a2f90adc02065579f5f_icgraph">
2490 <area shape="rect" id="node2" href="classxran_lib_wraper.html#a126b53d8cc57521b34496dbe3a26621f" title="xranLibWraper::SetUp" alt="" coords="124,5,275,32"/>
2491 </map>
2492 </div>
2493
2494 </div>
2495 </div>
2496 <a id="ad32fb64c20521dbcfeb317e143046e27"></a>
2497 <h2 class="memtitle"><span class="permalink"><a href="#ad32fb64c20521dbcfeb317e143046e27">&#9670;&nbsp;</a></span>xran_malloc()</h2>
2498
2499 <div class="memitem">
2500 <div class="memproto">
2501       <table class="memname">
2502         <tr>
2503           <td class="memname">void* xran_malloc </td>
2504           <td>(</td>
2505           <td class="paramtype">size_t&#160;</td>
2506           <td class="paramname"><em>buf_len</em></td><td>)</td>
2507           <td></td>
2508         </tr>
2509       </table>
2510 </div><div class="memdoc">
2511 <p>Function allocates memory of given size from heap</p>
2512 <dl class="params"><dt>Parameters</dt><dd>
2513   <table class="params">
2514     <tr><td class="paramname">buf_len</td><td>buffer size</td></tr>
2515   </table>
2516   </dd>
2517 </dl>
2518 <dl class="section return"><dt>Returns</dt><dd>ptr - to memory buffer or NULL </dd></dl>
2519
2520 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02736">2736</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2521
2522 </div>
2523 </div>
2524 <a id="a4120602c15ddabfc3372e238d17f0414"></a>
2525 <h2 class="memtitle"><span class="permalink"><a href="#a4120602c15ddabfc3372e238d17f0414">&#9670;&nbsp;</a></span>xran_mm_destroy()</h2>
2526
2527 <div class="memitem">
2528 <div class="memproto">
2529       <table class="memname">
2530         <tr>
2531           <td class="memname">int32_t xran_mm_destroy </td>
2532           <td>(</td>
2533           <td class="paramtype">void *&#160;</td>
2534           <td class="paramname"><em>pHandle</em></td><td>)</td>
2535           <td></td>
2536         </tr>
2537       </table>
2538 </div><div class="memdoc">
2539 <p>Function destroys Memory Management (MM) layer of XRAN library</p>
2540 <dl class="params"><dt>Parameters</dt><dd>
2541   <table class="params">
2542     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC</td></tr>
2543   </table>
2544   </dd>
2545 </dl>
2546 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2547
2548 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02877">2877</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2549 <div class="dynheader">
2550 Here is the call graph for this function:</div>
2551 <div class="dyncontent">
2552 <div class="center"><img src="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_cgraph" alt=""/></div>
2553 <map name="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_cgraph" id="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_cgraph">
2554 <area shape="rect" id="node2" href="xran__main_8c.html#a937105f52446cfcb951e43e1dc3c4d8b" title="xran_get_if_state" alt="" coords="180,5,303,32"/>
2555 </map>
2556 </div>
2557 <div class="dynheader">
2558 Here is the caller graph for this function:</div>
2559 <div class="dyncontent">
2560 <div class="center"><img src="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_icgraph" alt=""/></div>
2561 <map name="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_icgraph" id="xran__fh__o__du_8h_a4120602c15ddabfc3372e238d17f0414_icgraph">
2562 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ae5f944f4eff8e2963b83b56f208a114d" title="TEST_P" alt="" coords="183,5,255,32"/>
2563 <area shape="rect" id="node3" href="sample-app_8c.html#ac871776e03d4a4ae1717d2600a7f7dff" title="stop_xran" alt="" coords="180,56,259,83"/>
2564 </map>
2565 </div>
2566
2567 </div>
2568 </div>
2569 <a id="a999189549fd6b524b733ddd61f1f9962"></a>
2570 <h2 class="memtitle"><span class="permalink"><a href="#a999189549fd6b524b733ddd61f1f9962">&#9670;&nbsp;</a></span>xran_mm_init()</h2>
2571
2572 <div class="memitem">
2573 <div class="memproto">
2574       <table class="memname">
2575         <tr>
2576           <td class="memname">int32_t xran_mm_init </td>
2577           <td>(</td>
2578           <td class="paramtype">void *&#160;</td>
2579           <td class="paramname"><em>pHandle</em>, </td>
2580         </tr>
2581         <tr>
2582           <td class="paramkey"></td>
2583           <td></td>
2584           <td class="paramtype">uint64_t&#160;</td>
2585           <td class="paramname"><em>nMemorySize</em>, </td>
2586         </tr>
2587         <tr>
2588           <td class="paramkey"></td>
2589           <td></td>
2590           <td class="paramtype">uint32_t&#160;</td>
2591           <td class="paramname"><em>nMemorySegmentSize</em>&#160;</td>
2592         </tr>
2593         <tr>
2594           <td></td>
2595           <td>)</td>
2596           <td></td><td></td>
2597         </tr>
2598       </table>
2599 </div><div class="memdoc">
2600 <p>Function initialize Memory Management subsystem (mm) in order to handle memory buffers between XRAN layer and PHY.</p>
2601 <dl class="params"><dt>Parameters</dt><dd>
2602   <table class="params">
2603     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2604     <tr><td class="paramname">nMemorySize</td><td>memory size of all segments </td></tr>
2605     <tr><td class="paramname">nMemorySegmentSize</td><td>size of memory per segment</td></tr>
2606   </table>
2607   </dd>
2608 </dl>
2609 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2610
2611 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02447">2447</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2612 <div class="dynheader">
2613 Here is the caller graph for this function:</div>
2614 <div class="dyncontent">
2615 <div class="center"><img src="xran__fh__o__du_8h_a999189549fd6b524b733ddd61f1f9962_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a999189549fd6b524b733ddd61f1f9962_icgraph" alt=""/></div>
2616 <map name="xran__fh__o__du_8h_a999189549fd6b524b733ddd61f1f9962_icgraph" id="xran__fh__o__du_8h_a999189549fd6b524b733ddd61f1f9962_icgraph">
2617 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="153,5,225,32"/>
2618 </map>
2619 </div>
2620
2621 </div>
2622 </div>
2623 <a id="a03f408f45e97aa68ca47c92e4e7d1a70"></a>
2624 <h2 class="memtitle"><span class="permalink"><a href="#a03f408f45e97aa68ca47c92e4e7d1a70">&#9670;&nbsp;</a></span>xran_open()</h2>
2625
2626 <div class="memitem">
2627 <div class="memproto">
2628       <table class="memname">
2629         <tr>
2630           <td class="memname">int32_t xran_open </td>
2631           <td>(</td>
2632           <td class="paramtype">void *&#160;</td>
2633           <td class="paramname"><em>pHandle</em>, </td>
2634         </tr>
2635         <tr>
2636           <td class="paramkey"></td>
2637           <td></td>
2638           <td class="paramtype">struct <a class="el" href="structxran__fh__config.html">xran_fh_config</a> *&#160;</td>
2639           <td class="paramname"><em>pConf</em>&#160;</td>
2640         </tr>
2641         <tr>
2642           <td></td>
2643           <td>)</td>
2644           <td></td><td></td>
2645         </tr>
2646       </table>
2647 </div><div class="memdoc">
2648 <p>Function opens XRAN layer with given handle</p>
2649 <dl class="params"><dt>Parameters</dt><dd>
2650   <table class="params">
2651     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2652     <tr><td class="paramname">pointer</td><td>to struct <a class="el" href="structxran__fh__config.html">xran_fh_config</a> pConf Pointer to XRAN configuration structure with specific settings to use</td></tr>
2653   </table>
2654   </dd>
2655 </dl>
2656 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2657
2658 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02756">2756</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2659 <div class="dynheader">
2660 Here is the call graph for this function:</div>
2661 <div class="dyncontent">
2662 <div class="center"><img src="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_cgraph" alt=""/></div>
2663 <map name="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_cgraph" id="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_cgraph">
2664 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="163,5,288,32"/>
2665 <area shape="rect" id="node3" href="xran__main_8c.html#ae6070ee9caf6a7ea8d7ef052ed0a559a" title="Get the configuration of nummerology. " alt="" coords="136,56,315,83"/>
2666 <area shape="rect" id="node4" href="xran__main_8c.html#a00025c5bad7b7b6eea4374226f8c54bb" title="xran_init_prach" alt="" coords="170,107,281,133"/>
2667 <area shape="rect" id="node7" href="xran__main_8c.html#acb5dd6ae5569cb3090d441c800068244" title="xran_init_srs" alt="" coords="177,157,273,184"/>
2668 <area shape="rect" id="node8" href="xran__cp__api_8h.html#a3ca98b2a49501149a7b5baf9174897d8" title="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) " alt="" coords="148,208,303,235"/>
2669 <area shape="rect" id="node9" href="xran__main_8c.html#a54de92e0ced826beeb759580d170562b" title="xran_init_sectionid" alt="" coords="160,259,291,285"/>
2670 <area shape="rect" id="node10" href="xran__main_8c.html#a7a3c06a23d41de0038747348be9bb9da" title="xran_init_seqid" alt="" coords="171,309,280,336"/>
2671 <area shape="rect" id="node11" href="xran__frame__struct_8c.html#a8e8598556da3e49fa48cb646c24162fa" title="xran_fs_get_tti_interval" alt="" coords="147,360,304,387"/>
2672 <area shape="rect" id="node12" href="xran__timer_8h.html#a6c1790e87767257159038d0d98a393e6" title="timing_set_numerology" alt="" coords="147,411,303,437"/>
2673 <area shape="rect" id="node13" href="xran__frame__struct_8c.html#a075025c7652869adb79799313aab4f64" title="xran_fs_set_slot_type" alt="" coords="150,461,301,488"/>
2674 <area shape="rect" id="node14" href="xran__frame__struct_8c.html#a2fd9b68ce2fa4734a021203b320e4e04" title="xran_fs_slot_limit_init" alt="" coords="151,512,299,539"/>
2675 <area shape="rect" id="node5" href="xran__cp__api_8h.html#a4b7c2b7f89a0a04b07426e6adbecdb27" title="xran_get_freqoffset" alt="" coords="366,81,501,108"/>
2676 <area shape="rect" id="node6" href="xran__main_8c.html#a3fc01469558ddf728239d59038ac5803" title="Get the configuration of the number of antenna for UL. " alt="" coords="363,132,504,159"/>
2677 </map>
2678 </div>
2679 <div class="dynheader">
2680 Here is the caller graph for this function:</div>
2681 <div class="dyncontent">
2682 <div class="center"><img src="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_icgraph" alt=""/></div>
2683 <map name="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_icgraph" id="xran__fh__o__du_8h_a03f408f45e97aa68ca47c92e4e7d1a70_icgraph">
2684 <area shape="rect" id="node2" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="173,5,245,32"/>
2685 <area shape="rect" id="node3" href="classxran_lib_wraper.html#ad93226058ef4fd59bd7d0cd55701b752" title="xranLibWraper::Open" alt="" coords="136,56,281,83"/>
2686 <area shape="rect" id="node4" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="373,31,445,57"/>
2687 <area shape="rect" id="node6" href="class_init___sys___check.html#a3a1707f6479611fdc609a3eb8a0cef1b" title="Init_Sys_Check::SetUp" alt="" coords="329,81,489,108"/>
2688 <area shape="rect" id="node5" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="537,31,609,57"/>
2689 </map>
2690 </div>
2691
2692 </div>
2693 </div>
2694 <a id="aa8354b56b0be4be47c44a8a5c38db86e"></a>
2695 <h2 class="memtitle"><span class="permalink"><a href="#aa8354b56b0be4be47c44a8a5c38db86e">&#9670;&nbsp;</a></span>xran_reg_physide_cb()</h2>
2696
2697 <div class="memitem">
2698 <div class="memproto">
2699       <table class="memname">
2700         <tr>
2701           <td class="memname">int32_t xran_reg_physide_cb </td>
2702           <td>(</td>
2703           <td class="paramtype">void *&#160;</td>
2704           <td class="paramname"><em>pHandle</em>, </td>
2705         </tr>
2706         <tr>
2707           <td class="paramkey"></td>
2708           <td></td>
2709           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#af48a00f171ef7a017fddd2a29f9854d0">xran_fh_tti_callback_fn</a>&#160;</td>
2710           <td class="paramname"><em>Cb</em>, </td>
2711         </tr>
2712         <tr>
2713           <td class="paramkey"></td>
2714           <td></td>
2715           <td class="paramtype">void *&#160;</td>
2716           <td class="paramname"><em>cbParam</em>, </td>
2717         </tr>
2718         <tr>
2719           <td class="paramkey"></td>
2720           <td></td>
2721           <td class="paramtype">int&#160;</td>
2722           <td class="paramname"><em>skipTtiNum</em>, </td>
2723         </tr>
2724         <tr>
2725           <td class="paramkey"></td>
2726           <td></td>
2727           <td class="paramtype">enum&#160;</td>
2728           <td class="paramname"><em>callback_to_phy_id</em>&#160;</td>
2729         </tr>
2730         <tr>
2731           <td></td>
2732           <td>)</td>
2733           <td></td><td></td>
2734         </tr>
2735       </table>
2736 </div><div class="memdoc">
2737 <p>Function registers callback to XRAN layer. Function support callbacks align to OTA time. TTI even, half of slot, full slot with respect to PTP time.</p>
2738 <dl class="params"><dt>Parameters</dt><dd>
2739   <table class="params">
2740     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2741     <tr><td class="paramname">Cb</td><td>pointer to callback function </td></tr>
2742     <tr><td class="paramname">cbParam</td><td>pointer to Callback Function parameters </td></tr>
2743     <tr><td class="paramname">skipTtiNum</td><td>number of calls to be skipped before first call </td></tr>
2744     <tr><td class="paramname">callback_to_phy_id</td><td>call back time identification (see enum callback_to_phy_id)</td></tr>
2745   </table>
2746   </dd>
2747 </dl>
2748 <dl class="section return"><dt>Returns</dt><dd>0 - in case of success -1 - in case of failure </dd></dl>
2749
2750 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02900">2900</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2751 <div class="dynheader">
2752 Here is the call graph for this function:</div>
2753 <div class="dyncontent">
2754 <div class="center"><img src="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_cgraph" alt=""/></div>
2755 <map name="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_cgraph" id="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_cgraph">
2756 <area shape="rect" id="node2" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="199,5,324,32"/>
2757 <area shape="rect" id="node3" href="xran__main_8c.html#a937105f52446cfcb951e43e1dc3c4d8b" title="xran_get_if_state" alt="" coords="200,56,323,83"/>
2758 </map>
2759 </div>
2760 <div class="dynheader">
2761 Here is the caller graph for this function:</div>
2762 <div class="dyncontent">
2763 <div class="center"><img src="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_icgraph" alt=""/></div>
2764 <map name="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_icgraph" id="xran__fh__o__du_8h_aa8354b56b0be4be47c44a8a5c38db86e_icgraph">
2765 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#a74a4819defc7dbd1cfa7e793456be743" title="TEST_P" alt="" coords="235,5,307,32"/>
2766 <area shape="rect" id="node3" href="classxran_lib_wraper.html#ad93226058ef4fd59bd7d0cd55701b752" title="xranLibWraper::Open" alt="" coords="199,56,344,83"/>
2767 <area shape="rect" id="node4" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="436,31,508,57"/>
2768 <area shape="rect" id="node6" href="class_init___sys___check.html#a3a1707f6479611fdc609a3eb8a0cef1b" title="Init_Sys_Check::SetUp" alt="" coords="392,81,552,108"/>
2769 <area shape="rect" id="node5" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="600,31,672,57"/>
2770 </map>
2771 </div>
2772
2773 </div>
2774 </div>
2775 <a id="adfcabe4091a4782ecb9ca029314c99ca"></a>
2776 <h2 class="memtitle"><span class="permalink"><a href="#adfcabe4091a4782ecb9ca029314c99ca">&#9670;&nbsp;</a></span>xran_reg_sym_cb()</h2>
2777
2778 <div class="memitem">
2779 <div class="memproto">
2780       <table class="memname">
2781         <tr>
2782           <td class="memname">int32_t xran_reg_sym_cb </td>
2783           <td>(</td>
2784           <td class="paramtype">void *&#160;</td>
2785           <td class="paramname"><em>pHandle</em>, </td>
2786         </tr>
2787         <tr>
2788           <td class="paramkey"></td>
2789           <td></td>
2790           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#ad2e55b4fa82ed8c7f00e083b0406c6c8">xran_callback_sym_fn</a>&#160;</td>
2791           <td class="paramname"><em>symCb</em>, </td>
2792         </tr>
2793         <tr>
2794           <td class="paramkey"></td>
2795           <td></td>
2796           <td class="paramtype">void *&#160;</td>
2797           <td class="paramname"><em>symCbParam</em>, </td>
2798         </tr>
2799         <tr>
2800           <td class="paramkey"></td>
2801           <td></td>
2802           <td class="paramtype">uint8_t&#160;</td>
2803           <td class="paramname"><em>symb</em>, </td>
2804         </tr>
2805         <tr>
2806           <td class="paramkey"></td>
2807           <td></td>
2808           <td class="paramtype">uint8_t&#160;</td>
2809           <td class="paramname"><em>ant</em>&#160;</td>
2810         </tr>
2811         <tr>
2812           <td></td>
2813           <td>)</td>
2814           <td></td><td></td>
2815         </tr>
2816       </table>
2817 </div><div class="memdoc">
2818 <p>Function registers callback to XRAN layer. Function support callbacks aligned on packet arrival.</p>
2819 <dl class="params"><dt>Parameters</dt><dd>
2820   <table class="params">
2821     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC </td></tr>
2822     <tr><td class="paramname">symCb</td><td>pointer to callback function </td></tr>
2823     <tr><td class="paramname">symCb</td><td>pointer to Callback Function parameters </td></tr>
2824     <tr><td class="paramname">symb</td><td>symbol to be register for </td></tr>
2825     <tr><td class="paramname">ant</td><td>Antenna number to trigger callback for packet arrival</td></tr>
2826   </table>
2827   </dd>
2828 </dl>
2829 <dl class="section return"><dt>Returns</dt><dd>0 - in case of success -1 - in case of failure </dd></dl>
2830
2831 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02888">2888</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2832 <div class="dynheader">
2833 Here is the call graph for this function:</div>
2834 <div class="dyncontent">
2835 <div class="center"><img src="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_cgraph" alt=""/></div>
2836 <map name="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_cgraph" id="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_cgraph">
2837 <area shape="rect" id="node2" href="xran__main_8c.html#a937105f52446cfcb951e43e1dc3c4d8b" title="xran_get_if_state" alt="" coords="179,5,301,32"/>
2838 </map>
2839 </div>
2840 <div class="dynheader">
2841 Here is the caller graph for this function:</div>
2842 <div class="dyncontent">
2843 <div class="center"><img src="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_icgraph" alt=""/></div>
2844 <map name="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_icgraph" id="xran__fh__o__du_8h_adfcabe4091a4782ecb9ca029314c99ca_icgraph">
2845 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#a7b1dc2a3c7a3d8e2eb7f2616417feb75" title="TEST_P" alt="" coords="179,5,251,32"/>
2846 </map>
2847 </div>
2848
2849 </div>
2850 </div>
2851 <a id="adf5ead6a9f90b5d524e8012521d64bb5"></a>
2852 <h2 class="memtitle"><span class="permalink"><a href="#adf5ead6a9f90b5d524e8012521d64bb5">&#9670;&nbsp;</a></span>xran_sector_get_instances()</h2>
2853
2854 <div class="memitem">
2855 <div class="memproto">
2856       <table class="memname">
2857         <tr>
2858           <td class="memname">int32_t xran_sector_get_instances </td>
2859           <td>(</td>
2860           <td class="paramtype">void *&#160;</td>
2861           <td class="paramname"><em>pHandle</em>, </td>
2862         </tr>
2863         <tr>
2864           <td class="paramkey"></td>
2865           <td></td>
2866           <td class="paramtype">uint16_t&#160;</td>
2867           <td class="paramname"><em>nNumInstances</em>, </td>
2868         </tr>
2869         <tr>
2870           <td class="paramkey"></td>
2871           <td></td>
2872           <td class="paramtype"><a class="el" href="xran__fh__o__du_8h.html#afe623da85d4542bce592f333046e2c81">xran_cc_handle_t</a> *&#160;</td>
2873           <td class="paramname"><em>pSectorInstanceHandles</em>&#160;</td>
2874         </tr>
2875         <tr>
2876           <td></td>
2877           <td>)</td>
2878           <td></td><td></td>
2879         </tr>
2880       </table>
2881 </div><div class="memdoc">
2882 <p>Function returns handles for number of sectors supported by XRAN layer. Currently function supports one handle XRAN layer where it supports only one CC</p>
2883 <dl class="params"><dt>Parameters</dt><dd>
2884   <table class="params">
2885     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle </td></tr>
2886     <tr><td class="paramname">nNumInstances</td><td>total number of instances of CC </td></tr>
2887     <tr><td class="paramname">pSectorInstanceHandles</td><td>Pointer to xran_cc_handle_t where to store Handle pointer</td></tr>
2888   </table>
2889   </dd>
2890 </dl>
2891 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2892
2893 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02408">2408</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2894 <div class="dynheader">
2895 Here is the caller graph for this function:</div>
2896 <div class="dyncontent">
2897 <div class="center"><img src="xran__fh__o__du_8h_adf5ead6a9f90b5d524e8012521d64bb5_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_adf5ead6a9f90b5d524e8012521d64bb5_icgraph" alt=""/></div>
2898 <map name="xran__fh__o__du_8h_adf5ead6a9f90b5d524e8012521d64bb5_icgraph" id="xran__fh__o__du_8h_adf5ead6a9f90b5d524e8012521d64bb5_icgraph">
2899 <area shape="rect" id="node2" href="init__sys__functional_8cc.html#ac2f03036711a42868a78783b735097e5" title="TEST_P" alt="" coords="232,5,304,32"/>
2900 </map>
2901 </div>
2902
2903 </div>
2904 </div>
2905 <a id="ad4852c0827600db95f9841e2f5f9f6f1"></a>
2906 <h2 class="memtitle"><span class="permalink"><a href="#ad4852c0827600db95f9841e2f5f9f6f1">&#9670;&nbsp;</a></span>xran_start()</h2>
2907
2908 <div class="memitem">
2909 <div class="memproto">
2910       <table class="memname">
2911         <tr>
2912           <td class="memname">int32_t xran_start </td>
2913           <td>(</td>
2914           <td class="paramtype">void *&#160;</td>
2915           <td class="paramname"><em>pHandle</em></td><td>)</td>
2916           <td></td>
2917         </tr>
2918       </table>
2919 </div><div class="memdoc">
2920 <p>Function starts XRAN layer with given handle</p>
2921 <dl class="params"><dt>Parameters</dt><dd>
2922   <table class="params">
2923     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC</td></tr>
2924   </table>
2925   </dd>
2926 </dl>
2927 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2928
2929 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02841">2841</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2930 <div class="dynheader">
2931 Here is the call graph for this function:</div>
2932 <div class="dyncontent">
2933 <div class="center"><img src="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_cgraph" alt=""/></div>
2934 <map name="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_cgraph" id="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_cgraph">
2935 <area shape="rect" id="node2" href="xran__main_8c.html#a937105f52446cfcb951e43e1dc3c4d8b" title="xran_get_if_state" alt="" coords="133,5,256,32"/>
2936 </map>
2937 </div>
2938 <div class="dynheader">
2939 Here is the caller graph for this function:</div>
2940 <div class="dyncontent">
2941 <div class="center"><img src="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_icgraph" alt=""/></div>
2942 <map name="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_icgraph" id="xran__fh__o__du_8h_ad4852c0827600db95f9841e2f5f9f6f1_icgraph">
2943 <area shape="rect" id="node2" href="classxran_lib_wraper.html#af9989f7ffd89540fc26371e24a29fefc" title="xranLibWraper::Start" alt="" coords="133,5,276,32"/>
2944 <area shape="rect" id="node3" href="init__sys__functional_8cc.html#a03935019c7cdf89f54e582fbaf9bff76" title="TEST_P" alt="" coords="324,5,396,32"/>
2945 </map>
2946 </div>
2947
2948 </div>
2949 </div>
2950 <a id="a8f2daee2fe90126f1f7c361b7760a7a3"></a>
2951 <h2 class="memtitle"><span class="permalink"><a href="#a8f2daee2fe90126f1f7c361b7760a7a3">&#9670;&nbsp;</a></span>xran_stop()</h2>
2952
2953 <div class="memitem">
2954 <div class="memproto">
2955       <table class="memname">
2956         <tr>
2957           <td class="memname">int32_t xran_stop </td>
2958           <td>(</td>
2959           <td class="paramtype">void *&#160;</td>
2960           <td class="paramname"><em>pHandle</em></td><td>)</td>
2961           <td></td>
2962         </tr>
2963       </table>
2964 </div><div class="memdoc">
2965 <p>Function stops XRAN layer with given handle</p>
2966 <dl class="params"><dt>Parameters</dt><dd>
2967   <table class="params">
2968     <tr><td class="paramname">pHandle</td><td>Pointer to XRAN layer handle for given CC</td></tr>
2969   </table>
2970   </dd>
2971 </dl>
2972 <dl class="section return"><dt>Returns</dt><dd>0 - on success </dd></dl>
2973
2974 <p class="definition">Definition at line <a class="el" href="xran__main_8c_source.html#l02852">2852</a> of file <a class="el" href="xran__main_8c_source.html">xran_main.c</a>.</p>
2975 <div class="dynheader">
2976 Here is the call graph for this function:</div>
2977 <div class="dyncontent">
2978 <div class="center"><img src="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_cgraph.png" border="0" usemap="#xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_cgraph" alt=""/></div>
2979 <map name="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_cgraph" id="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_cgraph">
2980 <area shape="rect" id="node2" href="xran__main_8c.html#a937105f52446cfcb951e43e1dc3c4d8b" title="xran_get_if_state" alt="" coords="132,5,255,32"/>
2981 </map>
2982 </div>
2983 <div class="dynheader">
2984 Here is the caller graph for this function:</div>
2985 <div class="dyncontent">
2986 <div class="center"><img src="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_icgraph.png" border="0" usemap="#xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_icgraph" alt=""/></div>
2987 <map name="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_icgraph" id="xran__fh__o__du_8h_a8f2daee2fe90126f1f7c361b7760a7a3_icgraph">
2988 <area shape="rect" id="node2" href="classxran_lib_wraper.html#af7c499a1fa8e52a104500d7d01c1a280" title="xranLibWraper::Stop" alt="" coords="132,5,273,32"/>
2989 <area shape="rect" id="node3" href="init__sys__functional_8cc.html#a03935019c7cdf89f54e582fbaf9bff76" title="TEST_P" alt="" coords="321,5,393,32"/>
2990 </map>
2991 </div>
2992
2993 </div>
2994 </div>
2995 </div><!-- contents -->
2996 <!-- start footer part -->
2997 <hr class="footer"/><address class="footer"><small>
2998 Generated by &#160;<a href="http://www.doxygen.org/index.html">
2999 <img class="footer" src="doxygen.png" alt="doxygen"/>
3000 </a> 1.8.13
3001 </small></address>
3002 </body>
3003 </html>