package embox.arch.sparc.kernel

module context extends embox.arch.context {
	source "context.c", "context_switch.S", "context.h"
}

module leon3 {
	option number nwindows=8
}

module locore {
	source "entry.S"
	source "trap_save.S"
	source "trap_restore.S"
	source "traps.c"
	source "winflush.S"

	depends reg
	depends boot
	depends leon3
	depends embox.arch.sparc.testtrap
}

module boot {
	source "head.S"
	source "kernel_start.c"
}

module interrupt extends embox.arch.interrupt {
	source "interrupt_entry.S", "ipl_impl.h"

	depends locore
}

module syscall extends embox.arch.syscall {
	source "syscall_entry.S", "syscall_handler.c"

	depends locore
	depends embox.kernel.syscall.syscall_table
}

module syscall_caller extends embox.arch.syscall_caller {
	source "syscall_caller.h"

	depends embox.kernel.syscall
}

module cpu_idle extends embox.arch.cpu_idle {
	source "cpu_idle.h"
}

module shutdown extends platform.platform_shutdown {
    source "shutdown.c"
}
