summaryrefslogtreecommitdiff
path: root/stage3/bootinfo.h
blob: 825f51384293f87ec966b0ccaf1a97629f5345d4 (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
31
32
#ifndef BOOTINFO_H
#define BOOTINFO_H

#include "def.h"

typedef enum {
	MEM_USABLE = 1,
	MEM_RESERVED = 2,
	MEM_ACPI_RECLAIMABLE = 3,
	MEM_ACPI_NVS = 4,
	MEM_BAD = 5,
} mem_region_type;

typedef struct __attribute__((packed)) {
	void *start;
	usize size;
	u32 type;
	u32 acpi_attrs;
} mem_region;

MKVEC(mem_region)

extern struct __attribute__((packed)) bootinfo {
	u64 ksize;
	u16 gfx_pitch;
	u16 gfx_width;
	u16 gfx_height;
	void *gfx_framebuffer;
	slice_mem_region mmap;
} *bootinfo;

#endif