Skip to content

Move types and constants shared with the bootloader to seperate crate

Lorenzo Rai requested to merge CodingRays/kernel:start-crate into master

This MR moves any relevant constants and types into a seperate in tree crate start which can be used by the bootloader or any code that needs to launch the RedoxOs Kernel. This may for example also support any 3rd parties to implement code which can directly load the kernel in the future. Additionally some new documentation has been added to the aarch64 portion.

Some of the constants (in particular the memory map) are statically calculated in the kernel. Since the memory map is intentionally kept in one place i instead defined the constant directly with its expected value in the start crate. While this is not exactly pretty it seemed the most practical solution for now. The static_assertions crate has been added to verify the constants match the expected values and types in the kernel code.

Merge request reports