MCUXpresso_MIMXRT1052xxxxB/docs/MCUXpresso SDK API Referenc.../a00042.html

599 lines
35 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>MCUXpresso SDK API Reference Manual: FLEXSPI eDMA Driver</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="fs_logo.gif"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">MCUXpresso SDK API Reference Manual
&#160;<span id="projectnumber">Rev 2.15.000</span>
</div>
<div id="projectbrief">NXP Semiconductors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>API&#160;Reference</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00042.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> </div>
<div class="headertitle">
<div class="title">FLEXSPI eDMA Driver<div class="ingroups"><a class="el" href="a00041.html">FLEXSPI: Flexible Serial Peripheral Interface Driver</a></div></div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:a00419"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a00419">_flexspi_edma_handle</a></td></tr>
<tr class="memdesc:a00419"><td class="mdescLeft">&#160;</td><td class="mdescRight">FLEXSPI DMA transfer handle, users should not touch the content of the handle. <a href="a00042.html#a00419">More...</a><br/></td></tr>
<tr class="separator:a00419"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga18c417694a255c05206b53e1d882d9c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga18c417694a255c05206b53e1d882d9c3"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ga18c417694a255c05206b53e1d882d9c3">flexspi_edma_callback_t</a> )(FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle, <a class="el" href="a00272.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> status, void *userData)</td></tr>
<tr class="memdesc:ga18c417694a255c05206b53e1d882d9c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">FLEXSPI eDMA transfer callback function for finish and error. <br/></td></tr>
<tr class="separator:ga18c417694a255c05206b53e1d882d9c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab11e2fa9c8b7f2848c560c1f111cd8d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab11e2fa9c8b7f2848c560c1f111cd8d7"></a>
typedef enum <br class="typebreak"/>
<a class="el" href="a00042.html#ga2e104747927a91bbd354cc3da7fd8016">_flexspi_edma_ntransfer_size</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7">flexspi_edma_transfer_nsize_t</a></td></tr>
<tr class="memdesc:gab11e2fa9c8b7f2848c560c1f111cd8d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA transfer configuration <br/></td></tr>
<tr class="separator:gab11e2fa9c8b7f2848c560c1f111cd8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga2e104747927a91bbd354cc3da7fd8016"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ga2e104747927a91bbd354cc3da7fd8016">_flexspi_edma_ntransfer_size</a> { <br/>
&#160;&#160;<a class="el" href="a00042.html#gga2e104747927a91bbd354cc3da7fd8016aac495b3503a41ac7ed4de613633acd6e">kFLEXPSI_EDMAnSize1Bytes</a> = 0x1U,
<br/>
&#160;&#160;<a class="el" href="a00042.html#gga2e104747927a91bbd354cc3da7fd8016a8f37b34be5953a3ca359ec23140c63d3">kFLEXPSI_EDMAnSize2Bytes</a> = 0x2U,
<br/>
&#160;&#160;<a class="el" href="a00042.html#gga2e104747927a91bbd354cc3da7fd8016aa682f158980e25274dd2588392c6e94d">kFLEXPSI_EDMAnSize4Bytes</a> = 0x4U,
<br/>
&#160;&#160;<a class="el" href="a00042.html#gga2e104747927a91bbd354cc3da7fd8016add962c3ad735e00107a4df51ded158ec">kFLEXPSI_EDMAnSize8Bytes</a> = 0x8U,
<br/>
&#160;&#160;<a class="el" href="a00042.html#gga2e104747927a91bbd354cc3da7fd8016aedff211dd9ab9868632e0c3a8fe231fa">kFLEXPSI_EDMAnSize32Bytes</a> = 0x20U
<br/>
}</td></tr>
<tr class="memdesc:ga2e104747927a91bbd354cc3da7fd8016"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA transfer configuration <a href="a00042.html#ga2e104747927a91bbd354cc3da7fd8016">More...</a><br/></td></tr>
<tr class="separator:ga2e104747927a91bbd354cc3da7fd8016"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Driver version</h2></td></tr>
<tr class="memitem:gaa636d92d25b3e2c9055df861b900886f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#gaa636d92d25b3e2c9055df861b900886f">FSL_FLEXSPI_EDMA_DRIVER_VERSION</a>&#160;&#160;&#160;(<a class="el" href="a00272.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 3, 3))</td></tr>
<tr class="memdesc:gaa636d92d25b3e2c9055df861b900886f"><td class="mdescLeft">&#160;</td><td class="mdescRight">FLEXSPI EDMA driver version. <a href="#gaa636d92d25b3e2c9055df861b900886f">More...</a><br/></td></tr>
<tr class="separator:gaa636d92d25b3e2c9055df861b900886f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
FLEXSPI eDMA Transactional</h2></td></tr>
<tr class="memitem:ga73da3b504891554a3f5306c61d544035"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ga73da3b504891554a3f5306c61d544035">FLEXSPI_TransferCreateHandleEDMA</a> (FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle, <a class="el" href="a00042.html#ga18c417694a255c05206b53e1d882d9c3">flexspi_edma_callback_t</a> callback, void *userData, <a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *txDmaHandle, <a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *rxDmaHandle)</td></tr>
<tr class="memdesc:ga73da3b504891554a3f5306c61d544035"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the FLEXSPI handle for transfer which is used in transactional functions and set the callback. <a href="#ga73da3b504891554a3f5306c61d544035">More...</a><br/></td></tr>
<tr class="separator:ga73da3b504891554a3f5306c61d544035"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab00370842d3c81263d34b672f0b2105b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#gab00370842d3c81263d34b672f0b2105b">FLEXSPI_TransferUpdateSizeEDMA</a> (FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle, <a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7">flexspi_edma_transfer_nsize_t</a> nsize)</td></tr>
<tr class="memdesc:gab00370842d3c81263d34b672f0b2105b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update FLEXSPI EDMA transfer source data transfer size(SSIZE) and destination data transfer size(DSIZE). <a href="#gab00370842d3c81263d34b672f0b2105b">More...</a><br/></td></tr>
<tr class="separator:gab00370842d3c81263d34b672f0b2105b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2048a6a5bf9b8522297e3aea525bd4d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00272.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ga2048a6a5bf9b8522297e3aea525bd4d4">FLEXSPI_TransferEDMA</a> (FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle, <a class="el" href="a00041.html#gae98634a0e73294cf48b94cab5d07b196">flexspi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga2048a6a5bf9b8522297e3aea525bd4d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transfers FLEXSPI data using an eDMA non-blocking method. <a href="#ga2048a6a5bf9b8522297e3aea525bd4d4">More...</a><br/></td></tr>
<tr class="separator:ga2048a6a5bf9b8522297e3aea525bd4d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7cfea2cf3ddab6b2615906345a473f11"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ga7cfea2cf3ddab6b2615906345a473f11">FLEXSPI_TransferAbortEDMA</a> (FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle)</td></tr>
<tr class="memdesc:ga7cfea2cf3ddab6b2615906345a473f11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts the transfer data using eDMA. <a href="#ga7cfea2cf3ddab6b2615906345a473f11">More...</a><br/></td></tr>
<tr class="separator:ga7cfea2cf3ddab6b2615906345a473f11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6edf877e695b01269c5a652ba6e4bd4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00272.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#gaa6edf877e695b01269c5a652ba6e4bd4">FLEXSPI_TransferGetTransferCountEDMA</a> (FLEXSPI_Type *base, <a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *handle, size_t *count)</td></tr>
<tr class="memdesc:gaa6edf877e695b01269c5a652ba6e4bd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the transferred counts of transfer. <a href="#gaa6edf877e695b01269c5a652ba6e4bd4">More...</a><br/></td></tr>
<tr class="separator:gaa6edf877e695b01269c5a652ba6e4bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="a00419" id="a00419"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _flexspi_edma_handle</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:aa157232407e2e5d35064b480d593a1fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#aa157232407e2e5d35064b480d593a1fa">txDmaHandle</a></td></tr>
<tr class="memdesc:aa157232407e2e5d35064b480d593a1fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA handler for FLEXSPI Tx. <a href="#aa157232407e2e5d35064b480d593a1fa">More...</a><br/></td></tr>
<tr class="separator:aa157232407e2e5d35064b480d593a1fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7d9a5bb7f65d1d47101ac7603203cd9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ad7d9a5bb7f65d1d47101ac7603203cd9">rxDmaHandle</a></td></tr>
<tr class="memdesc:ad7d9a5bb7f65d1d47101ac7603203cd9"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA handler for FLEXSPI Rx. <a href="#ad7d9a5bb7f65d1d47101ac7603203cd9">More...</a><br/></td></tr>
<tr class="separator:ad7d9a5bb7f65d1d47101ac7603203cd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c54ee8d2b7efbe1af0b9f247d8f7ef9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a4c54ee8d2b7efbe1af0b9f247d8f7ef9">transferSize</a></td></tr>
<tr class="memdesc:a4c54ee8d2b7efbe1af0b9f247d8f7ef9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bytes need to transfer. <a href="#a4c54ee8d2b7efbe1af0b9f247d8f7ef9">More...</a><br/></td></tr>
<tr class="separator:a4c54ee8d2b7efbe1af0b9f247d8f7ef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c271ce07f7ddca22daf39770d654573"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7">flexspi_edma_transfer_nsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a6c271ce07f7ddca22daf39770d654573">nsize</a></td></tr>
<tr class="memdesc:a6c271ce07f7ddca22daf39770d654573"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA SSIZE/DSIZE in each transfer. <a href="#a6c271ce07f7ddca22daf39770d654573">More...</a><br/></td></tr>
<tr class="separator:a6c271ce07f7ddca22daf39770d654573"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad51f282e886b30cfb36e6d560aa29ace"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#ad51f282e886b30cfb36e6d560aa29ace">nbytes</a></td></tr>
<tr class="memdesc:ad51f282e886b30cfb36e6d560aa29ace"><td class="mdescLeft">&#160;</td><td class="mdescRight">eDMA minor byte transfer count initially configured. <a href="#ad51f282e886b30cfb36e6d560aa29ace">More...</a><br/></td></tr>
<tr class="separator:ad51f282e886b30cfb36e6d560aa29ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af70f35feb4399fe9091bef5de1c6e259"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#af70f35feb4399fe9091bef5de1c6e259">count</a></td></tr>
<tr class="memdesc:af70f35feb4399fe9091bef5de1c6e259"><td class="mdescLeft">&#160;</td><td class="mdescRight">The transfer data count in a DMA request. <a href="#af70f35feb4399fe9091bef5de1c6e259">More...</a><br/></td></tr>
<tr class="separator:af70f35feb4399fe9091bef5de1c6e259"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cc8fcef8caee1ccfee0bb87bce02b27"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a3cc8fcef8caee1ccfee0bb87bce02b27">state</a></td></tr>
<tr class="memdesc:a3cc8fcef8caee1ccfee0bb87bce02b27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal state for FLEXSPI eDMA transfer. <a href="#a3cc8fcef8caee1ccfee0bb87bce02b27">More...</a><br/></td></tr>
<tr class="separator:a3cc8fcef8caee1ccfee0bb87bce02b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94dd0934f086d7ecd380164eef418cf2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00042.html#ga18c417694a255c05206b53e1d882d9c3">flexspi_edma_callback_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a94dd0934f086d7ecd380164eef418cf2">completionCallback</a></td></tr>
<tr class="memdesc:a94dd0934f086d7ecd380164eef418cf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">A callback function called after the eDMA transfer is finished. <a href="#a94dd0934f086d7ecd380164eef418cf2">More...</a><br/></td></tr>
<tr class="separator:a94dd0934f086d7ecd380164eef418cf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cb8afe7f2b148ea0a67b5773abefa6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cb8afe7f2b148ea0a67b5773abefa6c"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00042.html#a6cb8afe7f2b148ea0a67b5773abefa6c">userData</a></td></tr>
<tr class="memdesc:a6cb8afe7f2b148ea0a67b5773abefa6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">User callback parameter. <br/></td></tr>
<tr class="separator:a6cb8afe7f2b148ea0a67b5773abefa6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="aa157232407e2e5d35064b480d593a1fa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a>* _flexspi_edma_handle::txDmaHandle</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad7d9a5bb7f65d1d47101ac7603203cd9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a>* _flexspi_edma_handle::rxDmaHandle</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a4c54ee8d2b7efbe1af0b9f247d8f7ef9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t _flexspi_edma_handle::transferSize</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a6c271ce07f7ddca22daf39770d654573"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7">flexspi_edma_transfer_nsize_t</a> _flexspi_edma_handle::nsize</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ad51f282e886b30cfb36e6d560aa29ace"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _flexspi_edma_handle::nbytes</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="af70f35feb4399fe9091bef5de1c6e259"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t _flexspi_edma_handle::count</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3cc8fcef8caee1ccfee0bb87bce02b27"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t _flexspi_edma_handle::state</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a94dd0934f086d7ecd380164eef418cf2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00042.html#ga18c417694a255c05206b53e1d882d9c3">flexspi_edma_callback_t</a> _flexspi_edma_handle::completionCallback</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gaa636d92d25b3e2c9055df861b900886f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define FSL_FLEXSPI_EDMA_DRIVER_VERSION&#160;&#160;&#160;(<a class="el" href="a00272.html#ga812138aa3315b0c6953c1a26130bcc37">MAKE_VERSION</a>(2, 3, 3))</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga2e104747927a91bbd354cc3da7fd8016"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00042.html#ga2e104747927a91bbd354cc3da7fd8016">_flexspi_edma_ntransfer_size</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga2e104747927a91bbd354cc3da7fd8016aac495b3503a41ac7ed4de613633acd6e"></a>kFLEXPSI_EDMAnSize1Bytes</em>&nbsp;</td><td class="fielddoc">
<p>Source/Destination data transfer size is 1 byte every time. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga2e104747927a91bbd354cc3da7fd8016a8f37b34be5953a3ca359ec23140c63d3"></a>kFLEXPSI_EDMAnSize2Bytes</em>&nbsp;</td><td class="fielddoc">
<p>Source/Destination data transfer size is 2 bytes every time. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga2e104747927a91bbd354cc3da7fd8016aa682f158980e25274dd2588392c6e94d"></a>kFLEXPSI_EDMAnSize4Bytes</em>&nbsp;</td><td class="fielddoc">
<p>Source/Destination data transfer size is 4 bytes every time. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga2e104747927a91bbd354cc3da7fd8016add962c3ad735e00107a4df51ded158ec"></a>kFLEXPSI_EDMAnSize8Bytes</em>&nbsp;</td><td class="fielddoc">
<p>Source/Destination data transfer size is 8 bytes every time. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga2e104747927a91bbd354cc3da7fd8016aedff211dd9ab9868632e0c3a8fe231fa"></a>kFLEXPSI_EDMAnSize32Bytes</em>&nbsp;</td><td class="fielddoc">
<p>Source/Destination data transfer size is 32 bytes every time. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga73da3b504891554a3f5306c61d544035"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXSPI_TransferCreateHandleEDMA </td>
<td>(</td>
<td class="paramtype">FLEXSPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#ga18c417694a255c05206b53e1d882d9c3">flexspi_edma_callback_t</a>&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>userData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>txDmaHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00022.html#ga00acb9562f35755920b20fde1bc9973e">edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>rxDmaHandle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FLEXSPI peripheral base address </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to flexspi_edma_handle_t structure </td></tr>
<tr><td class="paramname">callback</td><td>FLEXSPI callback, NULL means no callback. </td></tr>
<tr><td class="paramname">userData</td><td>User callback function data. </td></tr>
<tr><td class="paramname">txDmaHandle</td><td>User requested DMA handle for TX DMA transfer. </td></tr>
<tr><td class="paramname">rxDmaHandle</td><td>User requested DMA handle for RX DMA transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gab00370842d3c81263d34b672f0b2105b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXSPI_TransferUpdateSizeEDMA </td>
<td>(</td>
<td class="paramtype">FLEXSPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7">flexspi_edma_transfer_nsize_t</a>&#160;</td>
<td class="paramname"><em>nsize</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FLEXSPI peripheral base address </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to flexspi_edma_handle_t structure </td></tr>
<tr><td class="paramname">nsize</td><td>FLEXSPI DMA transfer data transfer size(SSIZE/DSIZE), by default the size is kFLEXPSI_EDMAnSize1Bytes(one byte). </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00042.html#gab11e2fa9c8b7f2848c560c1f111cd8d7" title="eDMA transfer configuration ">flexspi_edma_transfer_nsize_t</a> . </dd></dl>
</div>
</div>
<a class="anchor" id="ga2048a6a5bf9b8522297e3aea525bd4d4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00272.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> FLEXSPI_TransferEDMA </td>
<td>(</td>
<td class="paramtype">FLEXSPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00041.html#gae98634a0e73294cf48b94cab5d07b196">flexspi_transfer_t</a> *&#160;</td>
<td class="paramname"><em>xfer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function writes/receives data to/from the FLEXSPI transmit/receive FIFO. This function is non-blocking. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FLEXSPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to flexspi_edma_handle_t structure </td></tr>
<tr><td class="paramname">xfer</td><td>FLEXSPI transfer structure. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_FLEXSPI_Busy</td><td>FLEXSPI is busy transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>The watermark configuration is invalid, the watermark should be power of 2 to do successfully EDMA transfer. </td></tr>
<tr><td class="paramname">kStatus_Success</td><td>FLEXSPI successfully start edma transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga7cfea2cf3ddab6b2615906345a473f11"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXSPI_TransferAbortEDMA </td>
<td>(</td>
<td class="paramtype">FLEXSPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function aborts the transfer data using eDMA.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FLEXSPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to flexspi_edma_handle_t structure </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaa6edf877e695b01269c5a652ba6e4bd4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00272.html#gaaabdaf7ee58ca7269bd4bf24efcde092">status_t</a> FLEXSPI_TransferGetTransferCountEDMA </td>
<td>(</td>
<td class="paramtype">FLEXSPI_Type *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00042.html#a00419">flexspi_edma_handle_t</a> *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t *&#160;</td>
<td class="paramname"><em>count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>FLEXSPI peripheral base address. </td></tr>
<tr><td class="paramname">handle</td><td>Pointer to flexspi_edma_handle_t structure. </td></tr>
<tr><td class="paramname">count</td><td>Bytes transfer. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Succeed get the transfer count. </td></tr>
<tr><td class="paramname">kStatus_NoTransferInProgress</td><td>There is not a non-blocking transaction currently in progress. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.5-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul class="foot">
<li class="footer">&copy; 2016 NXP Semiconductors. All rights reserved.
</li>
</ul>
</div>
</body>
</html>