summaryrefslogtreecommitdiff
path: root/src/kernel/arch/amd64/boot.h
blob: fac4ab6ec3aec07bb9c5a3b3973e674aac5f5fb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

enum gdt_segs {
	SEG_null,
	/* order dictated by SYSENTER */
	SEG_r0code = 1,
	SEG_r0data = 2,
	SEG_r3code32 = 3,
	SEG_r3data = 4,
	SEG_r3code = 5,
	SEG_TSS = 6,
	SEG_TSS2 = 7,

	SEG_end
};

void kmain_early(void *mbi);
void gdt_init(void);
void idt_init(void);
void timer_init(void);

/* used from asm */
extern struct lgdt_arg lgdt_arg;