Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
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 {
15 #ifndef _NT_PROM
20 #else /* _NT_PROM */
25 #endif /* _NT_PROM */
26 } CONFIGCLASS;
27 
28 typedef enum configtype {
29  ARC,
30  CPU,
31  FPU,
37 #ifndef _NT_PROM
39 #endif
68 #ifdef _NT_PROM
69  Memory,
70 #endif
72 
73  /* new stuff for IP30 */
74  /* added without moving anything */
75  /* except ANONYMOUS. */
76 
81 
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
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;
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 {
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 {
146 } SYSTEMID;
147 
148 /* memory query functions */
149 typedef enum memorytype {
151  SPBPage, /* ARCS == SystemParameterBlock */
152 #ifndef _NT_PROM
159 #else /* _NT_PROM */
160  FreeMemory,
161  BadMemory,
166 #endif /* _NT_PROM */
167 } MEMORYTYPE;
168 
169 typedef struct memorydescriptor {
174 
175 #endif /* _ASM_ARC_HINV_H */