MADT
This page is about the ACPI MADT (Multiple APIC Description Table)
MADT
Introduction
The MADT describes all of the interrupt controllers in the system. It can be used to enumerate the processors currently available.
Table Structure
The MADT starts with the standard ACPI table header.
Offset (hex) | Length | Description |
---|---|---|
00 | 4 | Signature |
04 | 4 | Length |
08 | 1 | Revision |
09 | 1 | Checksum |
0a | 6 | OEMID |
10 | 8 | OEM Table ID |
18 | 4 | OEM Revision |
1c | 4 | Creator ID |
20 | 4 | Creator Revision |
After the standard header, the following fields are located.
Offset (hex) | Length | Description |
---|---|---|
24 | 4 | Local Controller Address |
28 | 4 | Flags (1 = Dual 8259 Legacy PICs Installed) |
After the Flags field, the rest of the MADT table contains a sequence of variable length records which enumerate the interrupt devices on this machine. Each record begins with the following header fields.
Offset (hex) | Length | Description |
---|---|---|
0 | 1 | Device Type |
1 | 1 | Record Length |
Based on the Device Type field value, the rest of the record layout can be determined.
Device Type 0 : Processor Local APIC
This device type represents a single physical processor and its local interrupt controller.
Offset (hex) | Length | Description |
---|---|---|
2 | 1 | ACPI Processor ID |
3 | 1 | APIC ID |
4 | 4 | Flags (1 = Processor Enabled) |