Files
2016-08-09 18:06:35 +02:00

646 lines
40 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.6"/>
<title>Kinetis SDK v.2.0 API Reference Manual: FlexIO DMA SPI 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">Kinetis SDK v.2.0 API Reference Manual
&#160;<span id="projectnumber">Rev. 0</span>
</div>
<div id="projectbrief">Freescale Semiconductor, Inc.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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('group__flexio__dma__spi.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="#files">Files</a> &#124;
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> </div>
<div class="headertitle">
<div class="title">FlexIO DMA SPI Driver<div class="ingroups"><a class="el" href="group__flexio__spi.html">FlexIO SPI 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="files"></a>
Files</h2></td></tr>
<tr class="memitem:fsl__flexio__spi__dma_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fsl__flexio__spi__dma_8h.html">fsl_flexio_spi_dma.h</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:struct__flexio__spi__master__dma__handle"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#struct__flexio__spi__master__dma__handle">flexio_spi_master_dma_handle_t</a></td></tr>
<tr class="memdesc:struct__flexio__spi__master__dma__handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexIO SPI DMA transfer handle, users should not touch the content of the handle. <a href="group__flexio__dma__spi.html#struct__flexio__spi__master__dma__handle">More...</a><br/></td></tr>
<tr class="separator:struct__flexio__spi__master__dma__handle"><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:ga914a417275e7dbb5a731a82b083fe4b4"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
flexio_spi_master_dma_handle_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a></td></tr>
<tr class="memdesc:ga914a417275e7dbb5a731a82b083fe4b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave handle is the same with master handle. <a href="#ga914a417275e7dbb5a731a82b083fe4b4">More...</a><br/></td></tr>
<tr class="separator:ga914a417275e7dbb5a731a82b083fe4b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0cf79490a9b206d8ce88a885fa01b76c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0cf79490a9b206d8ce88a885fa01b76c"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ga0cf79490a9b206d8ce88a885fa01b76c">flexio_spi_master_dma_transfer_callback_t</a> )(<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, flexio_spi_master_dma_handle_t *handle, status_t status, void *userData)</td></tr>
<tr class="memdesc:ga0cf79490a9b206d8ce88a885fa01b76c"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexIO SPI master callback for finished transmit. <br/></td></tr>
<tr class="separator:ga0cf79490a9b206d8ce88a885fa01b76c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad8c94c7e3d725f8198aa840f7b47c420"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad8c94c7e3d725f8198aa840f7b47c420"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gad8c94c7e3d725f8198aa840f7b47c420">flexio_spi_slave_dma_transfer_callback_t</a> )(<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a> *handle, status_t status, void *userData)</td></tr>
<tr class="memdesc:gad8c94c7e3d725f8198aa840f7b47c420"><td class="mdescLeft">&#160;</td><td class="mdescRight">FlexIO SPI slave callback for finished transmit. <br/></td></tr>
<tr class="separator:gad8c94c7e3d725f8198aa840f7b47c420"><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>
DMA Transactional</h2></td></tr>
<tr class="memitem:ga18314ff646e620f8a2245267f3a03eb6"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ga18314ff646e620f8a2245267f3a03eb6">FLEXIO_SPI_MasterTransferCreateHandleDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, flexio_spi_master_dma_handle_t *handle, <a class="el" href="group__flexio__dma__spi.html#ga0cf79490a9b206d8ce88a885fa01b76c">flexio_spi_master_dma_transfer_callback_t</a> callback, void *userData, <a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *txHandle, <a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *rxHandle)</td></tr>
<tr class="memdesc:ga18314ff646e620f8a2245267f3a03eb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the FLEXO SPI master DMA handle. <a href="#ga18314ff646e620f8a2245267f3a03eb6">More...</a><br/></td></tr>
<tr class="separator:ga18314ff646e620f8a2245267f3a03eb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac31d7725e8e1871c7dff13fc291d1951"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gac31d7725e8e1871c7dff13fc291d1951">FLEXIO_SPI_MasterTransferDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, flexio_spi_master_dma_handle_t *handle, <a class="el" href="group__flexio__spi.html#structflexio__spi__transfer__t">flexio_spi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:gac31d7725e8e1871c7dff13fc291d1951"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a non-blocking FlexIO SPI transfer using DMA. <a href="#gac31d7725e8e1871c7dff13fc291d1951">More...</a><br/></td></tr>
<tr class="separator:gac31d7725e8e1871c7dff13fc291d1951"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac7dfe0539ae5f2038886677fc9882e97"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gac7dfe0539ae5f2038886677fc9882e97">FLEXIO_SPI_MasterTransferAbortDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, flexio_spi_master_dma_handle_t *handle)</td></tr>
<tr class="memdesc:gac7dfe0539ae5f2038886677fc9882e97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts a FlexIO SPI transfer using DMA. <a href="#gac7dfe0539ae5f2038886677fc9882e97">More...</a><br/></td></tr>
<tr class="separator:gac7dfe0539ae5f2038886677fc9882e97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf846ab7ed262624929ab08466909d335"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gaf846ab7ed262624929ab08466909d335">FLEXIO_SPI_MasterTransferGetCountDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, flexio_spi_master_dma_handle_t *handle, size_t *count)</td></tr>
<tr class="memdesc:gaf846ab7ed262624929ab08466909d335"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the remaining bytes for FlexIO SPI DMA transfer. <a href="#gaf846ab7ed262624929ab08466909d335">More...</a><br/></td></tr>
<tr class="separator:gaf846ab7ed262624929ab08466909d335"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf21be7735e49f874fbe0e294b4592cb3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gaf21be7735e49f874fbe0e294b4592cb3">FLEXIO_SPI_SlaveTransferCreateHandleDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a> *handle, <a class="el" href="group__flexio__dma__spi.html#gad8c94c7e3d725f8198aa840f7b47c420">flexio_spi_slave_dma_transfer_callback_t</a> callback, void *userData, <a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *txHandle, <a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *rxHandle)</td></tr>
<tr class="memdesc:gaf21be7735e49f874fbe0e294b4592cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the FlexIO SPI slave DMA handle. <a href="#gaf21be7735e49f874fbe0e294b4592cb3">More...</a><br/></td></tr>
<tr class="separator:gaf21be7735e49f874fbe0e294b4592cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2089016cbba277628cd9f05a05ea9940"><td class="memItemLeft" align="right" valign="top">status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ga2089016cbba277628cd9f05a05ea9940">FLEXIO_SPI_SlaveTransferDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a> *handle, <a class="el" href="group__flexio__spi.html#structflexio__spi__transfer__t">flexio_spi_transfer_t</a> *xfer)</td></tr>
<tr class="memdesc:ga2089016cbba277628cd9f05a05ea9940"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs a non-blocking FlexIO SPI transfer using DMA. <a href="#ga2089016cbba277628cd9f05a05ea9940">More...</a><br/></td></tr>
<tr class="separator:ga2089016cbba277628cd9f05a05ea9940"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeca5b22fb18a0d2b937daf136747cffd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#gaeca5b22fb18a0d2b937daf136747cffd">FLEXIO_SPI_SlaveTransferAbortDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a> *handle)</td></tr>
<tr class="memdesc:gaeca5b22fb18a0d2b937daf136747cffd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts a FlexIO SPI transfer using DMA. <a href="#gaeca5b22fb18a0d2b937daf136747cffd">More...</a><br/></td></tr>
<tr class="separator:gaeca5b22fb18a0d2b937daf136747cffd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81187d1ea0d66fb31be4b374bb885a1a"><td class="memItemLeft" align="right" valign="top">static status_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ga81187d1ea0d66fb31be4b374bb885a1a">FLEXIO_SPI_SlaveTransferGetCountDMA</a> (<a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *base, <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a> *handle, size_t *count)</td></tr>
<tr class="memdesc:ga81187d1ea0d66fb31be4b374bb885a1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the remaining bytes to be transferred for FlexIO SPI DMA. <a href="#ga81187d1ea0d66fb31be4b374bb885a1a">More...</a><br/></td></tr>
<tr class="separator:ga81187d1ea0d66fb31be4b374bb885a1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="struct__flexio__spi__master__dma__handle" id="struct__flexio__spi__master__dma__handle"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _flexio_spi_master_dma_handle</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"><p>typedef for flexio_spi_master_dma_handle_t in advance.</p>
</div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a9b5d41d9d7a4d12fd1062fd9aa6cfe03"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#a9b5d41d9d7a4d12fd1062fd9aa6cfe03">transferSize</a></td></tr>
<tr class="memdesc:a9b5d41d9d7a4d12fd1062fd9aa6cfe03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total bytes to be transferred. <a href="#a9b5d41d9d7a4d12fd1062fd9aa6cfe03">More...</a><br/></td></tr>
<tr class="separator:a9b5d41d9d7a4d12fd1062fd9aa6cfe03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31a72fb1786d3cf14b55e9484c16e6ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31a72fb1786d3cf14b55e9484c16e6ed"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#a31a72fb1786d3cf14b55e9484c16e6ed">txInProgress</a></td></tr>
<tr class="memdesc:a31a72fb1786d3cf14b55e9484c16e6ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send transfer in progress. <br/></td></tr>
<tr class="separator:a31a72fb1786d3cf14b55e9484c16e6ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7f0a830489dd5b317449fb076600b76"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab7f0a830489dd5b317449fb076600b76"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#ab7f0a830489dd5b317449fb076600b76">rxInProgress</a></td></tr>
<tr class="memdesc:ab7f0a830489dd5b317449fb076600b76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive transfer in progress. <br/></td></tr>
<tr class="separator:ab7f0a830489dd5b317449fb076600b76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f0b9ac3cdea1d88f0311b4bdf31d130"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f0b9ac3cdea1d88f0311b4bdf31d130"></a>
<a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#a3f0b9ac3cdea1d88f0311b4bdf31d130">txHandle</a></td></tr>
<tr class="memdesc:a3f0b9ac3cdea1d88f0311b4bdf31d130"><td class="mdescLeft">&#160;</td><td class="mdescRight">DMA handler for SPI send. <br/></td></tr>
<tr class="separator:a3f0b9ac3cdea1d88f0311b4bdf31d130"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4de2d400db28e529bb943e9b4af12a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4de2d400db28e529bb943e9b4af12a4"></a>
<a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#aa4de2d400db28e529bb943e9b4af12a4">rxHandle</a></td></tr>
<tr class="memdesc:aa4de2d400db28e529bb943e9b4af12a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">DMA handler for SPI receive. <br/></td></tr>
<tr class="separator:aa4de2d400db28e529bb943e9b4af12a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fd4da90bc09374ffdf6c50cdbada787"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fd4da90bc09374ffdf6c50cdbada787"></a>
<a class="el" href="group__flexio__dma__spi.html#ga0cf79490a9b206d8ce88a885fa01b76c">flexio_spi_master_dma_transfer_callback_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#a6fd4da90bc09374ffdf6c50cdbada787">callback</a></td></tr>
<tr class="memdesc:a6fd4da90bc09374ffdf6c50cdbada787"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback for SPI DMA transfer. <br/></td></tr>
<tr class="separator:a6fd4da90bc09374ffdf6c50cdbada787"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ff237e2cebdf3347a6c6915276f0588"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ff237e2cebdf3347a6c6915276f0588"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__flexio__dma__spi.html#a6ff237e2cebdf3347a6c6915276f0588">userData</a></td></tr>
<tr class="memdesc:a6ff237e2cebdf3347a6c6915276f0588"><td class="mdescLeft">&#160;</td><td class="mdescRight">User Data for SPI DMA callback. <br/></td></tr>
<tr class="separator:a6ff237e2cebdf3347a6c6915276f0588"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Field Documentation</h4>
<a class="anchor" id="a9b5d41d9d7a4d12fd1062fd9aa6cfe03"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t flexio_spi_master_dma_handle_t::transferSize</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="ga914a417275e7dbb5a731a82b083fe4b4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef flexio_spi_master_dma_handle_t <a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_handle_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga18314ff646e620f8a2245267f3a03eb6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXIO_SPI_MasterTransferCreateHandleDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexio_spi_master_dma_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__dma__spi.html#ga0cf79490a9b206d8ce88a885fa01b76c">flexio_spi_master_dma_transfer_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="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td>
<td class="paramname"><em>txHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td>
<td class="paramname"><em>rxHandle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the FLEXO SPI master DMA handle which can be used for other FLEXO SPI master transactional APIs. Usually, for a specified FLEXO SPI instance, user need only call this API once to get the initialized handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to flexio_spi_master_dma_handle_t structure to store the transfer state. </td></tr>
<tr><td class="paramname">callback</td><td>SPI callback, NULL means no callback. </td></tr>
<tr><td class="paramname">userData</td><td>callback function parameter. </td></tr>
<tr><td class="paramname">txHandle</td><td>User requested DMA handle for FlexIO SPI RX DMA transfer. </td></tr>
<tr><td class="paramname">rxHandle</td><td>User requested DMA handle for FlexIO SPI TX DMA 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>Successfully create the handle. </td></tr>
<tr><td class="paramname">kStatus_OutOfRange</td><td>The FlexIO SPI DMA type/handle table out of range. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac31d7725e8e1871c7dff13fc291d1951"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXIO_SPI_MasterTransferDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexio_spi_master_dma_handle_t *&#160;</td>
<td class="paramname"><em>handle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structflexio__spi__transfer__t">flexio_spi_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">
<dl class="section note"><dt>Note</dt><dd>This interface returned immediately after transfer initiates, users could call FLEXIO_SPI_MasterGetTransferCountDMA to poll the transfer status to check whether FlexIO SPI transfer finished.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to flexio_spi_master_dma_handle_t structure to store the transfer state. </td></tr>
<tr><td class="paramname">xfer</td><td>Pointer to FlexIO SPI transfer structure. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Successfully start a transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>Input argument is invalid. </td></tr>
<tr><td class="paramname">kStatus_FLEXIO_SPI_Busy</td><td>FlexIO SPI is not idle, is running another transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gac7dfe0539ae5f2038886677fc9882e97"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FLEXIO_SPI_MasterTransferAbortDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexio_spi_master_dma_handle_t *&#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">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>FlexIO SPI DMA handle pointer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf846ab7ed262624929ab08466909d335"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXIO_SPI_MasterTransferGetCountDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">flexio_spi_master_dma_handle_t *&#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>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>FlexIO SPI DMA handle pointer. </td></tr>
<tr><td class="paramname">count</td><td>Number of bytes transferred so far by the non-blocking transaction. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaf21be7735e49f874fbe0e294b4592cb3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXIO_SPI_SlaveTransferCreateHandleDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_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="group__flexio__dma__spi.html#gad8c94c7e3d725f8198aa840f7b47c420">flexio_spi_slave_dma_transfer_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="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td>
<td class="paramname"><em>txHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma__driver.html#structdma__handle__t">dma_handle_t</a> *&#160;</td>
<td class="paramname"><em>rxHandle</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This function initializes the FlexIO SPI slave DMA handle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to flexio_spi_slave_dma_handle_t structure to store the transfer state. </td></tr>
<tr><td class="paramname">callback</td><td>SPI callback, NULL means no callback. </td></tr>
<tr><td class="paramname">userData</td><td>callback function parameter. </td></tr>
<tr><td class="paramname">txHandle</td><td>User requested DMA handle for FlexIO SPI TX DMA transfer. </td></tr>
<tr><td class="paramname">rxHandle</td><td>User requested DMA handle for FlexIO SPI RX DMA transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga2089016cbba277628cd9f05a05ea9940"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">status_t FLEXIO_SPI_SlaveTransferDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_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="group__flexio__spi.html#structflexio__spi__transfer__t">flexio_spi_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">
<dl class="section note"><dt>Note</dt><dd>This interface returned immediately after transfer initiates, users could call FLEXIO_SPI_SlaveGetTransferCountDMA to poll the transfer status to check whether FlexIO SPI transfer finished.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to flexio_spi_slave_dma_handle_t structure to store the transfer state. </td></tr>
<tr><td class="paramname">xfer</td><td>Pointer to FlexIO SPI transfer structure. </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_Success</td><td>Successfully start a transfer. </td></tr>
<tr><td class="paramname">kStatus_InvalidArgument</td><td>Input argument is invalid. </td></tr>
<tr><td class="paramname">kStatus_FLEXIO_SPI_Busy</td><td>FlexIO SPI is not idle, is running another transfer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaeca5b22fb18a0d2b937daf136747cffd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void FLEXIO_SPI_SlaveTransferAbortDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_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>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>pointer to flexio_spi_slave_dma_handle_t structure to store the transfer state. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga81187d1ea0d66fb31be4b374bb885a1a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static status_t FLEXIO_SPI_SlaveTransferGetCountDMA </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type">FLEXIO_SPI_Type</a> *&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__flexio__dma__spi.html#ga914a417275e7dbb5a731a82b083fe4b4">flexio_spi_slave_dma_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>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>pointer to <a class="el" href="group__flexio__spi.html#structFLEXIO__SPI__Type" title="Define FlexIO SPI access structure typedef. ">FLEXIO_SPI_Type</a> structure. </td></tr>
<tr><td class="paramname">handle</td><td>FlexIO SPI DMA handle pointer. </td></tr>
<tr><td class="paramname">count</td><td>Number of bytes transferred so far by the non-blocking transaction. </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>