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="Microsoft FrontPage 5.0">
7<META http-equiv="Content-Style-Type" content="text/css">
8<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css">
9<title>DCFlushRangeNoSync</title>
10</head>
11
12<body>
13
14<h1>DCFlushRangeNoSync</h1>
15
16
17<h2>C Specification</h2>
18<BLOCKQUOTE>
19<pre><CODE>#include &lt;revolution/os.h&gt;
20
21void DCFlushRangeNoSync(void* startAddr, u32 nBytes);</CODE></pre>
22</BLOCKQUOTE>
23<h2>Arguments</h2>
24<TABLE border="1" cellpadding="3" cellspacing="0.1">
25  <tr>
26<TD width="120" bgcolor="#ffffe8"><em><strong><code><STRONG><EM><CODE>startAddr</CODE></EM></STRONG></code></strong></em></TD>
27<TD width="520">Effective address (not the physical address) .</TD>
28    </tr>
29  <tr>
30<TD width="120" bgcolor="#ffffe8"><strong><em><code><STRONG><EM><CODE>nBytes</CODE></EM></STRONG></code></em></strong></TD>
31<TD width="520">Size of range to  flush.</TD>
32    </tr>
33</TABLE>
34<h2>Return Values</h2>
35
36<p>None.</p>
37
38<h2>Description</h2>
39
40<p>Flushes a specified range. The cache data block hit in the data cache for the specified range is flushed to main memory and invalidated. The <code><strong><em>startAddr</em></strong></code> argument is rounded down to a 32-byte boundary. The end address (i.e., <code><strong><em>startAddr</em></strong></code><i> + </i><strong><em><code>nBytes</code></em></strong>) is rounded up to a 32-byte boundary.</p>
41
42<p>This command will still execute even if the cache is disabled or frozen by the <code><a href="DCFreeze.html">DCFreeze</a></code> function.</p>
43
44<p>This routine does not perform a sync to ensure that the specified range has been flushed to memory.&nbsp;The cache blocks are sent to the bus interface unit to be stored in main memory; but by the time this function returns, the blocks are not guaranteed to have been written to memory.&nbsp;If your code must know that the data has reached main memory, invoke <a href="../Synchronization/PPCSync.html"><code>PPCSync</code></a> on the memory to flush after calling <code>DCFlushRangeNoSync</code>. DMA transfers with locked caches are not affected by the <a href="../Synchronization/PPCSync.html"><code>PPCSync</code></a> function.</p>
45
46<h2>See Also</h2>
47
48<p><a href="../toc.html#Cache" target="contents">Cache Functions</a>, <a href="DCInvalidateRange.html"><code>DCInvalidateRange</code></a>, <code><a href="DCFlushRange.html">DCFlushRange</a>, <a href="DCStoreRange.html">DCStoreRange</a></code>, <code><a href="DCStoreRangeNoSync.html">DCStoreRangeNoSync</a>, <a href="../Synchronization/PPCSync.html">PPCSync</a></code></p>
49
50<h2>Revision History</h2><p></p>
51
52<P>2006/03/01 Initial version.</p>
53
54<hr>
55<P>CONFIDENTIAL</p>
56</BODY>
57</HTML>