aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv64/kernel/main.c
blob: 2cc1e12470b21dcc37dda383e7655113a28e388a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
 * @file main.c
 * riscv64 main
 */

#include <apos/utils.h>
#include <arch/arch.h>
#include <csr.h>

stat_t setup_arch(void *fdt)
{
	UNUSED(fdt);
	/* allow supervisor code to touch user pages */
	csr_set(CSR_SSTATUS, SSTATUS_SUM);
	/* mark that we want to eventually jump to userspace */
	csr_clear(CSR_SSTATUS, SSTATUS_SPP);

	return OK;
}