blob: 161314964029d42c5aa1cb17b8cb490e6b521a42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#ifndef RSDP_H
#define RSDP_H
#include <types.h>
struct RSDP_descriptor {
char Signature[8];
uint8_t Checksum;
char OEMID[6];
uint8_t Revision;
uint32_t RsdtAddress;
} __attribute__((packed));
struct ACPI_header {
char Signature[4];
uint32_t Length;
uint8_t Revision;
uint8_t Checksum;
char OEMID[6];
char OEMTableID[8];
uint32_t OEMRevision;
uint32_t CreatorID;
uint32_t CreatorRevision;
} __attribute__((packed));
uint64_t *find_rsdp(void);
void list_sys_tables(void);
uint64_t *find_sys_table_addr(const char *signature);
#endif
|