1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<HTML> 3<HEAD> 4<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 5<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 7.0.1.0 for Windows"> 6<META http-equiv="Content-Style-Type" content="text/css"> 7<TITLE>MI_NDmaClear</TITLE> 8<LINK rel="stylesheet" href="../../css/nitro.css" type="text/css"> 9</HEAD> 10<BODY> 11<H1 align="left">MI_NDmaClear* <IMG src="../../image/TWL.gif" width="24" height="12" border="0" align=middle></H1> 12<H2>Syntax</H2> 13<DL> 14<DD><CODE>#include <twl/mi.h></CODE><BR> <BR> <CODE>void MI_NDmaClear( u32 ndmaNo,</CODE> 15<DT> <CODE>void* dest, u32 size );</CODE> 16</DL> 17<DL> 18<DD><CODE>void MI_NDmaClear_SetUp( u32 ndmaNo,</CODE> 19<DT> <CODE>void* dest, u32 size );</CODE> 20</DL> 21<DL> 22<DD><CODE>void MI_NDmaClearAsync( u32 dmaNo,</CODE> 23<DT> <CODE>void* dest, u32 size,</CODE> 24<DT><CODE> MINDmaCallback callback, void* arg );</CODE> 25</DL> 26<DL> 27<DD><CODE>void MI_NDmaClearAsync_SetUp( u32 dmaNo,</CODE> 28<DT> <CODE>void* dest, u32 size,</CODE> 29<DT><CODE> MINDmaCallback callback, void* arg );</CODE> 30</DL> 31<DL> 32<DD><CODE>void MI_NDmaClearEx( u32 ndmaNo,</CODE> 33<DT> <CODE> void* dest, u32 size,</CODE> 34<DT> <CODE> MINDmaConfig *config );</CODE> 35</DL> 36<DL> 37<DD><CODE>void MI_NDmaClearEx_SetUp( u32 ndmaNo,</CODE> 38<DT> <CODE> void* dest, u32 size,</CODE> 39<DT> <CODE> MINDmaConfig *config );</CODE> 40</DL> 41<DL> 42<DD><CODE>void MI_NDmaClearExAsync( u32 ndmaNo,</CODE> 43<DT> <CODE>void* dest, u32 size,</CODE> 44<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 45<DD> <CODE> MINDmaConfig *config</CODE><CODE> );</CODE> 46</DL> 47<DL> 48<DD><CODE>void MI_NDmaClearExAsync_SetUp( u32 ndmaNo,</CODE> 49<DT> <CODE>void* dest, u32 size,</CODE> 50<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 51<DD> <CODE> MINDmaConfig *config</CODE><CODE> );</CODE> 52</DL> 53<DL> 54<DD><CODE>void MI_NDmaClear_Dev( u32 ndmaNo,</CODE> 55<DT> <CODE>void* dest, u32 size,</CODE> 56<DT><CODE> MINDmaDevice dev );</CODE> 57</DL> 58<DL> 59<DD><CODE>void MI_NDmaClear_Dev_SetUp( u32 ndmaNo,</CODE> 60<DT> <CODE>void* dest, u32 size,</CODE> 61<DT><CODE> MINDmaDevice dev );</CODE> 62</DL> 63<DL> 64<DD><CODE>void MI_NDmaClearAsync_Dev( u32 ndmaNo,</CODE> 65<DT> <CODE>void* dest, u32 size,</CODE> 66<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 67<DT><CODE> MINDmaDevice dev );</CODE> 68</DL> 69<DL> 70<DD><CODE>void MI_NDmaClearAsync_Dev_SetUp( u32 ndmaNo,</CODE> 71<DT> <CODE>void* dest, u32 size,</CODE> 72<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 73<DT><CODE> MINDmaDevice dev );</CODE> 74</DL> 75<DL> 76<DD><CODE>void MI_NDmaClearEx_Dev( u32 ndmaNo,</CODE> 77<DT> <CODE>void* dest, u32 size,</CODE> 78<DT><CODE> MINDmaConfig *config,</CODE> 79<DT><CODE> MINDmaDevice dev );</CODE> 80</DL> 81<DL> 82<DD><CODE>void MI_NDmaClearEx_Dev_SetUp( u32 ndmaNo,</CODE> 83<DT> <CODE>void* dest, u32 size,</CODE> 84<DT><CODE> MINDmaConfig *config,</CODE> 85<DT><CODE> MINDmaDevice dev );</CODE> 86</DL> 87<DL> 88<DD><CODE>void MI_NDmaClearExAsync_Dev( u32 ndmaNo,</CODE> 89<DT> <CODE>void* dest, u32 size,</CODE> 90<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 91<DD> <CODE>MINDmaConfig *config,</CODE> 92<DT><CODE> MINDmaDevice dev );</CODE> 93</DL> 94<DL> 95<DD><CODE>void MI_NDmaClearExAsync_Dev_SetUp( u32 ndmaNo,</CODE> 96<DT> <CODE>void* dest, u32 size,</CODE> 97<DT><CODE> MINDmaCallback callback, void* arg,</CODE> 98<DD> <CODE>MINDmaConfig *config,</CODE> 99<DT><CODE> MINDmaDevice dev );</CODE> 100</DL> 101<H2>Arguments</H2> 102<TABLE border="1" width="100%"> 103 <TBODY> 104 <TR> 105<TD width="13%"><SPAN class="argument">ndmaNo</SPAN></TD> 106<TD width="87%">DMA channel to use (0-3 within the new DMA)</TD> 107 </TR> 108 <TR> 109<TD width="13%"><SPAN class="argument">dest</SPAN></TD> 110<TD width="87%">Transfer destination address</TD> 111 </TR> 112 <TR> 113<TD><SPAN class="argument">size</SPAN></TD> 114<TD>Transfer size</TD> 115 </TR> 116 <TR> 117<TD><SPAN class="argument">callback</SPAN></TD> 118<TD>Callback when DMA ends</TD> 119 </TR> 120 <TR> 121<TD><SPAN class="argument">arg</SPAN></TD> 122<TD>Callback argument when DMA ends</TD> 123 </TR> 124 <TR> 125<TD><SPAN class="argument">config</SPAN></TD> 126<TD>DMA configuration</TD> 127 </TR> 128 <TR> 129<TD><SPAN class="argument">dev</SPAN></TD> 130<TD>Device (if starting a device)</TD> 131 </TR> 132 </TBODY> 133</TABLE> 134<H2>Return Values</H2> 135<P>None.</P> 136<H2>Description</H2> 137<P>Uses the new DMA to fill with zeroes (clear).<BR> (The <CODE>*_SetUp</CODE> functions configure the DMA settings but do not transfer data.)</P> 138<P>The <CODE>MI_NDmaClear*</CODE> functions use the TWL's new DMA to fill data in word (4-byte) units. The transfer destination address (<SPAN class="argument">dest</SPAN>) must be 4-byte aligned. The transfer size (<SPAN class="argument">size</SPAN>) needs to be a multiple of 4.</P> 139<P>The <CODE>MI_NDmaClear*</CODE> functions are the same as as the corresponding <CODE>MI_NDmaFill*</CODE> functions except that the <SPAN class="argument">data</SPAN> argument is defined as 0. For details, see <A href="MI_NDmaFill.html"><CODE>MI_NDmaFill*</CODE></A>.</P> 140<H2>Internal Operation</H2> 141<P>Uses the new I/O DMA registers.</P> 142<H2>See Also</H2> 143<P><A href="MI_NDmaFill.html"><CODE>MI_NDmaFill*</CODE></A><BR> <A href="MI_NDmaCopy.html"><CODE>MI_NDmaCopy*</CODE></A><BR> <A href="../dma/MI_DmaClear.html"><CODE>MI_DmaClear*</CODE></A><BR> <A href="../memory/MI_CpuClear.html"><CODE>MI_CpuClear*</CODE></A><BR> <A href="MI_NDmaRestart.html"><CODE>MI_NDmaRestart</CODE></A><BR> <A href="about_ndma.html">New NDMA: Overview</A></P> 144<H2>Revision History</H2> 145<P>2008/11/19 Added the link for <CODE>MINDmaDevice</CODE>. <BR>2007/10/31 Added <CODE>_SetUp</CODE>. <BR>2007/09/06 Initial version.</P> 146<hr><p>CONFIDENTIAL</p></body> 147</HTML> 148