ApertureOS
Data Structures | Macros | Functions | Variables
ACPI Tables

Data Structures

struct  FADT
 The ACPI FADT. More...
 
struct  MADT
 The MADT. More...
 
struct  MADT_EntryHeader
 Header for an entry in the MADT. More...
 
struct  MADT_EntryLAPIC
 A Local APIC entry in the MADT. More...
 
struct  MADT_EntryIOAPIC
 An IO APIC entry in the MADT. More...
 
struct  MADT_EntryISAOVR
 An ISA override entry in the MADT. More...
 
struct  MADT_EntryIOAPIC_NMI
 An IO APIC Non-Maskable Interrupt mapping entry in the MADT. More...
 
struct  MADT_EntryAPIC_NMI
 A Local APIC Non-Maskable Interrupt mapping entry in the MADT. More...
 
struct  MCFG_Entry
 An entry in the MCFG table. More...
 
struct  MCFG
 The MCFG table. More...
 
struct  RSDPDescriptor
 RSDT pointer Table. More...
 
struct  RSDPDescriptor20
 XSDT pointer Table. More...
 
struct  ACPISDTHeader
 ACPI Section Descriptor Table header. More...
 
struct  XSDT
 XSDT Table. More...
 
struct  RSDT
 RSDT Table. More...
 
struct  GenericAddressStructure
 Generic ACPI Address structure. More...
 
struct  pci_vendor_t
 
struct  pci_device_t
 
struct  pci_baseclass_t
 
struct  pci_subclass_t
 

Macros

#define MADT_SIG   "APIC"
 MADT. More...
 
#define FADT_SIG   "FACP"
 FADT. More...
 
#define HPET_SIG   "HPET"
 HPET Table. More...
 
#define MCFG_SIG   "MCFG"
 MCFG Table. More...
 
#define MADT_LAPIC_ENTRY_TYPE   0
 The type ID describing a Local APIC entry. More...
 
#define MADT_IOAPIC_ENTRY_TYPE   1
 The type ID describing an IO APIC entry. More...
 
#define MADT_ISAOVER_ENTRY_TYPE   2
 The type ID describing an ISA override entry. More...
 
#define MADT_IOAPIC_NMI_ENTRY_TYPE   3
 The type ID describing an IO APIC NMI mapping entry. More...
 
#define MADT_APIC_NMI_ENTRY_TYPE   4
 The type ID describing a Local APIC NMI mapping entry. More...
 
#define RSDP_EXPECTED_SIG   "RSD PTR "
 
#define ACPI_VERSION_1   0
 
#define ACPI_VERSION_2   1
 
#define XSDT_GET_POINTER_COUNT(h)   ((h.Length - sizeof(h)) / 8)
 
#define RSDT_GET_POINTER_COUNT(h)   ((h.Length - sizeof(h)) / 4)
 
#define BIOS_SEARCH_START   0x000E0000
 
#define BIOS_SEARCH_END   0x000FFFFF
 

Functions

uint8_t ACPITables_Initialize (void)
 Initialize the ACPITables driver. More...
 
void * ACPITables_FindTable (const char *table_name, int index)
 Search for an ACPI table with the given name. More...
 
uint8_t ACPITables_ValidateChecksum (ACPISDTHeader *header)
 

Variables

RSDPDescriptor20rsdp
 

Detailed Description

Macro Definition Documentation

#define ACPI_VERSION_1   0
#define ACPI_VERSION_2   1
#define BIOS_SEARCH_END   0x000FFFFF
#define BIOS_SEARCH_START   0x000E0000
#define FADT_SIG   "FACP"

FADT.

#define HPET_SIG   "HPET"

HPET Table.

#define MADT_APIC_NMI_ENTRY_TYPE   4

The type ID describing a Local APIC NMI mapping entry.

#define MADT_IOAPIC_ENTRY_TYPE   1

The type ID describing an IO APIC entry.

#define MADT_IOAPIC_NMI_ENTRY_TYPE   3

The type ID describing an IO APIC NMI mapping entry.

#define MADT_ISAOVER_ENTRY_TYPE   2

The type ID describing an ISA override entry.

#define MADT_LAPIC_ENTRY_TYPE   0

The type ID describing a Local APIC entry.

#define MADT_SIG   "APIC"

MADT.

#define MCFG_SIG   "MCFG"

MCFG Table.

#define RSDP_EXPECTED_SIG   "RSD PTR "
#define RSDT_GET_POINTER_COUNT (   h)    ((h.Length - sizeof(h)) / 4)
#define XSDT_GET_POINTER_COUNT (   h)    ((h.Length - sizeof(h)) / 8)

Function Documentation

void* ACPITables_FindTable ( const char *  table_name,
int  index 
)

Search for an ACPI table with the given name.

Parameters
table_nameThe name of the table to search for
indexThe instance of the table to search for
Returns
The physical address of the table on success, NULL on failure
uint8_t ACPITables_Initialize ( void  )

Initialize the ACPITables driver.

Returns
ACPI version on success, 0xFF on failure
uint8_t ACPITables_ValidateChecksum ( ACPISDTHeader header)

Variable Documentation