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">
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_transport.c 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" />
18 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
20 <table cellspacing="0" cellpadding="0">
22 <tr style="height: 56px;">
23 <td id="projectalign" style="padding-left: 0.5em;">
24 <div id="projectname">o-du/phy
26 <div id="projectbrief">Intel O-RAN/X-RAN Generated Doxygen Documentation</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');
37 <script type="text/javascript" src="menudata.js"></script>
38 <script type="text/javascript" src="menu.js"></script>
39 <script type="text/javascript">
41 initMenu('',true,false,'search.php','Search');
42 $(document).ready(function() { init_search(); });
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)">
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">
60 <div id="nav-path" class="navpath">
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_9fc50806095da30fbd4a2dbe2e456ff5.html">src</a></li> </ul>
67 <a href="#func-members">Functions</a> </div>
68 <div class="headertitle">
69 <div class="title">xran_transport.c File Reference</div> </div>
71 <div class="contents">
73 <p>This file provides the implementation for Transport lyaer (eCPRI) API.
74 <a href="#details">More...</a></p>
75 <div class="textblock"><code>#include <stdint.h></code><br />
76 <code>#include <endian.h></code><br />
77 <code>#include <rte_common.h></code><br />
78 <code>#include <rte_config.h></code><br />
79 <code>#include "<a class="el" href="xran__fh__o__du_8h_source.html">xran_fh_o_du.h</a>"</code><br />
80 <code>#include "<a class="el" href="xran__common_8h_source.html">xran_common.h</a>"</code><br />
81 <code>#include "<a class="el" href="xran__transport_8h_source.html">xran_transport.h</a>"</code><br />
82 <code>#include "<a class="el" href="xran__pkt__cp_8h_source.html">xran_pkt_cp.h</a>"</code><br />
83 <code>#include "<a class="el" href="xran__cp__api_8h_source.html">xran_cp_api.h</a>"</code><br />
84 <code>#include "<a class="el" href="xran__up__api_8h_source.html">xran_up_api.h</a>"</code><br />
85 <code>#include "<a class="el" href="xran__printf_8h_source.html">xran_printf.h</a>"</code><br />
86 </div><div class="textblock"><div class="dynheader">
87 Include dependency graph for xran_transport.c:</div>
88 <div class="dyncontent">
89 <div class="center"><img src="xran__transport_8c__incl.png" border="0" usemap="#xran__transport_8c" alt=""/></div>
90 <map name="xran__transport_8c" id="xran__transport_8c">
91 <area shape="rect" id="node6" href="xran__fh__o__du_8h.html" title="This file provides public interface to xRAN Front Haul layer implementation as defined in the ORAN-WG..." alt="" coords="707,229,817,256"/>
92 <area shape="rect" id="node20" href="xran__common_8h.html" title="XRAN layer common functionality for both lls-CU and RU as well as C-plane and U-plane. " alt="" coords="1075,80,1190,107"/>
93 <area shape="rect" id="node28" href="xran__cp__api_8h.html" title="This file provides the definitions for Control Plane Messages APIs. " alt="" coords="1301,155,1404,181"/>
94 <area shape="rect" id="node29" href="xran__pkt__cp_8h.html" title="This file provides the definition of Control Plane Messages for XRAN Front Haul layer as defined in X..." alt="" coords="1301,229,1405,256"/>
95 <area shape="rect" id="node30" href="xran__transport_8h.html" title="This file provides the definitions for Transport layer (eCPRI) API. " alt="" coords="1429,229,1545,256"/>
96 <area shape="rect" id="node31" href="xran__up__api_8h.html" title="This file provides the definitions for User Plane Messages APIs. " alt="" coords="1672,155,1775,181"/>
97 <area shape="rect" id="node32" href="xran__printf_8h.html" title="Modules provide debug prints and utility functions. " alt="" coords="167,229,261,256"/>
98 <area shape="rect" id="node24" href="xran__pkt__up_8h.html" title="Definitions and support functions to process XRAN packet. " alt="" coords="1671,229,1775,256"/>
99 <area shape="rect" id="node25" href="xran__pkt_8h.html" title="Definitions and support functions to process XRAN packet. " alt="" coords="1822,304,1905,331"/>
103 <p><a href="xran__transport_8c_source.html">Go to the source code of this file.</a></p>
104 <table class="memberdecls">
105 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
106 Functions</h2></td></tr>
107 <tr class="memitem:a0f378609208ec66467c58f0702ced85c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#a0f378609208ec66467c58f0702ced85c">xran_get_ecpri_hdr_size</a> (void)</td></tr>
108 <tr class="memdesc:a0f378609208ec66467c58f0702ced85c"><td class="mdescLeft"> </td><td class="mdescRight">return eCPRI header size without eCPRI common header <a href="#a0f378609208ec66467c58f0702ced85c">More...</a><br /></td></tr>
109 <tr class="separator:a0f378609208ec66467c58f0702ced85c"><td class="memSeparator" colspan="2"> </td></tr>
110 <tr class="memitem:ae834080139ba785f1a3ac5781bf2ec88"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ae834080139ba785f1a3ac5781bf2ec88">xran_compose_cid</a> (uint8_t CU_Port_ID, uint8_t BandSector_ID, uint8_t CC_ID, uint8_t Ant_ID)</td></tr>
111 <tr class="memdesc:ae834080139ba785f1a3ac5781bf2ec88"><td class="mdescLeft"> </td><td class="mdescRight">Compose ecpriRtcid/ecpriPcid. <a href="#ae834080139ba785f1a3ac5781bf2ec88">More...</a><br /></td></tr>
112 <tr class="separator:ae834080139ba785f1a3ac5781bf2ec88"><td class="memSeparator" colspan="2"> </td></tr>
113 <tr class="memitem:ab08a85b6527f45a9ba22d25061a96a3c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ab08a85b6527f45a9ba22d25061a96a3c">xran_decompose_cid</a> (uint16_t cid, struct <a class="el" href="structxran__eaxc__info.html">xran_eaxc_info</a> *result)</td></tr>
114 <tr class="memdesc:ab08a85b6527f45a9ba22d25061a96a3c"><td class="mdescLeft"> </td><td class="mdescRight">Decompose ecpriRtcid/ecpriPcid. <a href="#ab08a85b6527f45a9ba22d25061a96a3c">More...</a><br /></td></tr>
115 <tr class="separator:ab08a85b6527f45a9ba22d25061a96a3c"><td class="memSeparator" colspan="2"> </td></tr>
116 <tr class="memitem:a7070bae58b40a4621354bda1677261af"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#a7070bae58b40a4621354bda1677261af">xran_update_ecpri_payload_size</a> (struct rte_mbuf *mbuf, int size)</td></tr>
117 <tr class="memdesc:a7070bae58b40a4621354bda1677261af"><td class="mdescLeft"> </td><td class="mdescRight">modify the payload size of eCPRI header in xRAN packet <a href="#a7070bae58b40a4621354bda1677261af">More...</a><br /></td></tr>
118 <tr class="separator:a7070bae58b40a4621354bda1677261af"><td class="memSeparator" colspan="2"> </td></tr>
119 <tr class="memitem:aa21387dfaba47c2046d4a05f50cfc768"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768">xran_build_ecpri_hdr</a> (struct rte_mbuf *mbuf, uint8_t CC_ID, uint8_t Ant_ID, uint8_t seq_id, struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **ecpri_hdr)</td></tr>
120 <tr class="memdesc:aa21387dfaba47c2046d4a05f50cfc768"><td class="mdescLeft"> </td><td class="mdescRight">Build ECPRI header and returns added length. <a href="#aa21387dfaba47c2046d4a05f50cfc768">More...</a><br /></td></tr>
121 <tr class="separator:aa21387dfaba47c2046d4a05f50cfc768"><td class="memSeparator" colspan="2"> </td></tr>
122 <tr class="memitem:ad199c3f4bfa018f5d0846471206217d1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="xran__transport_8c.html#ad199c3f4bfa018f5d0846471206217d1">xran_parse_ecpri_hdr</a> (struct rte_mbuf *mbuf, struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> **ecpri_hdr, struct <a class="el" href="structxran__recv__packet__info.html">xran_recv_packet_info</a> *pkt_info)</td></tr>
123 <tr class="memdesc:ad199c3f4bfa018f5d0846471206217d1"><td class="mdescLeft"> </td><td class="mdescRight">Parse ECPRI header. <a href="#ad199c3f4bfa018f5d0846471206217d1">More...</a><br /></td></tr>
124 <tr class="separator:ad199c3f4bfa018f5d0846471206217d1"><td class="memSeparator" colspan="2"> </td></tr>
126 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
127 <div class="textblock"><p>This file provides the implementation for Transport lyaer (eCPRI) API. </p>
128 <dl class="section author"><dt>Author</dt><dd>Intel Corporation </dd></dl>
130 <p class="definition">Definition in file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
131 </div><h2 class="groupheader">Function Documentation</h2>
132 <a id="aa21387dfaba47c2046d4a05f50cfc768"></a>
133 <h2 class="memtitle"><span class="permalink"><a href="#aa21387dfaba47c2046d4a05f50cfc768">◆ </a></span>xran_build_ecpri_hdr()</h2>
135 <div class="memitem">
136 <div class="memproto">
137 <table class="memname">
139 <td class="memname">int xran_build_ecpri_hdr </td>
141 <td class="paramtype">struct rte_mbuf * </td>
142 <td class="paramname"><em>mbuf</em>, </td>
145 <td class="paramkey"></td>
147 <td class="paramtype">uint8_t </td>
148 <td class="paramname"><em>CC_ID</em>, </td>
151 <td class="paramkey"></td>
153 <td class="paramtype">uint8_t </td>
154 <td class="paramname"><em>Ant_ID</em>, </td>
157 <td class="paramkey"></td>
159 <td class="paramtype">uint8_t </td>
160 <td class="paramname"><em>seq_id</em>, </td>
163 <td class="paramkey"></td>
165 <td class="paramtype">struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> ** </td>
166 <td class="paramname"><em>ecpri_hdr</em> </td>
174 </div><div class="memdoc">
176 <p>Build ECPRI header and returns added length. </p>
177 <dl class="params"><dt>Parameters</dt><dd>
178 <table class="params">
179 <tr><td class="paramname">mbuf</td><td>The pointer of the packet buffer to be parsed </td></tr>
180 <tr><td class="paramname">CC_ID</td><td>Component Carrier ID for this C-Plane message </td></tr>
181 <tr><td class="paramname">Ant_ID</td><td>Antenna ID(RU Port ID) for this C-Plane message </td></tr>
182 <tr><td class="paramname">seq_id</td><td>Sequence ID for this C-Plane message </td></tr>
183 <tr><td class="paramname">ecpri_hdr</td><td>The pointer to ECPRI header </td></tr>
187 <dl class="section return"><dt>Returns</dt><dd>added payload size on success XRAN_STATUS_RESOURCE if failed to allocate the space to packet buffer </dd></dl>
189 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00142">142</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
190 <div class="dynheader">
191 Here is the call graph for this function:</div>
192 <div class="dyncontent">
193 <div class="center"><img src="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph.png" border="0" usemap="#xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph" alt=""/></div>
194 <map name="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph" id="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_cgraph">
195 <area shape="rect" id="node2" href="xran__transport_8c.html#ae834080139ba785f1a3ac5781bf2ec88" title="Compose ecpriRtcid/ecpriPcid. " alt="" coords="211,5,341,32"/>
196 <area shape="rect" id="node5" href="xran__transport_8c.html#a0f378609208ec66467c58f0702ced85c" title="return eCPRI header size without eCPRI common header " alt="" coords="195,56,357,83"/>
197 <area shape="rect" id="node3" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="405,5,549,32"/>
198 <area shape="rect" id="node4" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="597,5,723,32"/>
201 <div class="dynheader">
202 Here is the caller graph for this function:</div>
203 <div class="dyncontent">
204 <div class="center"><img src="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph.png" border="0" usemap="#xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph" alt=""/></div>
205 <map name="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph" id="xran__transport_8c_aa21387dfaba47c2046d4a05f50cfc768_icgraph">
206 <area shape="rect" id="node2" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C-Plane packet Transport layer fragmentation is not supported. " alt="" coords="195,81,341,108"/>
207 <area shape="rect" id="node3" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="400,5,536,32"/>
208 <area shape="rect" id="node5" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="432,56,504,83"/>
209 <area shape="rect" id="node6" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="395,107,541,133"/>
210 <area shape="rect" id="node7" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="389,157,547,184"/>
211 <area shape="rect" id="node4" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="616,5,688,32"/>
212 <area shape="rect" id="node8" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="616,132,688,159"/>
213 <area shape="rect" id="node9" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="595,183,709,209"/>
214 <area shape="rect" id="node10" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="757,183,829,209"/>
220 <a id="ae834080139ba785f1a3ac5781bf2ec88"></a>
221 <h2 class="memtitle"><span class="permalink"><a href="#ae834080139ba785f1a3ac5781bf2ec88">◆ </a></span>xran_compose_cid()</h2>
223 <div class="memitem">
224 <div class="memproto">
225 <table class="memname">
227 <td class="memname">uint16_t xran_compose_cid </td>
229 <td class="paramtype">uint8_t </td>
230 <td class="paramname"><em>CU_Port_ID</em>, </td>
233 <td class="paramkey"></td>
235 <td class="paramtype">uint8_t </td>
236 <td class="paramname"><em>BandSector_ID</em>, </td>
239 <td class="paramkey"></td>
241 <td class="paramtype">uint8_t </td>
242 <td class="paramname"><em>CC_ID</em>, </td>
245 <td class="paramkey"></td>
247 <td class="paramtype">uint8_t </td>
248 <td class="paramname"><em>Ant_ID</em> </td>
256 </div><div class="memdoc">
258 <p>Compose ecpriRtcid/ecpriPcid. </p>
259 <dl class="params"><dt>Parameters</dt><dd>
260 <table class="params">
261 <tr><td class="paramname">CU_Port_ID</td><td>CU Port ID </td></tr>
262 <tr><td class="paramname">BanbSector_ID</td><td>Band Sector ID </td></tr>
263 <tr><td class="paramname">CC_ID</td><td>Component Carrier ID </td></tr>
264 <tr><td class="paramname">Ant_ID</td><td>RU Port ID (antenna ID) </td></tr>
268 <dl class="section return"><dt>Returns</dt><dd>uint16_t composed ecpriRtcid/ecpriPcid (network byte order) </dd></dl>
270 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00065">65</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
271 <div class="dynheader">
272 Here is the call graph for this function:</div>
273 <div class="dyncontent">
274 <div class="center"><img src="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph.png" border="0" usemap="#xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph" alt=""/></div>
275 <map name="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph" id="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_cgraph">
276 <area shape="rect" id="node2" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="184,5,328,32"/>
277 <area shape="rect" id="node3" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="376,5,501,32"/>
280 <div class="dynheader">
281 Here is the caller graph for this function:</div>
282 <div class="dyncontent">
283 <div class="center"><img src="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph.png" border="0" usemap="#xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph" alt=""/></div>
284 <map name="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph" id="xran__transport_8c_ae834080139ba785f1a3ac5781bf2ec88_icgraph">
285 <area shape="rect" id="node2" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768" title="Build ECPRI header and returns added length. " alt="" coords="184,81,325,108"/>
286 <area shape="rect" id="node3" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C-Plane packet Transport layer fragmentation is not supported. " alt="" coords="373,81,520,108"/>
287 <area shape="rect" id="node4" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="579,5,715,32"/>
288 <area shape="rect" id="node6" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="611,56,683,83"/>
289 <area shape="rect" id="node7" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="574,107,719,133"/>
290 <area shape="rect" id="node8" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="568,157,725,184"/>
291 <area shape="rect" id="node5" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="795,5,867,32"/>
292 <area shape="rect" id="node9" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="795,132,867,159"/>
293 <area shape="rect" id="node10" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="773,183,888,209"/>
294 <area shape="rect" id="node11" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="936,183,1008,209"/>
300 <a id="ab08a85b6527f45a9ba22d25061a96a3c"></a>
301 <h2 class="memtitle"><span class="permalink"><a href="#ab08a85b6527f45a9ba22d25061a96a3c">◆ </a></span>xran_decompose_cid()</h2>
303 <div class="memitem">
304 <div class="memproto">
305 <table class="memname">
307 <td class="memname">void xran_decompose_cid </td>
309 <td class="paramtype">uint16_t </td>
310 <td class="paramname"><em>cid</em>, </td>
313 <td class="paramkey"></td>
315 <td class="paramtype">struct <a class="el" href="structxran__eaxc__info.html">xran_eaxc_info</a> * </td>
316 <td class="paramname"><em>result</em> </td>
324 </div><div class="memdoc">
326 <p>Decompose ecpriRtcid/ecpriPcid. </p>
327 <dl class="params"><dt>Parameters</dt><dd>
328 <table class="params">
329 <tr><td class="paramname">cid</td><td>composed ecpriRtcid/ecpriPcid (network byte order) </td></tr>
330 <tr><td class="paramname">result</td><td>the pointer of the structure to store decomposed values </td></tr>
334 <dl class="section return"><dt>Returns</dt><dd>none </dd></dl>
336 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00089">89</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
337 <div class="dynheader">
338 Here is the call graph for this function:</div>
339 <div class="dyncontent">
340 <div class="center"><img src="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph.png" border="0" usemap="#xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph" alt=""/></div>
341 <map name="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph" id="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_cgraph">
342 <area shape="rect" id="node2" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="199,5,343,32"/>
343 <area shape="rect" id="node3" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="391,5,516,32"/>
346 <div class="dynheader">
347 Here is the caller graph for this function:</div>
348 <div class="dyncontent">
349 <div class="center"><img src="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph.png" border="0" usemap="#xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph" alt=""/></div>
350 <map name="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph" id="xran__transport_8c_ab08a85b6527f45a9ba22d25061a96a3c_icgraph">
351 <area shape="rect" id="node2" href="xran__transport_8c.html#ad199c3f4bfa018f5d0846471206217d1" title="Parse ECPRI header. " alt="" coords="209,31,355,57"/>
352 <area shape="rect" id="node8" href="xran__up__api_8c.html#adfc5ea408600c8de1384be020b359d95" title="Function for extracting all IQ samples from xRAN packet holding a single data section. " alt="" coords="199,81,365,108"/>
353 <area shape="rect" id="node3" href="xran__cp__api_8c.html#a38c83cd67a7265920f3bd0b36510f713" title="Parse a C-Plane packet (for RU emulation) Transport layer fragmentation is not supported. " alt="" coords="413,31,545,57"/>
354 <area shape="rect" id="node4" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="635,5,707,32"/>
355 <area shape="rect" id="node5" href="chain__tests_8cc.html#aa17765d107c851ebcc3d202cef78aa75" title="send_mbuf_cp_perf" alt="" coords="603,56,739,83"/>
356 <area shape="rect" id="node6" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="797,56,869,83"/>
357 <area shape="rect" id="node7" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="957,56,1029,83"/>
358 <area shape="rect" id="node9" href="u__plane__functional_8cc.html#a17e5d82ac5aec3860b1324a80fda79ed" title="TEST_P" alt="" coords="443,81,515,108"/>
359 <area shape="rect" id="node10" href="chain__tests_8cc.html#a3d4bd5c7eec6da4ab71688e209100761" title="process_mbuf" alt="" coords="427,132,531,159"/>
360 <area shape="rect" id="node11" href="xran__main_8c.html#a7a412a9cd0ac919dccb2112fb386d64a" title="handle_ecpri_ethertype" alt="" coords="593,132,749,159"/>
361 <area shape="rect" id="node12" href="xran__main_8c.html#a4ea0e9c036a1dc7605f53f1f862f4952" title="xran_init" alt="" coords="798,132,869,159"/>
362 <area shape="rect" id="node13" href="classxran_lib_wraper.html#a126b53d8cc57521b34496dbe3a26621f" title="xranLibWraper::SetUp" alt="" coords="917,132,1068,159"/>
368 <a id="a0f378609208ec66467c58f0702ced85c"></a>
369 <h2 class="memtitle"><span class="permalink"><a href="#a0f378609208ec66467c58f0702ced85c">◆ </a></span>xran_get_ecpri_hdr_size()</h2>
371 <div class="memitem">
372 <div class="memproto">
373 <table class="memname">
375 <td class="memname">int xran_get_ecpri_hdr_size </td>
377 <td class="paramtype">void </td>
378 <td class="paramname"></td><td>)</td>
382 </div><div class="memdoc">
384 <p>return eCPRI header size without eCPRI common header </p>
385 <dl class="section return"><dt>Returns</dt><dd>the size of eCPRI header without common header </dd></dl>
387 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00049">49</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
388 <div class="dynheader">
389 Here is the caller graph for this function:</div>
390 <div class="dyncontent">
391 <div class="center"><img src="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph.png" border="0" usemap="#xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph" alt=""/></div>
392 <map name="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph" id="xran__transport_8c_a0f378609208ec66467c58f0702ced85c_icgraph">
393 <area shape="rect" id="node2" href="xran__transport_8c.html#aa21387dfaba47c2046d4a05f50cfc768" title="Build ECPRI header and returns added length. " alt="" coords="216,81,357,108"/>
394 <area shape="rect" id="node3" href="xran__cp__api_8c.html#af9eb550e92ea270af41b4b6bcda363db" title="Create a C-Plane packet Transport layer fragmentation is not supported. " alt="" coords="405,81,552,108"/>
395 <area shape="rect" id="node4" href="c__plane__tests_8cc.html#ab22c1305386eabc256bc6d3492d50846" title="xran_ut_prepare_cp" alt="" coords="611,5,747,32"/>
396 <area shape="rect" id="node6" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="643,56,715,83"/>
397 <area shape="rect" id="node7" href="xran__common_8h.html#aaa01e98d3b3439a332302aebe21459dd" title="generate_cpmsg_dlul" alt="" coords="606,107,751,133"/>
398 <area shape="rect" id="node8" href="xran__common_8h.html#ab8a6ed3cee8fa183142d0c23d0b4971d" title="generate_cpmsg_prach" alt="" coords="600,157,757,184"/>
399 <area shape="rect" id="node5" href="c__plane__tests_8cc.html#a21d05f2c6607fc534e67ed32883de81f" title="TEST_P" alt="" coords="827,5,899,32"/>
400 <area shape="rect" id="node9" href="prach__functional_8cc.html#a62307393b7f454a2b348ada67997b796" title="TEST_P" alt="" coords="827,132,899,159"/>
401 <area shape="rect" id="node10" href="prach__performance_8cc.html#a540e426541deb753f7c69d8df5d5b090" title="performance_cp" alt="" coords="805,183,920,209"/>
402 <area shape="rect" id="node11" href="prach__performance_8cc.html#a048e029f091d3d395e44cc24b3f197ee" title="TEST_P" alt="" coords="968,183,1040,209"/>
408 <a id="ad199c3f4bfa018f5d0846471206217d1"></a>
409 <h2 class="memtitle"><span class="permalink"><a href="#ad199c3f4bfa018f5d0846471206217d1">◆ </a></span>xran_parse_ecpri_hdr()</h2>
411 <div class="memitem">
412 <div class="memproto">
413 <table class="memname">
415 <td class="memname">int xran_parse_ecpri_hdr </td>
417 <td class="paramtype">struct rte_mbuf * </td>
418 <td class="paramname"><em>mbuf</em>, </td>
421 <td class="paramkey"></td>
423 <td class="paramtype">struct <a class="el" href="structxran__ecpri__hdr.html">xran_ecpri_hdr</a> ** </td>
424 <td class="paramname"><em>ecpri_hdr</em>, </td>
427 <td class="paramkey"></td>
429 <td class="paramtype">struct <a class="el" href="structxran__recv__packet__info.html">xran_recv_packet_info</a> * </td>
430 <td class="paramname"><em>pkt_info</em> </td>
438 </div><div class="memdoc">
440 <p>Parse ECPRI header. </p>
441 <dl class="params"><dt>Parameters</dt><dd>
442 <table class="params">
443 <tr><td class="paramname">mbuf</td><td>The pointer of the packet buffer to be parsed </td></tr>
444 <tr><td class="paramname">ecpri_hdr</td><td>The pointer to ECPRI header </td></tr>
445 <tr><td class="paramname">pkt_info</td><td>The pointer of sturcture to store the information from header </td></tr>
449 <dl class="section return"><dt>Returns</dt><dd>XRAN_STATUS_SUCCESS on success XRAN_STATUS_INVALID_PACKET if failed to parse the packet </dd></dl>
451 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00192">192</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
452 <div class="dynheader">
453 Here is the call graph for this function:</div>
454 <div class="dyncontent">
455 <div class="center"><img src="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph.png" border="0" usemap="#xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph" alt=""/></div>
456 <map name="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph" id="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_cgraph">
457 <area shape="rect" id="node2" href="xran__transport_8c.html#ab08a85b6527f45a9ba22d25061a96a3c" title="Decompose ecpriRtcid/ecpriPcid. " alt="" coords="200,5,345,32"/>
458 <area shape="rect" id="node3" href="xran__common_8h.html#a761e3947dcc547008a12a9cca10b1ea0" title="Get the configuration of eAxC ID. " alt="" coords="393,5,537,32"/>
459 <area shape="rect" id="node4" href="xran__main_8c.html#aa09e72e94d2a1d891e86f4c09b0f8b21" title="xran_dev_get_ctx" alt="" coords="585,5,711,32"/>
462 <div class="dynheader">
463 Here is the caller graph for this function:</div>
464 <div class="dyncontent">
465 <div class="center"><img src="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph.png" border="0" usemap="#xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph" alt=""/></div>
466 <map name="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph" id="xran__transport_8c_ad199c3f4bfa018f5d0846471206217d1_icgraph">
467 <area shape="rect" id="node2" href="xran__cp__api_8c.html#a38c83cd67a7265920f3bd0b36510f713" title="Parse a C-Plane packet (for RU emulation) Transport layer fragmentation is not supported. " alt="" coords="200,31,332,57"/>
468 <area shape="rect" id="node3" href="c__plane__tests_8cc.html#a11a0b914a08e5375cae792dc6db08c7a" title="TEST_P" alt="" coords="412,5,484,32"/>
469 <area shape="rect" id="node4" href="chain__tests_8cc.html#aa17765d107c851ebcc3d202cef78aa75" title="send_mbuf_cp_perf" alt="" coords="380,56,516,83"/>
470 <area shape="rect" id="node5" href="chain__tests_8cc.html#a6c5f599800ca755367ad7df4da60eb86" title="TEST_P" alt="" coords="564,56,636,83"/>
471 <area shape="rect" id="node6" href="chain__tests_8cc.html#a9dc1e3a47b655cad97eed3db3cdebd92" title="TEST_P" alt="" coords="684,56,756,83"/>
477 <a id="a7070bae58b40a4621354bda1677261af"></a>
478 <h2 class="memtitle"><span class="permalink"><a href="#a7070bae58b40a4621354bda1677261af">◆ </a></span>xran_update_ecpri_payload_size()</h2>
480 <div class="memitem">
481 <div class="memproto">
482 <table class="mlabels">
484 <td class="mlabels-left">
485 <table class="memname">
487 <td class="memname">void xran_update_ecpri_payload_size </td>
489 <td class="paramtype">struct rte_mbuf * </td>
490 <td class="paramname"><em>mbuf</em>, </td>
493 <td class="paramkey"></td>
495 <td class="paramtype">int </td>
496 <td class="paramname"><em>size</em> </td>
505 <td class="mlabels-right">
506 <span class="mlabels"><span class="mlabel">inline</span></span> </td>
509 </div><div class="memdoc">
511 <p>modify the payload size of eCPRI header in xRAN packet </p>
512 <dl class="params"><dt>Parameters</dt><dd>
513 <table class="params">
514 <tr><td class="paramname">mbuf</td><td>Initialized rte_mbuf packet which has eCPRI header already </td></tr>
515 <tr><td class="paramname">size</td><td>payload size to be updated </td></tr>
519 <dl class="section return"><dt>Returns</dt><dd>none </dd></dl>
521 <p class="definition">Definition at line <a class="el" href="xran__transport_8c_source.html#l00113">113</a> of file <a class="el" href="xran__transport_8c_source.html">xran_transport.c</a>.</p>
525 </div><!-- contents -->
526 <!-- start footer part -->
527 <hr class="footer"/><address class="footer"><small>
528 Generated by  <a href="http://www.doxygen.org/index.html">
529 <img class="footer" src="doxygen.png" alt="doxygen"/>