Blame view
arch/x86/include/asm/mpspec_def.h
3.89 KB
1965aae3c x86: Fix ASM_X86_... |
1 2 |
#ifndef _ASM_X86_MPSPEC_DEF_H #define _ASM_X86_MPSPEC_DEF_H |
1da177e4c Linux-2.6.12-rc2 |
3 4 5 6 7 8 9 10 |
/* * Structure definitions for SMP machines following the * Intel Multiprocessing Specification 1.1 and 1.4. */ /* * This tag identifies where the SMP configuration |
64883ab0e x86: cleanup mpsp... |
11 |
* information is. |
1da177e4c Linux-2.6.12-rc2 |
12 |
*/ |
64883ab0e x86: cleanup mpsp... |
13 |
|
8f08403e6 include/asm-x86/m... |
14 |
#define SMP_MAGIC_IDENT (('_'<<24) | ('P'<<16) | ('M'<<8) | '_') |
1da177e4c Linux-2.6.12-rc2 |
15 |
|
64883ab0e x86: cleanup mpsp... |
16 17 |
#ifdef CONFIG_X86_32 # define MAX_MPC_ENTRY 1024 |
64883ab0e x86: cleanup mpsp... |
18 |
#endif |
1da177e4c Linux-2.6.12-rc2 |
19 |
|
41401db69 x86: rename intel... |
20 21 |
/* Intel MP Floating Pointer Structure */ struct mpf_intel { |
1eb1b3b65 x86: rename all f... |
22 23 24 25 26 27 28 29 30 31 |
char signature[4]; /* "_MP_" */ unsigned int physptr; /* Configuration table address */ unsigned char length; /* Our length (paragraphs) */ unsigned char specification; /* Specification version */ unsigned char checksum; /* Checksum (makes sum 0) */ unsigned char feature1; /* Standard or configuration ? */ unsigned char feature2; /* Bit7 set for IMCR|PIC */ unsigned char feature3; /* Unused (0) */ unsigned char feature4; /* Unused (0) */ unsigned char feature5; /* Unused (0) */ |
1da177e4c Linux-2.6.12-rc2 |
32 |
}; |
64883ab0e x86: cleanup mpsp... |
33 |
#define MPC_SIGNATURE "PCMP" |
f29521e4e x86: rename mp_co... |
34 |
struct mpc_table { |
6c65da50b x86: rename all f... |
35 36 37 38 39 40 41 42 43 44 |
char signature[4]; unsigned short length; /* Size of table */ char spec; /* 0x01 */ char checksum; char oem[8]; char productid[12]; unsigned int oemptr; /* 0 if not present */ unsigned short oemsize; /* 0 if not present */ unsigned short oemcount; unsigned int lapic; /* APIC address */ |
64883ab0e x86: cleanup mpsp... |
45 |
unsigned int reserved; |
1da177e4c Linux-2.6.12-rc2 |
46 47 48 |
}; /* Followed by entries */ |
64883ab0e x86: cleanup mpsp... |
49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
#define MP_PROCESSOR 0 #define MP_BUS 1 #define MP_IOAPIC 2 #define MP_INTSRC 3 #define MP_LINTSRC 4 /* Used by IBM NUMA-Q to describe node locality */ #define MP_TRANSLATION 192 #define CPU_ENABLED 1 /* Processor is available */ #define CPU_BOOTPROCESSOR 2 /* Processor is the BP */ #define CPU_STEPPING_MASK 0x000F #define CPU_MODEL_MASK 0x00F0 #define CPU_FAMILY_MASK 0x0F00 |
1da177e4c Linux-2.6.12-rc2 |
63 |
|
f4f21b716 x86: rename mpc_c... |
64 |
struct mpc_cpu { |
c4563826b x86: rename all f... |
65 66 67 68 69 70 71 |
unsigned char type; unsigned char apicid; /* Local APIC number */ unsigned char apicver; /* Its versions */ unsigned char cpuflag; unsigned int cpufeature; unsigned int featureflag; /* CPUID feature value */ unsigned int reserved[2]; |
1da177e4c Linux-2.6.12-rc2 |
72 |
}; |
00fb8606e x86: rename mpc_c... |
73 |
struct mpc_bus { |
d4c715fad x86: rename all f... |
74 75 76 |
unsigned char type; unsigned char busid; unsigned char bustype[6]; |
1da177e4c Linux-2.6.12-rc2 |
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
}; /* List of Bus Type string values, Intel MP Spec. */ #define BUSTYPE_EISA "EISA" #define BUSTYPE_ISA "ISA" #define BUSTYPE_INTERN "INTERN" /* Internal BUS */ #define BUSTYPE_MCA "MCA" #define BUSTYPE_VL "VL" /* Local bus */ #define BUSTYPE_PCI "PCI" #define BUSTYPE_PCMCIA "PCMCIA" #define BUSTYPE_CBUS "CBUS" #define BUSTYPE_CBUSII "CBUSII" #define BUSTYPE_FUTURE "FUTURE" #define BUSTYPE_MBI "MBI" #define BUSTYPE_MBII "MBII" #define BUSTYPE_MPI "MPI" #define BUSTYPE_MPSA "MPSA" #define BUSTYPE_NUBUS "NUBUS" #define BUSTYPE_TC "TC" #define BUSTYPE_VME "VME" #define BUSTYPE_XPRESS "XPRESS" |
1da177e4c Linux-2.6.12-rc2 |
98 |
|
64883ab0e x86: cleanup mpsp... |
99 |
#define MPC_APIC_USABLE 0x01 |
2b85b5fb4 x86: rename mpc_c... |
100 |
struct mpc_ioapic { |
5df82c7d1 x86: rename all f... |
101 102 103 104 105 |
unsigned char type; unsigned char apicid; unsigned char apicver; unsigned char flags; unsigned int apicaddr; |
1da177e4c Linux-2.6.12-rc2 |
106 |
}; |
540d4e72e x86: rename mpc_c... |
107 |
struct mpc_intsrc { |
e253b396b x86: rename all f... |
108 109 110 111 112 113 114 |
unsigned char type; unsigned char irqtype; unsigned short irqflag; unsigned char srcbus; unsigned char srcbusirq; unsigned char dstapic; unsigned char dstirq; |
1da177e4c Linux-2.6.12-rc2 |
115 116 117 118 119 120 121 122 123 124 125 126 |
}; enum mp_irq_source_types { mp_INT = 0, mp_NMI = 1, mp_SMI = 2, mp_ExtINT = 3 }; #define MP_IRQDIR_DEFAULT 0 #define MP_IRQDIR_HIGH 1 #define MP_IRQDIR_LOW 3 |
64883ab0e x86: cleanup mpsp... |
127 |
#define MP_APIC_ALL 0xFF |
1da177e4c Linux-2.6.12-rc2 |
128 |
|
8fb2952b8 x86: rename mpc_c... |
129 |
struct mpc_lintsrc { |
b5ced7cdb x86: rename all f... |
130 131 132 133 134 135 136 |
unsigned char type; unsigned char irqtype; unsigned short irqflag; unsigned char srcbusid; unsigned char srcbusirq; unsigned char destapic; unsigned char destapiclint; |
1da177e4c Linux-2.6.12-rc2 |
137 |
}; |
64883ab0e x86: cleanup mpsp... |
138 |
#define MPC_OEM_SIGNATURE "_OEM" |
b0e239ffa x86: rename mpc_c... |
139 |
struct mpc_oemtable { |
a1d0272a4 x86: rename all f... |
140 141 142 143 144 |
char signature[4]; unsigned short length; /* Size of table */ char rev; /* 0x01 */ char checksum; char mpc[8]; |
1da177e4c Linux-2.6.12-rc2 |
145 |
}; |
1da177e4c Linux-2.6.12-rc2 |
146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
/* * Default configurations * * 1 2 CPU ISA 82489DX * 2 2 CPU EISA 82489DX neither IRQ 0 timer nor IRQ 13 DMA chaining * 3 2 CPU EISA 82489DX * 4 2 CPU MCA 82489DX * 5 2 CPU ISA+PCI * 6 2 CPU EISA+PCI * 7 2 CPU MCA+PCI */ enum mp_bustype { MP_BUS_ISA = 1, MP_BUS_EISA, MP_BUS_PCI, MP_BUS_MCA, |
1da177e4c Linux-2.6.12-rc2 |
163 |
}; |
1965aae3c x86: Fix ASM_X86_... |
164 |
#endif /* _ASM_X86_MPSPEC_DEF_H */ |