diff options
Diffstat (limited to 'OvmfPkg/AcpiTables/Madt.aslc')
-rw-r--r-- | OvmfPkg/AcpiTables/Madt.aslc | 109 |
1 files changed, 63 insertions, 46 deletions
diff --git a/OvmfPkg/AcpiTables/Madt.aslc b/OvmfPkg/AcpiTables/Madt.aslc index 62bf2c7fd2..8a3b836bcd 100644 --- a/OvmfPkg/AcpiTables/Madt.aslc +++ b/OvmfPkg/AcpiTables/Madt.aslc @@ -67,65 +67,82 @@ typedef struct { // Multiple APIC Description Table
//
EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE Madt = {
- EFI_ACPI_1_0_APIC_SIGNATURE,
- sizeof (EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE),
- EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION,
- 0x00, // Checksum will be updated at runtime
- EFI_ACPI_OEM_ID,
- EFI_ACPI_OEM_TABLE_ID,
- EFI_ACPI_OEM_REVISION,
- EFI_ACPI_CREATOR_ID,
- EFI_ACPI_CREATOR_REVISION,
-
- //
- // MADT specific fields
- //
- EFI_ACPI_LOCAL_APIC_ADDRESS,
- EFI_ACPI_1_0_MULTIPLE_APIC_FLAGS,
+ {
+ {
+ EFI_ACPI_1_0_APIC_SIGNATURE,
+ sizeof (EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE),
+ EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION,
+ 0x00, // Checksum will be updated at runtime
+ {EFI_ACPI_OEM_ID},
+ EFI_ACPI_OEM_TABLE_ID,
+ EFI_ACPI_OEM_REVISION,
+ EFI_ACPI_CREATOR_ID,
+ EFI_ACPI_CREATOR_REVISION
+ },
+
+ //
+ // MADT specific fields
+ //
+ EFI_ACPI_LOCAL_APIC_ADDRESS,
+ EFI_ACPI_1_0_MULTIPLE_APIC_FLAGS,
+ },
//
// Processor Local APIC Structure
//
-
- EFI_ACPI_1_0_PROCESSOR_LOCAL_APIC, // Type
- sizeof (EFI_ACPI_1_0_PROCESSOR_LOCAL_APIC_STRUCTURE), // Length
- 0x00, // Processor ID
- 0x00, // Local APIC ID
- 0x00000001, // Flags - Enabled by default
+ {
+ {
+ EFI_ACPI_1_0_PROCESSOR_LOCAL_APIC, // Type
+ sizeof (EFI_ACPI_1_0_PROCESSOR_LOCAL_APIC_STRUCTURE), // Length
+ 0x00, // Processor ID
+ 0x00, // Local APIC ID
+ 0x00000001 // Flags - Enabled by default
+ }
+ },
//
// Interrupt Source Override Structure
//
- //
- // IRQ0=>IRQ2 Interrupt Source Override Structure
- //
- EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE, // Type
- sizeof (EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE),// Length
- 0x00, // Bus - ISA
- 0x00, // Source - IRQ0
- 0x00000002, // Global System Interrupt - IRQ2
- 0x0000, // Flags - Conforms to specifications of the bus
-
- //
- // ISO (SCI Active High) Interrupt Source Override Structure
- //
- EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE, // Type
- sizeof (EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE),// Length
- 0x00, // Bus - ISA
- 0x09, // Source - IRQ0
- 0x00000009, // Global System Interrupt - IRQ2
- 0x000D, // Flags - Level-tiggered, Active High
+ {
+ {
+ //
+ // IRQ0=>IRQ2 Interrupt Source Override Structure
+ //
+ EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE, // Type
+ sizeof (EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE),// Length
+ 0x00, // Bus - ISA
+ 0x00, // Source - IRQ0
+ 0x00000002, // Global System Interrupt - IRQ2
+ 0x0000 // Flags - Conforms to specifications of the bus
+ },
+
+ {
+ //
+ // ISO (SCI Active High) Interrupt Source Override Structure
+ //
+ EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE, // Type
+ sizeof (EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE),// Length
+ 0x00, // Bus - ISA
+ 0x09, // Source - IRQ0
+ 0x00000009, // Global System Interrupt - IRQ2
+ 0x000D // Flags - Level-tiggered, Active High
+ }
+ },
//
// IO APIC Structure
//
- EFI_ACPI_1_0_IO_APIC, // Type
- sizeof (EFI_ACPI_1_0_IO_APIC_STRUCTURE), // Length
- 0x02, // IO APIC ID
- EFI_ACPI_RESERVED_BYTE, // Reserved
- 0xFEC00000, // IO APIC Address (physical)
- 0x00000000 // Global System Interrupt Base
+ {
+ {
+ EFI_ACPI_1_0_IO_APIC, // Type
+ sizeof (EFI_ACPI_1_0_IO_APIC_STRUCTURE), // Length
+ 0x02, // IO APIC ID
+ EFI_ACPI_RESERVED_BYTE, // Reserved
+ 0xFEC00000, // IO APIC Address (physical)
+ 0x00000000 // Global System Interrupt Base
+ }
+ },
};
|