Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
acpi.h
Go to the documentation of this file.
1#ifndef __HAL__ACPI__ACPI_H_
2#define __HAL__ACPI__ACPI_H_
4#include <type.h>
6struct RSDP_t {
7 char Signature[8];
9 char OEMID[6];
12} __attribute__((packed));
13
25
26struct RSDT {
27 struct SDT h;
29} __attribute__((packed));
30
31typedef struct __attribute__((__packed__)) {
32 uint8_t entry_type; // according to madt_entry_type_t
33 uint8_t record_length;
35
42
47
57
65
66typedef enum { Off = 0, Active } cpu_core_status_t;
67
76
80
81#endif // __HAL__ACPI__ACPI_H_
ACPI_TABLE_TYPE
Definition acpi.h:48
@ ACPI_LOCAL_X2_APIC
Definition acpi.h:55
@ ACPI_LOCAL_APIC_NMI
Definition acpi.h:53
@ ACPI_PROCESSOR_LAPIC
Definition acpi.h:49
@ ACPI_NMI
Definition acpi.h:52
@ ACPI_LOCAL_APIC_OVERRIDE
Definition acpi.h:54
@ ACPI_IO_INT_OVERRIDE
Definition acpi.h:51
cpu_core_status_t
Definition acpi.h:66
@ Active
Definition acpi.h:66
@ Off
Definition acpi.h:66
madt_record_table_entry_t
Definition acpi.h:34
void acpi_phys_page_unmap(uintptr_t addr)
Definition acpi.c:76
typedef __attribute__
struct cpu_core * vxGetCpuInfo(uint8_t apicid)
Definition acpi.c:21
uint8_t vxGetNumberOfCores()
Definition acpi.c:45
uintptr_t acpi_map_phys_page(uintptr_t phys_addr, size_t len)
Definition acpi.c:55
volatile uint64_t addr
Definition e1000.hpp:0
size_t len
Definition oct2bin.h:7
uintptr_t phys_addr
Definition slab.h:6
Definition acpi.h:43
uint8_t type
Definition acpi.h:44
uint8_t length
Definition acpi.h:45
struct ACPI_APIC_ENTRY h
Definition acpi.h:59
uint8_t ioApicId
Definition acpi.h:60
uint32_t ioApicAddress
Definition acpi.h:62
uint8_t reserved
Definition acpi.h:61
uint32_t globalSystemInterruptBase
Definition acpi.h:63
Definition acpi.h:36
struct SDT header
Definition acpi.h:37
madt_record_table_entry_t table[]
Definition acpi.h:40
uint32_t flags
Definition acpi.h:39
uint32_t localApicAddress
Definition acpi.h:38
Definition acpi.h:6
uint8_t Revision
Definition acpi.h:10
char Signature[8]
Definition acpi.h:7
uint32_t RsdtAddress
Definition acpi.h:11
uint8_t Checksum
Definition acpi.h:8
char OEMID[6]
Definition acpi.h:9
Definition acpi.h:26
struct SDT h
Definition acpi.h:27
uint32_t PointerToOtherSDT[]
Definition acpi.h:28
Definition acpi.h:14
char Signature[4]
Definition acpi.h:15
uint8_t Checksum
Definition acpi.h:18
uint32_t CreatorRevision
Definition acpi.h:23
char OEMTableID[8]
Definition acpi.h:20
uint32_t OEMRevision
Definition acpi.h:21
char OEMID[6]
Definition acpi.h:19
uint32_t Length
Definition acpi.h:16
uint32_t CreatorID
Definition acpi.h:22
uint8_t Revision
Definition acpi.h:17
uint8_t cpuid
Definition acpi.h:71
uint8_t apicid
Definition acpi.h:70
cpu_core_status_t status
Definition acpi.h:69
struct cpu_core * next
Definition acpi.h:73
uint32_t flag
Definition acpi.h:72
unsigned int uint32_t
Definition type.h:19
unsigned long uintptr_t
Definition type.h:73
unsigned char uint8_t
Definition type.h:7