ApertureOS
madt.h
Go to the documentation of this file.
1 #ifndef _MADT_ACPI_TABLE_H_
2 #define _MADT_ACPI_TABLE_H_
3 
4 #include "types.h"
5 #include "priv_acpi_tables.h"
6 
12 typedef struct
14 {
17  uint32_t flags;
18  uint8_t entries[1];
19 } MADT;
20 
22 typedef struct
23 {
24  uint8_t type;
25  uint8_t entry_size;
27 
29 typedef struct
30 {
32  uint8_t processor_id;
33  uint8_t apic_id;
34  uint32_t flags;
36 #define MADT_LAPIC_ENTRY_TYPE 0
37 
38 typedef struct
40 {
42  uint8_t io_apic_id;
43  uint8_t reserved;
47 #define MADT_IOAPIC_ENTRY_TYPE 1
48 
49 typedef struct
51 {
53  uint8_t bus_src;
54  uint8_t irq_src;
55  uint32_t global_sys_int;
56  uint16_t flags;
58 #define MADT_ISAOVER_ENTRY_TYPE 2
59 
60 typedef struct
62 {
64  uint16_t flags;
65  uint32_t global_sys_int;
67 #define MADT_IOAPIC_NMI_ENTRY_TYPE 3
68 
69 typedef struct
71 {
73  uint8_t apic_id;
74  uint16_t flags;
75  uint8_t lapic_lint;
77 #define MADT_APIC_NMI_ENTRY_TYPE 4
78 
79 
81 #endif /* end of include guard: _MADT_ACPI_TABLE_H_ */
A Local APIC Non-Maskable Interrupt mapping entry in the MADT.
Definition: madt.h:70
uint32_t local_controller_addr
Definition: madt.h:16
An ISA override entry in the MADT.
Definition: madt.h:50
MADT_EntryHeader h
Definition: madt.h:41
MADT_EntryHeader h
Definition: madt.h:31
The MADT.
Definition: madt.h:13
uint8_t reserved
Definition: madt.h:43
MADT_EntryHeader h
Definition: madt.h:63
uint32_t global_sys_int_base
Definition: madt.h:45
uint8_t processor_id
Definition: madt.h:32
A Local APIC entry in the MADT.
Definition: madt.h:29
uint8_t lapic_lint
Definition: madt.h:75
uint8_t bus_src
Definition: madt.h:53
uint8_t io_apic_id
Definition: madt.h:42
uint16_t flags
Definition: madt.h:56
uint16_t flags
Definition: madt.h:74
uint32_t global_sys_int
Definition: madt.h:55
MADT_EntryHeader h
Definition: madt.h:52
An IO APIC Non-Maskable Interrupt mapping entry in the MADT.
Definition: madt.h:61
ACPI Section Descriptor Table header.
Definition: priv_acpi_tables.h:37
uint32_t io_apic_base_addr
Definition: madt.h:44
ACPISDTHeader h
Definition: madt.h:15
uint32_t flags
Definition: madt.h:17
uint8_t apic_id
Definition: madt.h:33
uint32_t flags
Definition: madt.h:34
uint8_t entry_size
Definition: madt.h:25
An IO APIC entry in the MADT.
Definition: madt.h:39
uint8_t type
Definition: madt.h:24
uint8_t irq_src
Definition: madt.h:54
MADT_EntryHeader h
Definition: madt.h:72
uint32_t global_sys_int
Definition: madt.h:65
Header for an entry in the MADT.
Definition: madt.h:22
uint8_t apic_id
Definition: madt.h:73
uint16_t flags
Definition: madt.h:64