1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
6<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 7.0.0.0 for Windows">
7<META http-equiv="Content-Style-Type" content="text/css">
8<title>CARD_WriteFlashAsync</title>
9<LINK rel="stylesheet" href="../../css/nitro.css" type="text/css">
10</head>
11
12<body>
13
14<h1 align="left">CARD_WriteFlashAsync <img src="../../image/NTR.gif"align="middle"><img src="../../image/TWL.gif" align="middle"></H1>
15<H2>Syntax</H2>
16
17<dl>
18  <dd>
19<CODE>#include &lt;nitro/card.h&gt;</CODE><BR>
20  <BR>
21  <CODE>static inline void	CARD_WriteFlashAsync(
22	u32 dst, const void *src, u32 len, MIDmaCallback callback, void *arg);</CODE><br>
23  <br>
24  </dd>
25</dl>
26<h2>Arguments</h2>
27<TABLE border="1" width="100%">
28  <TBODY>
29    <TR>
30      <TD width="13%"><EM><STRONG>dst</STRONG></EM></TD>
31      <TD width="87%">The FLASH address of the transfer destination.</TD>
32    </TR>
33    <TR>
34      <TD width="13%"><EM><STRONG>src</STRONG></EM></TD>
35      <TD width="87%">Transfer source memory address.</TD>
36    </TR>
37    <TR>
38      <TD width="13%"><EM><STRONG>len</STRONG></EM></TD>
39      <TD width="87%">Byte length of data to be written.</TD>
40    </TR>
41    <TR>
42      <TD width="13%"><EM><STRONG>callback</STRONG></EM></TD>
43      <TD width="87%">Completion callback function.<BR>
44	  Specify <CODE>NULL</CODE> if this is unnecessary.<br>This callback is called from within the interrupt handler.</TD>
45    </TR>
46    <TR>
47      <TD width="13%"><EM><STRONG>arg</STRONG></EM></TD>
48      <TD width="87%">Arguments to pass to the completion callback function.<BR>
49	  This is simply ignored if <CODE>NULL</CODE> was specified for <CODE>callback</CODE>.</TD>
50    </TR>
51  </TBODY>
52</TABLE>
53
54<h2>Return Values</h2>
55<p>None.</p>
56
57<H2>Description</H2>
58<P>Writes data asynchronously to a flash device. This function immediately returns control. Use the <A href="../backup/CARD_WaitBackupAsync.html"><CODE>CARD_WaitBackupAsync</CODE></A> function to wait for processing to end. To determine the processing result, call the <A href="../common/CARD_GetResultCode.html"><CODE>CARD_GetResultCode</CODE></A> function after processing has ended.<BR>
59</P>
60
61<h2>Note</h2>
62<ul>
63<li>To use this function, you must first lock the access bus with the <A href="../backup/CARD_LockBackup.html"><CODE>CARD_LockBackup</CODE></A> function.</li>
64<li>This function communicates with the ARM7 processor internally via PXI. The process will not end if PXI interrupts are not enabled.</li>
65<li>The function uses an internal thread to execute an asynchronous process. See the description of the <A href="../common/CARD_GetThreadPriority.html"><CODE>CARD_GetThreadPriority</CODE></A> function for more information on this thread.</li>
66<li style="color:Red">Because some high-capacity flash devices do not support &quot;Write&quot; operations, <a href="../card_result_const.html">CARD_RESULT_UNSUPPORTED</a> is returned and execution fails even if this function is called. See the <a href="../overview/about_Backup.html"><B>Backup Access Overview</B></a> for more details, and then use substitute functions, such as <a href="CARD_WriteFlashSector.html"><CODE>CARD_WriteFlashSector</CODE></a>, when necessary.</li>
67</ul>
68
69<h2>See Also</h2>
70<p><CODE><A href="CARD_IsBackupFlash.html">CARD_IsBackupFlash</A>, <A href="../backup/CARD_WaitBackupAsync.html">CARD_WaitBackupAsync</A>, <A href="../common/CARD_GetResultCode.html">CARD_GetResultCode</A>, <A href="CARD_ReadFlash.html">CARD_ReadFlash</A>, <A href="CARD_WriteFlash.html">CARD_WriteFlash</A>, <A href="CARD_VerifyFlash.html">CARD_VerifyFlash</A>, <A href="CARD_WriteAndVerifyFlash.html">CARD_WriteAndVerifyFlash</A>, <A href="../common/CARD_GetThreadPriority.html">CARD_GetThreadPriority</A></CODE></p>
71
72<H2>Revision History</H2>
73<P>
742007/11/13 Added a note regarding the fact that some high-capacity flash devices cannot use this function.<br /> 2005/06/01 Added a statement indicating that callback is called from interrupt handler. <br> 2004/12/09 Changed &quot;IO processor&quot; to &quot;ARM7 processor&quot;. <br> 2004/11/02 Revised links.<br> 2004/08/23 Initial version.
75</P>
76<hr><p>CONFIDENTIAL</p></body>
77</html>
78