Retro Rocket Kernel
BASIC-Powered Operating System
acpi.h File Reference
#include <kernel.h>

Data Structures

struct  rsdp_t
 ACPI Root System Description Pointer (RSDP) More...
 
struct  sdt_header_t
 System Description Table Header. More...
 
struct  rsdt_t
 Root System Description Table. More...
 
struct  ioapic_t
 Definition of an IOAPIC. More...
 

Functions

struct rsdp_t __attribute__ ((packed)) rsdp_t
 ACPI Root System Description Pointer (RSDP) More...
 
void init_cores ()
 Detect SMP cores, IOAPICs, Local APICs. More...
 
uint8_t * get_lapic_ids ()
 Get the local apic ids. More...
 
uint16_t get_cpu_count ()
 Get the cpu count. More...
 
uint64_t get_local_apic ()
 Get the local apic. More...
 
ioapic_t get_ioapic (uint16_t index)
 Get the ioapic. More...
 
uint16_t get_ioapic_count ()
 Get the ioapic count. More...
 

Variables

char signature [8]
 
uint8_t checksum
 
char oem_id [6]
 
uint8_t revision
 
uint32_t rsdt_address
 
uint32_t length
 
uint64_t xsdt_address
 
uint8_t extended_checksum
 
uint8_t reserved [3]
 
char oem_table_id [8]
 
uint32_t oem_revision
 
uint32_t creator_id
 
uint32_t creator_revision
 
sdt_header_t header
 
uint32_t pointer_to_other_sdt []
 

Detailed Description

Author
Craig Edwards (craig.nosp@m.edwa.nosp@m.rds@b.nosp@m.rain.nosp@m.box.c.nosp@m.c)

Function Documentation

◆ __attribute__()

struct rsdp_t __attribute__ ( (packed)  )

ACPI Root System Description Pointer (RSDP)

Root System Description Table.

System Description Table Header.

◆ get_cpu_count()

uint16_t get_cpu_count ( )

Get the cpu count.

Returns
uint16_t

◆ get_ioapic()

ioapic_t get_ioapic ( uint16_t  index)

Get the ioapic.

Parameters
indexIOAPIC index
Returns
ioapic_t

◆ get_ioapic_count()

uint16_t get_ioapic_count ( )

Get the ioapic count.

Returns
uint16_t total number of IOAPICs

◆ get_lapic_ids()

uint8_t* get_lapic_ids ( )

Get the local apic ids.

Returns
uint8_t*

◆ get_local_apic()

uint64_t get_local_apic ( )

Get the local apic.

Returns
uint64_t

◆ init_cores()

void init_cores ( )

Detect SMP cores, IOAPICs, Local APICs.

Variable Documentation

◆ checksum

uint16_t checksum

◆ creator_id

uint32_t creator_id

◆ creator_revision

uint32_t creator_revision

◆ extended_checksum

uint8_t extended_checksum

◆ header

sdt_header_t header

◆ length

volatile uint16_t length

◆ oem_id

char oem_id

◆ oem_revision

uint32_t oem_revision

◆ oem_table_id

char oem_table_id[8]

◆ pointer_to_other_sdt

uint32_t pointer_to_other_sdt[]

◆ reserved

uint16_t reserved

◆ revision

uint8_t revision

◆ rsdt_address

uint32_t rsdt_address

◆ signature

char signature

◆ xsdt_address

uint64_t xsdt_address