1 /*---------------------------------------------------------------------------*
2   Project:  OS Semaphore API
3   File:     OSInfo.h
4 
5   Copyright (C) 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  *---------------------------------------------------------------------------*/
14 
15 #ifndef __OSINFO_H__
16 #define __OSINFO_H__
17 
18 // SetInfo selectors
19 #define OS_SETINFO_PMC_THREADS      0
20 
21 // SetInfo options
22 #define OS_SETINFO_OPTIONS_NONE     0
23 
24 // GetInfo selectors
25 #define OS_GETINFO_PMC_THREADS      0
26 #define OS_GETINFO_HDP              1
27 
28 // GetInfo options
29 #define OS_GETINFO_OPTIONS_NONE     0
30 
31 FORWARD_DECLARE_STRUCT_TYPE(OSGetInfo_HDP)
32 
33 struct OSGetInfo_HDP
34 {
35     void * hdpStartAddr;
36     u32    hdpSize;
37 };
38 
39 #ifndef _ASSEMBLER
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
44 BOOL OSSetInfo(u32   selector,
45                void* infoSrcAddr,
46                u32   size,
47                u32   options);
48 
49 BOOL OSGetInfo(u32   selector,
50                void* infoDestAddr,
51                u32   size,
52                u32   options);
53 
54 #ifdef __cplusplus
55 }
56 #endif
57 #endif  // _ASSEMBLER
58 #endif  // __OSINFO_H__
59 
60