Select Git revision
Forked from
flow3r / flow3r firmware
Source project has a limited visibility.
group__dma.html 69.47 KiB
<!-- HTML header for doxygen 1.8.11-->
<!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.13"/>
<title>MAX32665 SDK Documentation: Direct Memory Access (DMA)</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="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.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: 44px;">
<td id="projectlogo" style="vertical-align:middle"><img alt="Logo" style="width:144px;height:63px;" src="MI_Logo_Small_Pos_RGB_150dpi.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">MAX32665 SDK Documentation
 <span id="projectnumber">0.2</span>
</div>
<div id="projectbrief">Software Development Kit Overview and API Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></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__dma.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#groups">Modules</a> |
<a href="#define-members">Macros</a> |
<a href="#enum-members">Enumerations</a> |
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Direct Memory Access (DMA)</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:group__dma__registers"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma__registers.html">DMA_Registers</a></td></tr>
<tr class="memdesc:group__dma__registers"><td class="mdescLeft"> </td><td class="mdescRight">Registers, Bit Masks and Bit Positions for the DMA Peripheral Module. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gabb43f57800359f23ba2f13ede423e0e4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gabb43f57800359f23ba2f13ede423e0e4">DMA_FALSE</a>   0</td></tr>
<tr class="memdesc:gabb43f57800359f23ba2f13ede423e0e4"><td class="mdescLeft"> </td><td class="mdescRight">Convenience defines for options. <a href="#gabb43f57800359f23ba2f13ede423e0e4">More...</a><br /></td></tr>
<tr class="separator:gabb43f57800359f23ba2f13ede423e0e4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga3467785ce61219725b09f77a87e37e35"><td class="memItemLeft" align="right" valign="top"><a id="ga3467785ce61219725b09f77a87e37e35"></a>
#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga3467785ce61219725b09f77a87e37e35">DMA_TRUE</a>   1</td></tr>
<tr class="memdesc:ga3467785ce61219725b09f77a87e37e35"><td class="mdescLeft"> </td><td class="mdescRight">Define for passing 1 to DMA functions. <br /></td></tr>
<tr class="separator:ga3467785ce61219725b09f77a87e37e35"><td class="memSeparator" colspan="2"> </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:ga63f28310491d665df0ad9a99dc22a77f"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga63f28310491d665df0ad9a99dc22a77f">dma_priority_t</a> { <br />
  <a class="el" href="group__dma.html#gga63f28310491d665df0ad9a99dc22a77fac8cf6ef78512bdaad9bd21bf3cb2bbea">DMA_PRIO_HIGH</a> = MXC_S_DMA_CFG_PRI_HIGH,
<br />
  <a class="el" href="group__dma.html#gga63f28310491d665df0ad9a99dc22a77fa42dbd529d195ee538925451142d3ec8c">DMA_PRIO_MEDHIGH</a> = MXC_S_DMA_CFG_PRI_MEDHIGH,
<br />
  <a class="el" href="group__dma.html#gga63f28310491d665df0ad9a99dc22a77fad9e44418c411eed58b64891c22cd1f10">DMA_PRIO_MEDLOW</a> = MXC_S_DMA_CFG_PRI_MEDLOW,
<br />
  <a class="el" href="group__dma.html#gga63f28310491d665df0ad9a99dc22a77fa71b7004240190841a5681f0a28fb5ab2">DMA_PRIO_LOW</a> = MXC_S_DMA_CFG_PRI_LOW
<br />
}<tr class="memdesc:ga63f28310491d665df0ad9a99dc22a77f"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for the DMA Channel's priority level. <a href="group__dma.html#ga63f28310491d665df0ad9a99dc22a77f">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga63f28310491d665df0ad9a99dc22a77f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gafa41a68d2bce30908687b8eb949c9408"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gafa41a68d2bce30908687b8eb949c9408">dma_reqsel_t</a> { <br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a52aa3b096ab04324a1856d7802842610">DMA_REQSEL_MEMTOMEM</a> = MXC_S_DMA_CFG_REQSEL_MEMTOMEM,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408abeec80c93a1c67928600e7faccabaeda">DMA_REQSEL_SPI1RX</a> = MXC_S_DMA_CFG_REQSEL_SPI1RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a7feff55c70845f0f0b334209c50de15a">DMA_REQSEL_SPI2RX</a> = MXC_S_DMA_CFG_REQSEL_SPI2RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ae5d71746eb6319976fd6ac21fc438773">DMA_REQSEL_UART0RX</a> = MXC_S_DMA_CFG_REQSEL_UART0RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408af2d58174ff7e2f9424ed0598c8726db8">DMA_REQSEL_UART1RX</a> = MXC_S_DMA_CFG_REQSEL_UART1RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a6d7dd2bad36ed7bf64bd09cf5a784dd6">DMA_REQSEL_I2C0RX</a> = MXC_S_DMA_CFG_REQSEL_I2C0RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ab1aec33d0aeb324231903d2f64cd9290">DMA_REQSEL_I2C1RX</a> = MXC_S_DMA_CFG_REQSEL_I2C1RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a0debc12b7abfbb64c913a9b8af55fe28">DMA_REQSEL_ADC</a> = MXC_S_DMA_CFG_REQSEL_ADC,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a4aa40bd280581ee1dca0aab5468f5daf">DMA_REQSEL_I2C2RX</a> = MXC_S_DMA_CFG_REQSEL_I2C2RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408abc49411c07398ce9936d541f026e664b">DMA_REQSEL_UART2RX</a> = MXC_S_DMA_CFG_REQSEL_UART2RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408acc8f9e0c90b3c2238f6a2df36e85f086">DMA_REQSEL_SPI0RX</a> = MXC_S_DMA_CFG_REQSEL_SPI0RX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a833d7259f8abbb014bc8ce2a33406366">DMA_REQSEL_USBRXEP1</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP1,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a81036874591bfc1c2cf66b3f67589b41">DMA_REQSEL_USBRXEP2</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP2,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a911cff001f9ae6d25382b989e937f7d9">DMA_REQSEL_USBRXEP3</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP3,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a5c08868d3265a260fbcd6cfa09e8e2e2">DMA_REQSEL_USBRXEP4</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP4,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a638b88e1779105dbe62a992383f7c004">DMA_REQSEL_USBRXEP5</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP5,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a46b93baaf977e8dabd18d14ba529c6cb">DMA_REQSEL_USBRXEP6</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP6,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a65155976ed71ff0cf558e53365921652">DMA_REQSEL_USBRXEP7</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP7,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a0f2d5554def07b9c26dd4934d8dc7d9e">DMA_REQSEL_USBRXEP8</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP8,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ac21dbab91abffa4ba7bddff783a01ea5">DMA_REQSEL_USBRXEP9</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP9,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408aa7c341d2c7547c65c1e20ce8aac06e6a">DMA_REQSEL_USBRXEP10</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP10,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a7bfad1b5f3c5da7fea79a810bc7d92bf">DMA_REQSEL_USBRXEP11</a> = MXC_S_DMA_CFG_REQSEL_USBRXEP11,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408afde8b46e05a502ffec9fbad0f877ed15">DMA_REQSEL_SPI1TX</a> = MXC_S_DMA_CFG_REQSEL_SPI1TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a6f0dc28a7d70a72f4bde1daa7e863785">DMA_REQSEL_SPI2TX</a> = MXC_S_DMA_CFG_REQSEL_SPI2TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ae883e8f89356b468471a8fff1947395a">DMA_REQSEL_UART0TX</a> = MXC_S_DMA_CFG_REQSEL_UART0TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a39d6e595eb7a84d4b3c1a373ee0255b0">DMA_REQSEL_UART1TX</a> = MXC_S_DMA_CFG_REQSEL_UART1TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a06f099106181e0a36b0e3ddca00fd807">DMA_REQSEL_I2C0TX</a> = MXC_S_DMA_CFG_REQSEL_I2C0TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a5a6dffb436cdc920bb7ae7b0674c48b6">DMA_REQSEL_I2C1TX</a> = MXC_S_DMA_CFG_REQSEL_I2C1TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a9174d43fb9cab4e2f3d1165beda101c3">DMA_REQSEL_UART2TX</a> = MXC_S_DMA_CFG_REQSEL_UART2TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a6ea6c67b1f02c7b6abc11fddecf4ccf0">DMA_REQSEL_SPI0TX</a> = MXC_S_DMA_CFG_REQSEL_SPI0TX,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408aa5d06b5e2ea3856724a87af21de705b4">DMA_REQSEL_USBTXEP1</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP1,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a50cf99fb27f682356152835f60dec149">DMA_REQSEL_USBTXEP2</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP2,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408acb368d8767148eb93576be8249ee6dfe">DMA_REQSEL_USBTXEP3</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP3,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ac7e618d9a05751b458c0891c0f6da192">DMA_REQSEL_USBTXEP4</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP4,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408acce7c16e1b216df66b670c9188266e16">DMA_REQSEL_USBTXEP5</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP5,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a2558f33237f4bd7ffbb5e562dbf9f536">DMA_REQSEL_USBTXEP6</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP6,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a2638678679fed5a4fffed833643f3af2">DMA_REQSEL_USBTXEP7</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP7,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ac81ac617cb5b6512bfce1326b997149a">DMA_REQSEL_USBTXEP8</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP8,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a09a4e3b37b4e877ddb480731551a5703">DMA_REQSEL_USBTXEP9</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP9,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a96ae631b40c0331c19820bac379d1c91">DMA_REQSEL_USBTXEP10</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP10,
<br />
  <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408ac882009cfe8964ad2fedeff3f40a5ac2">DMA_REQSEL_USBTXEP11</a> = MXC_S_DMA_CFG_REQSEL_USBTXEP11
<br />
}<tr class="memdesc:gafa41a68d2bce30908687b8eb949c9408"><td class="mdescLeft"> </td><td class="mdescRight">DMA request select. <a href="group__dma.html#gafa41a68d2bce30908687b8eb949c9408">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gafa41a68d2bce30908687b8eb949c9408"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gabdc20369150b453e75a9560fad63ab9a"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gabdc20369150b453e75a9560fad63ab9a">dma_prescale_t</a> { <br />
  <a class="el" href="group__dma.html#ggabdc20369150b453e75a9560fad63ab9aaf7ebfffdc12244311ce0670376f5c59f">DMA_PRESCALE_DISABLE</a> = MXC_S_DMA_CFG_PSSEL_DIS,
<br />
  <a class="el" href="group__dma.html#ggabdc20369150b453e75a9560fad63ab9aab45b5137e635ee528c687ca978ba7fe4">DMA_PRESCALE_DIV256</a> = MXC_S_DMA_CFG_PSSEL_DIV256,
<br />
  <a class="el" href="group__dma.html#ggabdc20369150b453e75a9560fad63ab9aa1953e4466635842d57a50572196380cf">DMA_PRESCALE_DIV64K</a> = MXC_S_DMA_CFG_PSSEL_DIV64K,
<br />
  <a class="el" href="group__dma.html#ggabdc20369150b453e75a9560fad63ab9aa3ff82f02215f288b96e413109b34f0e5">DMA_PRESCALE_DIV16M</a> = MXC_S_DMA_CFG_PSSEL_DIV16M
<br />
}<tr class="memdesc:gabdc20369150b453e75a9560fad63ab9a"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for the DMA prescaler. <a href="group__dma.html#gabdc20369150b453e75a9560fad63ab9a">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gabdc20369150b453e75a9560fad63ab9a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaf4c2df18735a743030345f350119c3d4"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gaf4c2df18735a743030345f350119c3d4">dma_timeout_t</a> { <br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4a04eec036aeb5054a329fa305c7f53749">DMA_TIMEOUT_4_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO4,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4a8e5515941c783ee146f4578e056a6f7c">DMA_TIMEOUT_8_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO8,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4a84a3cd62ec508564c086235e9aeca82b">DMA_TIMEOUT_16_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO16,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4a5673e85aa449e259b51e49b4bb2632a8">DMA_TIMEOUT_32_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO32,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4ae94c07e166b23a4109987a336bd2ea1f">DMA_TIMEOUT_64_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO64,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4a4b5bc66fd93159dbc396821c2ffc40f8">DMA_TIMEOUT_128_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO128,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4adf89155aca602230e675a053de33b951">DMA_TIMEOUT_256_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO256,
<br />
  <a class="el" href="group__dma.html#ggaf4c2df18735a743030345f350119c3d4ab43fa4db97d344a73d7dfc69d944a244">DMA_TIMEOUT_512_CLK</a> = MXC_S_DMA_CFG_TOSEL_TO512
<br />
}<tr class="memdesc:gaf4c2df18735a743030345f350119c3d4"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for the DMA timeout value. <a href="group__dma.html#gaf4c2df18735a743030345f350119c3d4">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaf4c2df18735a743030345f350119c3d4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga6898fefb607e1b17c9371a257fd6c62d"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a> { <br />
  <a class="el" href="group__dma.html#gga6898fefb607e1b17c9371a257fd6c62da58b97158183b5e2585c5b8311f1c8f7e">DMA_WIDTH_BYTE</a> = MXC_V_DMA_CFG_SRCWD_BYTE,
<br />
  <a class="el" href="group__dma.html#gga6898fefb607e1b17c9371a257fd6c62dac8e0aff0a095342fcca48e913b877941">DMA_WIDTH_HALFWORD</a> = MXC_V_DMA_CFG_SRCWD_HALFWORD,
<br />
  <a class="el" href="group__dma.html#gga6898fefb607e1b17c9371a257fd6c62da6617d79a5707efdfb1ae4b38149de5d4">DMA_WIDTH_WORD</a> = MXC_V_DMA_CFG_SRCWD_WORD
<br />
}<tr class="memdesc:ga6898fefb607e1b17c9371a257fd6c62d"><td class="mdescLeft"> </td><td class="mdescRight">DMA transfer data width. <a href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga6898fefb607e1b17c9371a257fd6c62d"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga84cf72d84bc90d178a0d5cbb895baec8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga84cf72d84bc90d178a0d5cbb895baec8">DMA_Init</a> (void)</td></tr>
<tr class="memdesc:ga84cf72d84bc90d178a0d5cbb895baec8"><td class="mdescLeft"> </td><td class="mdescRight">Initialize DMA resources. <a href="#ga84cf72d84bc90d178a0d5cbb895baec8">More...</a><br /></td></tr>
<tr class="separator:ga84cf72d84bc90d178a0d5cbb895baec8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga894c6664074c33162306c8d58d2670ba"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga894c6664074c33162306c8d58d2670ba">DMA_AcquireChannel</a> (void)</td></tr>
<tr class="memdesc:ga894c6664074c33162306c8d58d2670ba"><td class="mdescLeft"> </td><td class="mdescRight">Request DMA channel. <a href="#ga894c6664074c33162306c8d58d2670ba">More...</a><br /></td></tr>
<tr class="separator:ga894c6664074c33162306c8d58d2670ba"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga6d86bc6327e379a69cd97439893b849f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga6d86bc6327e379a69cd97439893b849f">DMA_ReleaseChannel</a> (int ch)</td></tr>
<tr class="memdesc:ga6d86bc6327e379a69cd97439893b849f"><td class="mdescLeft"> </td><td class="mdescRight">Release DMA channel. <a href="#ga6d86bc6327e379a69cd97439893b849f">More...</a><br /></td></tr>
<tr class="separator:ga6d86bc6327e379a69cd97439893b849f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gad01b401bbe370e2e86fb1f8c69ddf3c0"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gad01b401bbe370e2e86fb1f8c69ddf3c0">DMA_ConfigChannel</a> (int ch, <a class="el" href="group__dma.html#ga63f28310491d665df0ad9a99dc22a77f">dma_priority_t</a> prio, <a class="el" href="group__dma.html#gafa41a68d2bce30908687b8eb949c9408">dma_reqsel_t</a> reqsel, unsigned int reqwait_en, <a class="el" href="group__dma.html#gaf4c2df18735a743030345f350119c3d4">dma_timeout_t</a> tosel, <a class="el" href="group__dma.html#gabdc20369150b453e75a9560fad63ab9a">dma_prescale_t</a> pssel, <a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a> srcwd, unsigned int srcinc_en, <a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a> dstwd, unsigned int dstinc_en, unsigned int burst_size, unsigned int chdis_inten, unsigned int ctz_inten)</td></tr>
<tr class="memdesc:gad01b401bbe370e2e86fb1f8c69ddf3c0"><td class="mdescLeft"> </td><td class="mdescRight">Configure the DMA channel. <a href="#gad01b401bbe370e2e86fb1f8c69ddf3c0">More...</a><br /></td></tr>
<tr class="separator:gad01b401bbe370e2e86fb1f8c69ddf3c0"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gab23fbf32f7633ce6db22e84343945f36"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gab23fbf32f7633ce6db22e84343945f36">DMA_SetSrcDstCnt</a> (int ch, void *src_addr, void *dst_addr, unsigned int count)</td></tr>
<tr class="memdesc:gab23fbf32f7633ce6db22e84343945f36"><td class="mdescLeft"> </td><td class="mdescRight">Set channel source, destination, and count for transfer. <a href="#gab23fbf32f7633ce6db22e84343945f36">More...</a><br /></td></tr>
<tr class="separator:gab23fbf32f7633ce6db22e84343945f36"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gac6f4f34cb5fa0d9fa13de6b05cab3dc1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gac6f4f34cb5fa0d9fa13de6b05cab3dc1">DMA_SetReload</a> (int ch, void *src_addr_reload, void *dst_addr_reload, unsigned int count_reload)</td></tr>
<tr class="memdesc:gac6f4f34cb5fa0d9fa13de6b05cab3dc1"><td class="mdescLeft"> </td><td class="mdescRight">Set channel reload values. <a href="#gac6f4f34cb5fa0d9fa13de6b05cab3dc1">More...</a><br /></td></tr>
<tr class="separator:gac6f4f34cb5fa0d9fa13de6b05cab3dc1"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga7db638ec18ae5a4a328788e75ac3737f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga7db638ec18ae5a4a328788e75ac3737f">DMA_SetCallback</a> (int ch, void(*callback)(int, int))</td></tr>
<tr class="memdesc:ga7db638ec18ae5a4a328788e75ac3737f"><td class="mdescLeft"> </td><td class="mdescRight">Set channel interrupt callback. <a href="#ga7db638ec18ae5a4a328788e75ac3737f">More...</a><br /></td></tr>
<tr class="separator:ga7db638ec18ae5a4a328788e75ac3737f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga2147b06b66d0253625d147e6cafa3455"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga2147b06b66d0253625d147e6cafa3455">DMA_EnableInterrupt</a> (int ch)</td></tr>
<tr class="memdesc:ga2147b06b66d0253625d147e6cafa3455"><td class="mdescLeft"> </td><td class="mdescRight">Enable channel interrupt. <a href="#ga2147b06b66d0253625d147e6cafa3455">More...</a><br /></td></tr>
<tr class="separator:ga2147b06b66d0253625d147e6cafa3455"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaa1544d0a1e57bd09a4c5ec756904990b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gaa1544d0a1e57bd09a4c5ec756904990b">DMA_DisableInterrupt</a> (int ch)</td></tr>
<tr class="memdesc:gaa1544d0a1e57bd09a4c5ec756904990b"><td class="mdescLeft"> </td><td class="mdescRight">Disable channel interrupt. <a href="#gaa1544d0a1e57bd09a4c5ec756904990b">More...</a><br /></td></tr>
<tr class="separator:gaa1544d0a1e57bd09a4c5ec756904990b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaed9bcaca78406be0b76041200e7ba13f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gaed9bcaca78406be0b76041200e7ba13f">DMA_GetFlags</a> (int ch, unsigned int *fl)</td></tr>
<tr class="memdesc:gaed9bcaca78406be0b76041200e7ba13f"><td class="mdescLeft"> </td><td class="mdescRight">Read channel interrupt flags. <a href="#gaed9bcaca78406be0b76041200e7ba13f">More...</a><br /></td></tr>
<tr class="separator:gaed9bcaca78406be0b76041200e7ba13f"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gad5707b870d8e80ddcbbdf547a66abe2b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gad5707b870d8e80ddcbbdf547a66abe2b">DMA_ClearFlags</a> (int ch)</td></tr>
<tr class="memdesc:gad5707b870d8e80ddcbbdf547a66abe2b"><td class="mdescLeft"> </td><td class="mdescRight">Clear channel interrupt flags. <a href="#gad5707b870d8e80ddcbbdf547a66abe2b">More...</a><br /></td></tr>
<tr class="separator:gad5707b870d8e80ddcbbdf547a66abe2b"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ga0aaac740cb64a4dcb6765822121f7535"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#ga0aaac740cb64a4dcb6765822121f7535">DMA_Start</a> (int ch)</td></tr>
<tr class="memdesc:ga0aaac740cb64a4dcb6765822121f7535"><td class="mdescLeft"> </td><td class="mdescRight">Start transfer. <a href="#ga0aaac740cb64a4dcb6765822121f7535">More...</a><br /></td></tr>
<tr class="separator:ga0aaac740cb64a4dcb6765822121f7535"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gae65dc79674aa49ce8690a34d5cb4ba71"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gae65dc79674aa49ce8690a34d5cb4ba71">DMA_Stop</a> (int ch)</td></tr>
<tr class="memdesc:gae65dc79674aa49ce8690a34d5cb4ba71"><td class="mdescLeft"> </td><td class="mdescRight">Stop DMA transfer, irrespective of status (complete or in-progress) <a href="#gae65dc79674aa49ce8690a34d5cb4ba71">More...</a><br /></td></tr>
<tr class="separator:gae65dc79674aa49ce8690a34d5cb4ba71"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaf27b5ad1da269220562875d961984d96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structmxc__dma__ch__regs__t.html">mxc_dma_ch_regs_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gaf27b5ad1da269220562875d961984d96">DMA_GetCHRegs</a> (int ch)</td></tr>
<tr class="memdesc:gaf27b5ad1da269220562875d961984d96"><td class="mdescLeft"> </td><td class="mdescRight">Get a pointer to the DMA channel registers. <a href="#gaf27b5ad1da269220562875d961984d96">More...</a><br /></td></tr>
<tr class="separator:gaf27b5ad1da269220562875d961984d96"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:gaf1148d81c7b69345ebfd00a57efc2099"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__dma.html#gaf1148d81c7b69345ebfd00a57efc2099">DMA_Handler</a> (int ch)</td></tr>
<tr class="memdesc:gaf1148d81c7b69345ebfd00a57efc2099"><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler function. <a href="#gaf1148d81c7b69345ebfd00a57efc2099">More...</a><br /></td></tr>
<tr class="separator:gaf1148d81c7b69345ebfd00a57efc2099"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="gabb43f57800359f23ba2f13ede423e0e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabb43f57800359f23ba2f13ede423e0e4">◆ </a></span>DMA_FALSE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DMA_FALSE   0</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define for passing 0 to DMA functions </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ga63f28310491d665df0ad9a99dc22a77f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga63f28310491d665df0ad9a99dc22a77f">◆ </a></span>dma_priority_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__dma.html#ga63f28310491d665df0ad9a99dc22a77f">dma_priority_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga63f28310491d665df0ad9a99dc22a77fac8cf6ef78512bdaad9bd21bf3cb2bbea"></a>DMA_PRIO_HIGH </td><td class="fielddoc"><p>High Priority. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga63f28310491d665df0ad9a99dc22a77fa42dbd529d195ee538925451142d3ec8c"></a>DMA_PRIO_MEDHIGH </td><td class="fielddoc"><p>Medium High Priority. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga63f28310491d665df0ad9a99dc22a77fad9e44418c411eed58b64891c22cd1f10"></a>DMA_PRIO_MEDLOW </td><td class="fielddoc"><p>Medium Low Priority. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga63f28310491d665df0ad9a99dc22a77fa71b7004240190841a5681f0a28fb5ab2"></a>DMA_PRIO_LOW </td><td class="fielddoc"><p>Low Priority. </p>
</td></tr>
</table>
</div>
</div>
<a id="gafa41a68d2bce30908687b8eb949c9408"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafa41a68d2bce30908687b8eb949c9408">◆ </a></span>dma_reqsel_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__dma.html#gafa41a68d2bce30908687b8eb949c9408">dma_reqsel_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a52aa3b096ab04324a1856d7802842610"></a>DMA_REQSEL_MEMTOMEM </td><td class="fielddoc"><p>Memory to Memory DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408abeec80c93a1c67928600e7faccabaeda"></a>DMA_REQSEL_SPI1RX </td><td class="fielddoc"><p>SPI1 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a7feff55c70845f0f0b334209c50de15a"></a>DMA_REQSEL_SPI2RX </td><td class="fielddoc"><p>SPI2 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ae5d71746eb6319976fd6ac21fc438773"></a>DMA_REQSEL_UART0RX </td><td class="fielddoc"><p>UART0 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408af2d58174ff7e2f9424ed0598c8726db8"></a>DMA_REQSEL_UART1RX </td><td class="fielddoc"><p>UART1 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a6d7dd2bad36ed7bf64bd09cf5a784dd6"></a>DMA_REQSEL_I2C0RX </td><td class="fielddoc"><p>I2C0 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ab1aec33d0aeb324231903d2f64cd9290"></a>DMA_REQSEL_I2C1RX </td><td class="fielddoc"><p>I2C1 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a0debc12b7abfbb64c913a9b8af55fe28"></a>DMA_REQSEL_ADC </td><td class="fielddoc"><p>ADC DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a4aa40bd280581ee1dca0aab5468f5daf"></a>DMA_REQSEL_I2C2RX </td><td class="fielddoc"><p>I2C2 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408abc49411c07398ce9936d541f026e664b"></a>DMA_REQSEL_UART2RX </td><td class="fielddoc"><p>UART2 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408acc8f9e0c90b3c2238f6a2df36e85f086"></a>DMA_REQSEL_SPI0RX </td><td class="fielddoc"><p>SPI0 Receive DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a833d7259f8abbb014bc8ce2a33406366"></a>DMA_REQSEL_USBRXEP1 </td><td class="fielddoc"><p>USB Receive Endpoint 1 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a81036874591bfc1c2cf66b3f67589b41"></a>DMA_REQSEL_USBRXEP2 </td><td class="fielddoc"><p>USB Receive Endpoint 2 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a911cff001f9ae6d25382b989e937f7d9"></a>DMA_REQSEL_USBRXEP3 </td><td class="fielddoc"><p>USB Receive Endpoint 3 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a5c08868d3265a260fbcd6cfa09e8e2e2"></a>DMA_REQSEL_USBRXEP4 </td><td class="fielddoc"><p>USB Receive Endpoint 4 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a638b88e1779105dbe62a992383f7c004"></a>DMA_REQSEL_USBRXEP5 </td><td class="fielddoc"><p>USB Receive Endpoint 5 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a46b93baaf977e8dabd18d14ba529c6cb"></a>DMA_REQSEL_USBRXEP6 </td><td class="fielddoc"><p>USB Receive Endpoint 6 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a65155976ed71ff0cf558e53365921652"></a>DMA_REQSEL_USBRXEP7 </td><td class="fielddoc"><p>USB Receive Endpoint 7 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a0f2d5554def07b9c26dd4934d8dc7d9e"></a>DMA_REQSEL_USBRXEP8 </td><td class="fielddoc"><p>USB Receive Endpoint 8 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ac21dbab91abffa4ba7bddff783a01ea5"></a>DMA_REQSEL_USBRXEP9 </td><td class="fielddoc"><p>USB Receive Endpoint 9 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408aa7c341d2c7547c65c1e20ce8aac06e6a"></a>DMA_REQSEL_USBRXEP10 </td><td class="fielddoc"><p>USB Receive Endpoint 10 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a7bfad1b5f3c5da7fea79a810bc7d92bf"></a>DMA_REQSEL_USBRXEP11 </td><td class="fielddoc"><p>USB Receive Endpoint 11 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408afde8b46e05a502ffec9fbad0f877ed15"></a>DMA_REQSEL_SPI1TX </td><td class="fielddoc"><p>SPI1 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a6f0dc28a7d70a72f4bde1daa7e863785"></a>DMA_REQSEL_SPI2TX </td><td class="fielddoc"><p>SPI2 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ae883e8f89356b468471a8fff1947395a"></a>DMA_REQSEL_UART0TX </td><td class="fielddoc"><p>UART0 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a39d6e595eb7a84d4b3c1a373ee0255b0"></a>DMA_REQSEL_UART1TX </td><td class="fielddoc"><p>UART1 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a06f099106181e0a36b0e3ddca00fd807"></a>DMA_REQSEL_I2C0TX </td><td class="fielddoc"><p>I2C0 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a5a6dffb436cdc920bb7ae7b0674c48b6"></a>DMA_REQSEL_I2C1TX </td><td class="fielddoc"><p>I2C1 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a9174d43fb9cab4e2f3d1165beda101c3"></a>DMA_REQSEL_UART2TX </td><td class="fielddoc"><p>UART 2 Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a6ea6c67b1f02c7b6abc11fddecf4ccf0"></a>DMA_REQSEL_SPI0TX </td><td class="fielddoc"><p>SPI0S Transmit DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408aa5d06b5e2ea3856724a87af21de705b4"></a>DMA_REQSEL_USBTXEP1 </td><td class="fielddoc"><p>USB TX Endpoint 1 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a50cf99fb27f682356152835f60dec149"></a>DMA_REQSEL_USBTXEP2 </td><td class="fielddoc"><p>USB TX Endpoint 2 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408acb368d8767148eb93576be8249ee6dfe"></a>DMA_REQSEL_USBTXEP3 </td><td class="fielddoc"><p>USB TX Endpoint 3 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ac7e618d9a05751b458c0891c0f6da192"></a>DMA_REQSEL_USBTXEP4 </td><td class="fielddoc"><p>USB TX Endpoint 4 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408acce7c16e1b216df66b670c9188266e16"></a>DMA_REQSEL_USBTXEP5 </td><td class="fielddoc"><p>USB TX Endpoint 5 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a2558f33237f4bd7ffbb5e562dbf9f536"></a>DMA_REQSEL_USBTXEP6 </td><td class="fielddoc"><p>USB TX Endpoint 6 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a2638678679fed5a4fffed833643f3af2"></a>DMA_REQSEL_USBTXEP7 </td><td class="fielddoc"><p>USB TX Endpoint 7 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ac81ac617cb5b6512bfce1326b997149a"></a>DMA_REQSEL_USBTXEP8 </td><td class="fielddoc"><p>USB TX Endpoint 8 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a09a4e3b37b4e877ddb480731551a5703"></a>DMA_REQSEL_USBTXEP9 </td><td class="fielddoc"><p>USB TX Endpoint 9 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408a96ae631b40c0331c19820bac379d1c91"></a>DMA_REQSEL_USBTXEP10 </td><td class="fielddoc"><p>USB TX Endpoint 10 DMA Request Selection. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggafa41a68d2bce30908687b8eb949c9408ac882009cfe8964ad2fedeff3f40a5ac2"></a>DMA_REQSEL_USBTXEP11 </td><td class="fielddoc"><p>USB TX Endpoint 11 DMA Request Selection. </p>
</td></tr>
</table>
</div>
</div>
<a id="gabdc20369150b453e75a9560fad63ab9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabdc20369150b453e75a9560fad63ab9a">◆ </a></span>dma_prescale_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__dma.html#gabdc20369150b453e75a9560fad63ab9a">dma_prescale_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggabdc20369150b453e75a9560fad63ab9aaf7ebfffdc12244311ce0670376f5c59f"></a>DMA_PRESCALE_DISABLE </td><td class="fielddoc"><p>Prescaler disabled. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggabdc20369150b453e75a9560fad63ab9aab45b5137e635ee528c687ca978ba7fe4"></a>DMA_PRESCALE_DIV256 </td><td class="fielddoc"><p>Divide by 256. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggabdc20369150b453e75a9560fad63ab9aa1953e4466635842d57a50572196380cf"></a>DMA_PRESCALE_DIV64K </td><td class="fielddoc"><p>Divide by 65,536. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggabdc20369150b453e75a9560fad63ab9aa3ff82f02215f288b96e413109b34f0e5"></a>DMA_PRESCALE_DIV16M </td><td class="fielddoc"><p>Divide by 16,777,216. </p>
</td></tr>
</table>
</div>
</div>
<a id="gaf4c2df18735a743030345f350119c3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf4c2df18735a743030345f350119c3d4">◆ </a></span>dma_timeout_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__dma.html#gaf4c2df18735a743030345f350119c3d4">dma_timeout_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4a04eec036aeb5054a329fa305c7f53749"></a>DMA_TIMEOUT_4_CLK </td><td class="fielddoc"><p>DMA timeout of 4 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4a8e5515941c783ee146f4578e056a6f7c"></a>DMA_TIMEOUT_8_CLK </td><td class="fielddoc"><p>DMA timeout of 8 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4a84a3cd62ec508564c086235e9aeca82b"></a>DMA_TIMEOUT_16_CLK </td><td class="fielddoc"><p>DMA timeout of 16 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4a5673e85aa449e259b51e49b4bb2632a8"></a>DMA_TIMEOUT_32_CLK </td><td class="fielddoc"><p>DMA timeout of 32 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4ae94c07e166b23a4109987a336bd2ea1f"></a>DMA_TIMEOUT_64_CLK </td><td class="fielddoc"><p>DMA timeout of 64 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4a4b5bc66fd93159dbc396821c2ffc40f8"></a>DMA_TIMEOUT_128_CLK </td><td class="fielddoc"><p>DMA timeout of 128 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4adf89155aca602230e675a053de33b951"></a>DMA_TIMEOUT_256_CLK </td><td class="fielddoc"><p>DMA timeout of 256 clocks. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf4c2df18735a743030345f350119c3d4ab43fa4db97d344a73d7dfc69d944a244"></a>DMA_TIMEOUT_512_CLK </td><td class="fielddoc"><p>DMA timeout of 512 clocks. </p>
</td></tr>
</table>
</div>
</div>
<a id="ga6898fefb607e1b17c9371a257fd6c62d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6898fefb607e1b17c9371a257fd6c62d">◆ </a></span>dma_width_t</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga6898fefb607e1b17c9371a257fd6c62da58b97158183b5e2585c5b8311f1c8f7e"></a>DMA_WIDTH_BYTE </td><td class="fielddoc"><p>DMA transfer in bytes. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga6898fefb607e1b17c9371a257fd6c62dac8e0aff0a095342fcca48e913b877941"></a>DMA_WIDTH_HALFWORD </td><td class="fielddoc"><p>DMA transfer in 16-bit half-words. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga6898fefb607e1b17c9371a257fd6c62da6617d79a5707efdfb1ae4b38149de5d4"></a>DMA_WIDTH_WORD </td><td class="fielddoc"><p>DMA transfer in 32-bit words. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga84cf72d84bc90d178a0d5cbb895baec8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga84cf72d84bc90d178a0d5cbb895baec8">◆ </a></span>DMA_Init()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_Init </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This initialization is required before using the DMA driver functions. </p><dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If initialization is successful </dd></dl>
</div>
</div>
<a id="ga894c6664074c33162306c8d58d2670ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga894c6664074c33162306c8d58d2670ba">◆ </a></span>DMA_AcquireChannel()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_AcquireChannel </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a handle to the first free DMA channel, which can be used via API calls or direct access to channel registers using the <a class="el" href="group__dma.html#gaf27b5ad1da269220562875d961984d96" title="Get a pointer to the DMA channel registers. ">DMA_GetCHRegs(int ch)</a> function. </p><dl class="section return"><dt>Returns</dt><dd>Non-negative channel handle (inclusive of zero). </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gad230cb92a2c7133ecdc8bbe820042310" title="Data or resource not available at this time. ">E_NONE_AVAIL</a> All channels in use </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gafd30d7289fced0a47ec3f06ef47bb490" title="Operation not allowed in current state. ">E_BAD_STATE</a> DMA is not initialized, call <a class="el" href="group__dma.html#ga84cf72d84bc90d178a0d5cbb895baec8" title="Initialize DMA resources. ">DMA_Init()</a> first </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#ga12289e8715fd56a16034f610666d900c" title="Busy now, try again later. ">E_BUSY</a> DMA is currently busy (locked), try again later </dd></dl>
</div>
</div>
<a id="ga6d86bc6327e379a69cd97439893b849f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6d86bc6327e379a69cd97439893b849f">◆ </a></span>DMA_ReleaseChannel()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_ReleaseChannel </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Stops any DMA operation on the channel and returns it to the pool of free channels.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ch</td><td>channel handle to release</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> if an unused or invalid channel handle, <a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> otherwise </dd></dl>
</div>
</div>
<a id="gad01b401bbe370e2e86fb1f8c69ddf3c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad01b401bbe370e2e86fb1f8c69ddf3c0">◆ </a></span>DMA_ConfigChannel()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_ConfigChannel </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#ga63f28310491d665df0ad9a99dc22a77f">dma_priority_t</a> </td>
<td class="paramname"><em>prio</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#gafa41a68d2bce30908687b8eb949c9408">dma_reqsel_t</a> </td>
<td class="paramname"><em>reqsel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>reqwait_en</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#gaf4c2df18735a743030345f350119c3d4">dma_timeout_t</a> </td>
<td class="paramname"><em>tosel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#gabdc20369150b453e75a9560fad63ab9a">dma_prescale_t</a> </td>
<td class="paramname"><em>pssel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a> </td>
<td class="paramname"><em>srcwd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>srcinc_en</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__dma.html#ga6898fefb607e1b17c9371a257fd6c62d">dma_width_t</a> </td>
<td class="paramname"><em>dstwd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>dstinc_en</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>burst_size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>chdis_inten</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>ctz_inten</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Configures the channel, which was previously requested by DMA_Getchannel()</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ch</td><td>The channel to configure </td></tr>
<tr><td class="paramname">prio</td><td>The channel's priority </td></tr>
<tr><td class="paramname">reqsel</td><td>Select the DMA request line </td></tr>
<tr><td class="paramname">reqwait_en</td><td>The enable delay before request </td></tr>
<tr><td class="paramname">tosel</td><td>The transfer timer timeout select </td></tr>
<tr><td class="paramname">pssel</td><td>The transfer timer prescale select </td></tr>
<tr><td class="paramname">srcwd</td><td>The size of the read transactions </td></tr>
<tr><td class="paramname">srcinc_en</td><td>Enable auto-increment source pointer </td></tr>
<tr><td class="paramname">dstwd</td><td>The size of write transactions </td></tr>
<tr><td class="paramname">dstinc_en</td><td>Enable auto-increment destination pointer </td></tr>
<tr><td class="paramname">burst_size</td><td>The number of bytes transferred in one transaction </td></tr>
<tr><td class="paramname">chdis_inten</td><td>The channel disable interrupt enable </td></tr>
<tr><td class="paramname">ctz_inten</td><td>The count-to-zero interrupt enable</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters valid </dd></dl>
</div>
</div>
<a id="gab23fbf32f7633ce6db22e84343945f36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab23fbf32f7633ce6db22e84343945f36">◆ </a></span>DMA_SetSrcDstCnt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_SetSrcDstCnt </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"><em>src_addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"><em>dst_addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>count</em> </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">ch</td><td>channel handle </td></tr>
<tr><td class="paramname">src_addr</td><td>source address (*) </td></tr>
<tr><td class="paramname">dst_addr</td><td>destination address (*) </td></tr>
<tr><td class="paramname">count</td><td>number of bytes to transfer</td></tr>
</table>
</dd>
</dl>
<p>This function is used to set the source and destination addresses and the number of bytes to transfer using the channel, <code>ch</code>. </p><dl class="section note"><dt>Note</dt><dd>Unless the channel request select is <a class="el" href="group__dma.html#ggafa41a68d2bce30908687b8eb949c9408a52aa3b096ab04324a1856d7802842610" title="Memory to Memory DMA Request Selection. ">DMA_REQSEL_MEMTOMEM</a>, either src_addr or dst_addr will be ignored by the DMA engine. In these cases, the address is a don't-care. See the User's Guide for more information </dd></dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters valid </dd></dl>
</div>
</div>
<a id="gac6f4f34cb5fa0d9fa13de6b05cab3dc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac6f4f34cb5fa0d9fa13de6b05cab3dc1">◆ </a></span>DMA_SetReload()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_SetReload </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"><em>src_addr_reload</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"><em>dst_addr_reload</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"><em>count_reload</em> </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">ch</td><td>channel handle </td></tr>
<tr><td class="paramname">src_addr_reload</td><td>source address </td></tr>
<tr><td class="paramname">dst_addr_reload</td><td>destination address </td></tr>
<tr><td class="paramname">count_reload</td><td>number of bytes to transfer</td></tr>
</table>
</dd>
</dl>
<p>This function will set the values which will be loaded after the channel count register reaches zero. After enabling, call with count_reload set to zero to disable reload. </p><dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="ga7db638ec18ae5a4a328788e75ac3737f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7db638ec18ae5a4a328788e75ac3737f">◆ </a></span>DMA_SetCallback()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_SetCallback </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void(*)(int, int) </td>
<td class="paramname"><em>callback</em> </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">ch</td><td>channel handle </td></tr>
<tr><td class="paramname">callback</td><td>Pointer to a function to call when the channel interrupt flag is set and interrupts are enabled or when DMA is shutdown by the driver.</td></tr>
</table>
</dd>
</dl>
<p>Configures the channel interrupt callback. The <code>callback</code> function is called for two conditions:</p><ol type="1">
<li>When the channel's interrupt flag is set and DMA interrupts are enabled.</li>
<li>If the driver calls the DMA_Shutdown() function. The callback function prototype is: <div class="fragment"><div class="line"><span class="keywordtype">void</span> callback_fn(<span class="keywordtype">int</span> ch, <span class="keywordtype">int</span> reason);</div></div><!-- fragment --> <code>ch</code> indicates the channel that generated the callback, <code>reason</code> is either <a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> for a DMA interrupt or <a class="el" href="group__MXC__Error__Codes.html#gab45a288b4079b16ffce3f406a18e8675" title="Event was shutdown. ">E_SHUTDOWN</a> if the DMA is being shutdown.</li>
</ol>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="ga2147b06b66d0253625d147e6cafa3455"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2147b06b66d0253625d147e6cafa3455">◆ </a></span>DMA_EnableInterrupt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_EnableInterrupt </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="gaa1544d0a1e57bd09a4c5ec756904990b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa1544d0a1e57bd09a4c5ec756904990b">◆ </a></span>DMA_DisableInterrupt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_DisableInterrupt </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If the parameter is valid </dd></dl>
</div>
</div>
<a id="gaed9bcaca78406be0b76041200e7ba13f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaed9bcaca78406be0b76041200e7ba13f">◆ </a></span>DMA_GetFlags()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_GetFlags </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int * </td>
<td class="paramname"><em>fl</em> </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">ch</td><td>channel handle </td></tr>
<tr><td class="paramname">fl</td><td>flags to get </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="gad5707b870d8e80ddcbbdf547a66abe2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad5707b870d8e80ddcbbdf547a66abe2b">◆ </a></span>DMA_ClearFlags()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_ClearFlags </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="ga0aaac740cb64a4dcb6765822121f7535"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0aaac740cb64a4dcb6765822121f7535">◆ </a></span>DMA_Start()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_Start </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle</td></tr>
</table>
</dd>
</dl>
<p>Start the DMA channel transfer, assumes that <a class="el" href="group__dma.html#gab23fbf32f7633ce6db22e84343945f36" title="Set channel source, destination, and count for transfer. ">DMA_SetSrcDstCnt()</a> has been called beforehand </p><dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If all parameters are valid </dd></dl>
</div>
</div>
<a id="gae65dc79674aa49ce8690a34d5cb4ba71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae65dc79674aa49ce8690a34d5cb4ba71">◆ </a></span>DMA_Stop()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int DMA_Stop </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__MXC__Error__Codes.html#gabcb1b1463f4ea8746d13eafa58048a9c" title="Parameter not acceptable. ">E_BAD_PARAM</a> If there is an unused or invalid channel handle </dd>
<dd>
<a class="el" href="group__MXC__Error__Codes.html#gaa1f0dfda864fa9d2630645f233e1fdb4" title="No Error. ">E_NO_ERROR</a> If the channel handler is valid </dd></dl>
</div>
</div>
<a id="gaf27b5ad1da269220562875d961984d96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf27b5ad1da269220562875d961984d96">◆ </a></span>DMA_GetCHRegs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structmxc__dma__ch__regs__t.html">mxc_dma_ch_regs_t</a>* DMA_GetCHRegs </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle</td></tr>
</table>
</dd>
</dl>
<p>If direct access to DMA channel registers is required, this function can be used on a channel handle returned by <a class="el" href="group__dma.html#ga894c6664074c33162306c8d58d2670ba" title="Request DMA channel. ">DMA_AcquireChannel()</a> </p><dl class="section return"><dt>Returns</dt><dd>NULL if an unused or invalid channel handle, or a valid pointer otherwise </dd></dl>
</div>
</div>
<a id="gaf1148d81c7b69345ebfd00a57efc2099"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf1148d81c7b69345ebfd00a57efc2099">◆ </a></span>DMA_Handler()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void DMA_Handler </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ch</em></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">ch</td><td>channel handle</td></tr>
</table>
</dd>
</dl>
<p>Call this function as the ISR for each DMA channel under driver control. Interrupt flags for channel ch will be automatically cleared before return. </p><dl class="section return"><dt>Returns</dt><dd>NULL if an unused or invalid channel handle, or a valid pointer otherwise </dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.12-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">
<a href="http://www.maximintegrated.com/index.html">
<img class="footer" align="middle" src="MI_Logo_Small_Footer_RGB_150dpi.png" alt="Maxim Integrated"/></a> 0.2 </li>
</ul>
</div>
</body>
</html>