cregit-Linux how code gets into the kernel

Release 4.14 arch/mips/include/asm/fw/arc/hinv.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * ARCS hardware/memory inventory/configuration and system ID definitions.
 */
#ifndef _ASM_ARC_HINV_H

#define _ASM_ARC_HINV_H

#include <asm/sgidefs.h>
#include <asm/fw/arc/types.h>

/* configuration query defines */

typedef enum configclass {
	
SystemClass,
	
ProcessorClass,
	
CacheClass,
#ifndef _NT_PROM
	
MemoryClass,
	
AdapterClass,
	
ControllerClass,
	
PeripheralClass
#else	/* _NT_PROM */
	AdapterClass,
	ControllerClass,
	PeripheralClass,
	MemoryClass
#endif	/* _NT_PROM */

} CONFIGCLASS;


typedef enum configtype {
	
ARC,
	
CPU,
	
FPU,
	
PrimaryICache,
	
PrimaryDCache,
	
SecondaryICache,
	
SecondaryDCache,
	
SecondaryCache,
#ifndef _NT_PROM
	
Memory,
#endif
	
EISAAdapter,
	
TCAdapter,
	
SCSIAdapter,
	
DTIAdapter,
	
MultiFunctionAdapter,
	
DiskController,
	
TapeController,
	
CDROMController,
	
WORMController,
	
SerialController,
	
NetworkController,
	
DisplayController,
	
ParallelController,
	
PointerController,
	
KeyboardController,
	
AudioController,
	
OtherController,
	
DiskPeripheral,
	
FloppyDiskPeripheral,
	
TapePeripheral,
	
ModemPeripheral,
	
MonitorPeripheral,
	
PrinterPeripheral,
	
PointerPeripheral,
	
KeyboardPeripheral,
	
TerminalPeripheral,
	
LinePeripheral,
	
NetworkPeripheral,
#ifdef	_NT_PROM
	
Memory,
#endif
	
OtherPeripheral,

	/* new stuff for IP30 */
	/* added without moving anything */
	/* except ANONYMOUS. */

	
XTalkAdapter,
	
PCIAdapter,
	
GIOAdapter,
	
TPUAdapter,

	
Anonymous

} CONFIGTYPE;

typedef enum {
	
Failed = 1,
	
ReadOnly = 2,
	
Removable = 4,
	
ConsoleIn = 8,
	
ConsoleOut = 16,
	
Input = 32,
	
Output = 64

} IDENTIFIERFLAG;

#ifndef NULL			/* for GetChild(NULL); */

#define NULL	0
#endif


union key_u {
	struct {
#ifdef	_MIPSEB
		
unsigned char  c_bsize;		/* block size in lines */
		
unsigned char  c_lsize;		/* line size in bytes/tag */
		
unsigned short c_size;		/* cache size in 4K pages */
#else	/* _MIPSEL */
		unsigned short c_size;		/* cache size in 4K pages */
		unsigned char  c_lsize;		/* line size in bytes/tag */
		unsigned char  c_bsize;		/* block size in lines */
#endif	/* _MIPSEL */
	
} cache;
	
ULONG FullKey;
};

#if _MIPS_SIM == _MIPS_SIM_ABI64

#define SGI_ARCS_VERS	64			
/* sgi 64-bit version */

#define SGI_ARCS_REV	0			
/* rev .00 */
#else

#define SGI_ARCS_VERS	1			
/* first version */

#define SGI_ARCS_REV	10			
/* rev .10, 3/04/92 */
#endif

typedef struct {
	
CONFIGCLASS	Class;
	
CONFIGTYPE	Type;
	
IDENTIFIERFLAG	Flags;
	
USHORT		Version;
	
USHORT		Revision;
	
ULONG		Key;
	
ULONG		AffinityMask;
	
ULONG		ConfigurationDataSize;
	
ULONG		IdentifierLength;
	
char		*Identifier;

} COMPONENT;

/* internal structure that holds pathname parsing data */

struct cfgdata {
	
char *name;			/* full name */
	
int minlen;			/* minimum length to match */
	
CONFIGTYPE type;		/* type of token */
};

/* System ID */
typedef struct {
	
CHAR VendorId[8];
	
CHAR ProductId[8];

} SYSTEMID;

/* memory query functions */

typedef enum memorytype {
	
ExceptionBlock,
	
SPBPage,			/* ARCS == SystemParameterBlock */
#ifndef _NT_PROM
	
FreeContiguous,
	
FreeMemory,
	
BadMemory,
	
LoadedProgram,
	
FirmwareTemporary,
	
FirmwarePermanent
#else	/* _NT_PROM */
	FreeMemory,
	BadMemory,
	LoadedProgram,
	FirmwareTemporary,
	FirmwarePermanent,
	FreeContiguous
#endif	/* _NT_PROM */

} MEMORYTYPE;

typedef struct {
	
MEMORYTYPE	Type;
	
LONG		BasePage;
	
LONG		PageCount;

} MEMORYDESCRIPTOR;

#endif /* _ASM_ARC_HINV_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Linus Torvalds (pre-git)41298.33%120.00%
Yoichi Yuasa40.95%120.00%
Aurelien Jarno10.24%120.00%
Greg Kroah-Hartman10.24%120.00%
Linus Torvalds10.24%120.00%
Total419100.00%5100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.