1 /*---------------------------------------------------------------------------*
2   Project: OS - Low Level Data Cache Operations Library
3   File:    OSDC.h
4 
5   Copyright 1998, 1999 Nintendo.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Log: OSDC.h,v $
14   Revision 1.2  2006/02/04 11:56:47  hashida
15   (none)
16 
17   Revision 1.1.1.1  2005/12/29 06:53:28  hiratsu
18   Initial import.
19 
20   Revision 1.1.1.1  2005/05/12 02:41:07  yasuh-to
21   Ported from dolphin source tree.
22 
23 
24     3     1999/05/11 4:43p Shiki
25     Refreshed include tree.
26 
27     1     1999/4/30 12:49p Tianli01
28 
29     1     1999/03/04 2:22p Tianli01
30     Initial check-in to new tree
31 
32     1     1999/02/04 6:02p Tianli01
33     Initial check-in.
34 
35   $NoKeywords: $
36  *---------------------------------------------------------------------------*/
37 
38 /*
39     This header file defines the low level data cache operations.  Most should
40     be macros to the underlying assembly routines, but others will manipulate
41     hardware setup registers.
42  */
43 
44 #ifndef __OSDC_H__
45 #define __OSDC_H__
46 
47 #include <revolution/types.h>
48 
49 #ifdef __cplusplus
50 extern "C" {
51 #endif
52 
53 void DCFlashInvalidate  ( void );
54 void DCEnable           ( void );
55 void DCDisable          ( void );
56 void DCFreeze           ( void );
57 void DCUnfreeze         ( void );
58 void DCTouchLoad        ( void* addr );
59 void DCBlockZero        ( void* addr );
60 void DCBlockStore       ( void* addr );
61 void DCBlockFlush       ( void* addr );
62 void DCBlockInvalidate  ( void* addr );
63 
64 #ifdef __cplusplus
65 }
66 #endif
67 
68 #endif  // __OSDC_H__
69