~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/mips/include/asm/fw/arc/hinv.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

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

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php