gint/src/kernel
Lephe fb8d1525f4
kernel: guarantee availability of drivers based on dependency levels
The question of how to handle a partially-restored world state begs for
an elegant symmetrical answer, but that doesn't work unless both kernels
do the save/restore for themselves. So far, things have worked out
because any order works since interrupts are disabled therefore
partially-restored drivers are inactive.

However the USB module requires waits that are best performed with
timers, so the order cannot be chosen arbitrarily. This commit enforces
a gint-centric order where code from a gint driver is only run when all
lower-level drivers are active. This solves some pretty bad freezes with
the USB module.
2021-04-11 18:36:07 +02:00
..
cpu.h kernel: move VBR at the end of the user RAM area on fx-9860G 2021-02-15 09:46:59 +01:00
cpu.s kernel: move VBR at the end of the user RAM area on fx-9860G 2021-02-15 09:46:59 +01:00
drivers.h move src/core to src/kernel 2020-07-26 11:49:33 +02:00
exch.c kernel: dynamic loading of GMAPPED functions to user RAM 2020-09-17 14:48:54 +02:00
exch.s kernel: dynamic loading of GMAPPED functions to user RAM 2020-09-17 14:48:54 +02:00
hardware.c kernel: fix gint[HWURAM] not being set on fx-9860G 2021-02-02 18:18:02 +01:00
inth.S kernel: dynamic loading of GMAPPED functions to user RAM 2020-09-17 14:48:54 +02:00
kernel.c kernel: guarantee availability of drivers based on dependency levels 2021-04-11 18:36:07 +02:00
kernel.h move src/core to src/kernel 2020-07-26 11:49:33 +02:00
osmenu.c move src/core to src/kernel 2020-07-26 11:49:33 +02:00
start.c small cleanup 2020-10-05 16:31:37 +02:00
syscalls.S kmalloc: create the kmalloc interface 2021-03-12 17:24:49 +01:00
tlbh.S kernel: dynamic loading of GMAPPED functions to user RAM 2020-09-17 14:48:54 +02:00
vbr.h kernel: dynamic loading of GMAPPED functions to user RAM 2020-09-17 14:48:54 +02:00