StuBS
|
The input/output subsystem. More...
Files | |
file | outputstream.h |
This file contains the OutputStream. | |
Namespaces | |
namespace | ACPI |
Abstracts the ACPI standard that provides interfaces for hardware detection, device configuration, and energy management. | |
namespace | ACPI::MADS |
namespace | PS2Controller |
PS/2 Controller. | |
Classes | |
class | CopyStream |
Duplicate all data passed by the stream operator to two output streams. More... | |
class | NullStream |
Ignore all data passed by the stream operator. More... | |
class | SerialStream |
Console (VT100 compatible) via Serial interface. More... | |
class | TextStream |
Output text (form different data type sources) on screen in text mode. More... | |
struct | ACPI::RSDP |
Root System Description Pointer (RSDP) More... | |
struct | ACPI::SDTH |
System Description Table Header (SDTH) More... | |
struct | ACPI::RSDT |
Root System Description Table (RSDT) More... | |
struct | ACPI::XSDT |
Extended System Description Table (XSDT) More... | |
struct | ACPI::SubHeader |
Helper structure. More... | |
struct | ACPI::MADT |
Multiple APIC Description Table (MADT) More... | |
struct | ACPI::Address |
ACPI address format. More... | |
struct | ACPI::MADS::LAPIC |
Processor Local APIC (LAPIC) Structure. More... | |
struct | ACPI::MADS::IOAPIC |
I/O APIC Structure. More... | |
struct | ACPI::MADS::Interrupt_Source_Override |
Interrupt Source Override Structure. More... | |
struct | ACPI::MADS::LAPIC_Address_Override |
Local APIC Address Override Structure. More... | |
class | KeyDecoder |
Decoder for keyboard codes received from the PS2Controller. More... | |
class | Serial |
Serial interface. More... | |
class | TextMode |
Basic operations in the VGA-compatible text mode. More... | |
union | TextMode::Attribute |
Structure of a character attribute consists of 4 bit fore- and 3 bit background color, and a single blink bit. More... | |
struct | TextMode::Cell |
Structure for a cell in text mode. More... | |
struct | TextMode::Attribute.__unnamed53__ |
struct | ACPI::MADS::LAPIC_Address_Override.__unnamed12__.__unnamed14__ |
union | ACPI::MADS::LAPIC_Address_Override.__unnamed12__ |
class | TextWindow |
Virtual windows in text mode. More... | |
The input/output subsystem.
struct ACPI::RSDP |
Root System Description Pointer (RSDP)
The first step to using ACPI is finding the RSDP that is used to find the RSDT / XSDT, which themselves contain pointers to even more tables.
On UEFI systems, the RSDP can be found in the EFI_SYSTEM_TABLE; for non-UEFI systems we have to search for the signature 'RSD PTR ' in the EBDA (Extended Bios Data Area) or in the memory area up to FFFFFh
.
Class Members | ||
---|---|---|
char | signature[8] | |
uint8_t | checksum | |
char | oemid[6] | |
uint8_t | revision | |
uint32_t | rsdtaddress | |
uint32_t | length | |
uint64_t | xsdtaddress | |
uint8_t | extended_checksum | |
uint8_t | reserved[3] |
struct ACPI::Address |
ACPI address format.
The ACPI standard defines its own address format that is able to handle addresses both in memory address space, as well as IO-port address space.
Class Members | ||
---|---|---|
AddressSpace | address_space | |
uint8_t | register_bit_width | |
uint8_t | register_bit_offset | |
uint8_t | reserved | |
uint64_t | address |
struct TextMode::Attribute.__unnamed53__ |
struct ACPI::MADS::LAPIC_Address_Override.__unnamed12__.__unnamed14__ |
union ACPI::MADS::LAPIC_Address_Override.__unnamed12__ |
Class Members | ||
---|---|---|
uint64_t | lapic_address | |
struct LAPIC_Address_Override.__unnamed12__.__unnamed14__ | __unnamed__ |