aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv/kernel/main.c
blob: c8eca26d50522568163a8c84c6489b4a6ed7ded8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <apos/debug.h>
#include <apos/init.h>
#include <apos/vmem.h>

void __main main(struct init_data_t d)
{
	/* TODO: approximate order of business:
	 * setup debugging in vmem (requires mapping fdt)
	 * free unnecessary init
	 * setup interrupts (should this be done in init?)
	 * load init from initrd
	 * setup init environment (thread control blocks etc.)
	 * jumpstart init (free stack init setup)
	 */

	/* functionality that should be implemented:
	 * figure out best continuous run of memory (pmap etc)
	 * arbitrary user and kernel mapping (memory)
	 * vm to pm
	 */
}