Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
mips
include
asm
fw
arc
hinv.h
Go to the documentation of this file.
1
/*
2
* ARCS hardware/memory inventory/configuration and system ID definitions.
3
*/
4
#ifndef _ASM_ARC_HINV_H
5
#define _ASM_ARC_HINV_H
6
7
#include <
asm/sgidefs.h
>
8
#include <
asm/fw/arc/types.h
>
9
10
/* configuration query defines */
11
typedef
enum
configclass
{
12
SystemClass
,
13
ProcessorClass
,
14
CacheClass
,
15
#ifndef _NT_PROM
16
MemoryClass
,
17
AdapterClass
,
18
ControllerClass
,
19
PeripheralClass
20
#else
/* _NT_PROM */
21
AdapterClass
,
22
ControllerClass
,
23
PeripheralClass
,
24
MemoryClass
25
#endif
/* _NT_PROM */
26
}
CONFIGCLASS
;
27
28
typedef
enum
configtype
{
29
ARC
,
30
CPU
,
31
FPU
,
32
PrimaryICache
,
33
PrimaryDCache
,
34
SecondaryICache
,
35
SecondaryDCache
,
36
SecondaryCache
,
37
#ifndef _NT_PROM
38
Memory
,
39
#endif
40
EISAAdapter
,
41
TCAdapter
,
42
SCSIAdapter
,
43
DTIAdapter
,
44
MultiFunctionAdapter
,
45
DiskController
,
46
TapeController
,
47
CDROMController
,
48
WORMController
,
49
SerialController
,
50
NetworkController
,
51
DisplayController
,
52
ParallelController
,
53
PointerController
,
54
KeyboardController
,
55
AudioController
,
56
OtherController
,
57
DiskPeripheral
,
58
FloppyDiskPeripheral
,
59
TapePeripheral
,
60
ModemPeripheral
,
61
MonitorPeripheral
,
62
PrinterPeripheral
,
63
PointerPeripheral
,
64
KeyboardPeripheral
,
65
TerminalPeripheral
,
66
LinePeripheral
,
67
NetworkPeripheral
,
68
#ifdef _NT_PROM
69
Memory
,
70
#endif
71
OtherPeripheral
,
72
73
/* new stuff for IP30 */
74
/* added without moving anything */
75
/* except ANONYMOUS. */
76
77
XTalkAdapter
,
78
PCIAdapter
,
79
GIOAdapter
,
80
TPUAdapter
,
81
82
Anonymous
83
}
CONFIGTYPE
;
84
85
typedef
enum
{
86
Failed
= 1,
87
ReadOnly
= 2,
88
Removable
= 4,
89
ConsoleIn
= 8,
90
ConsoleOut
= 16,
91
Input
= 32,
92
Output
= 64
93
}
IDENTIFIERFLAG
;
94
95
#ifndef NULL
/* for GetChild(NULL); */
96
#define NULL 0
97
#endif
98
99
union
key_u
{
100
struct
{
101
#ifdef _MIPSEB
102
unsigned
char
c_bsize
;
/* block size in lines */
103
unsigned
char
c_lsize
;
/* line size in bytes/tag */
104
unsigned
short
c_size
;
/* cache size in 4K pages */
105
#else
/* _MIPSEL */
106
unsigned
short
c_size
;
/* cache size in 4K pages */
107
unsigned
char
c_lsize
;
/* line size in bytes/tag */
108
unsigned
char
c_bsize
;
/* block size in lines */
109
#endif
/* _MIPSEL */
110
}
cache
;
111
ULONG
FullKey
;
112
};
113
114
#if _MIPS_SIM == _MIPS_SIM_ABI64
115
#define SGI_ARCS_VERS 64
/* sgi 64-bit version */
116
#define SGI_ARCS_REV 0
/* rev .00 */
117
#else
118
#define SGI_ARCS_VERS 1
/* first version */
119
#define SGI_ARCS_REV 10
/* rev .10, 3/04/92 */
120
#endif
121
122
typedef
struct
component
{
123
CONFIGCLASS
Class
;
124
CONFIGTYPE
Type
;
125
IDENTIFIERFLAG
Flags
;
126
USHORT
Version
;
127
USHORT
Revision
;
128
ULONG
Key
;
129
ULONG
AffinityMask
;
130
ULONG
ConfigurationDataSize
;
131
ULONG
IdentifierLength
;
132
char
*
Identifier
;
133
}
COMPONENT
;
134
135
/* internal structure that holds pathname parsing data */
136
struct
cfgdata
{
137
char
*
name
;
/* full name */
138
int
minlen
;
/* minimum length to match */
139
CONFIGTYPE
type
;
/* type of token */
140
};
141
142
/* System ID */
143
typedef
struct
systemid
{
144
CHAR
VendorId
[8];
145
CHAR
ProductId
[8];
146
}
SYSTEMID
;
147
148
/* memory query functions */
149
typedef
enum
memorytype
{
150
ExceptionBlock
,
151
SPBPage
,
/* ARCS == SystemParameterBlock */
152
#ifndef _NT_PROM
153
FreeContiguous
,
154
FreeMemory
,
155
BadMemory
,
156
LoadedProgram
,
157
FirmwareTemporary
,
158
FirmwarePermanent
159
#else
/* _NT_PROM */
160
FreeMemory
,
161
BadMemory
,
162
LoadedProgram
,
163
FirmwareTemporary
,
164
FirmwarePermanent
,
165
FreeContiguous
166
#endif
/* _NT_PROM */
167
}
MEMORYTYPE
;
168
169
typedef
struct
memorydescriptor
{
170
MEMORYTYPE
Type
;
171
LONG
BasePage
;
172
LONG
PageCount
;
173
}
MEMORYDESCRIPTOR
;
174
175
#endif
/* _ASM_ARC_HINV_H */
Generated on Thu Jan 10 2013 13:09:36 for Linux Kernel by
1.8.2