diff options
author | jhb <jhb@FreeBSD.org> | 2007-05-08 22:01:04 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2007-05-08 22:01:04 +0000 |
commit | 255387b6b7c4ffa606c4a0b6909f5e6125bc16c9 (patch) | |
tree | 92824ff91cad18a16306dcd8738835fb4975be54 /sys/amd64/include/apicvar.h | |
parent | 7b6b99abf6dac45f71e174a2cebfc5aa4491c92e (diff) | |
download | FreeBSD-src-255387b6b7c4ffa606c4a0b6909f5e6125bc16c9.zip FreeBSD-src-255387b6b7c4ffa606c4a0b6909f5e6125bc16c9.tar.gz |
Handle CPUs with APIC IDs higher than 32 (at least one IBM server uses
an APIC ID of 38 for its second CPU):
- Add a new MAX_APIC_ID constant for the highest valid APIC ID for modern
systems.
- Size the various arrays in the MADT, MP Table, and SMP code that are
indexed by APIC IDs to allow for up to MAX_APIC_ID.
- Explicitly go through and assign logical cpu ids to local APICs before
starting any of the APs up rather than doing it while starting up the
APs. This step is now where we honor MAXCPU.
MFC after: 1 week
Diffstat (limited to 'sys/amd64/include/apicvar.h')
-rw-r--r-- | sys/amd64/include/apicvar.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/amd64/include/apicvar.h b/sys/amd64/include/apicvar.h index 107656b..d36a4f4 100644 --- a/sys/amd64/include/apicvar.h +++ b/sys/amd64/include/apicvar.h @@ -79,6 +79,7 @@ * I/O device! */ +#define MAX_APIC_ID 0xfe #define APIC_ID_ALL 0xff /* I/O Interrupts are used for external devices such as ISA, PCI, etc. */ |