kernel: add functions to get/set the bsp boot module location

This commit is contained in:
2026-02-08 11:38:50 +00:00
parent 00ea2b1b3b
commit 129e782e99
2 changed files with 31 additions and 0 deletions

13
include/mango/bsp.h Normal file
View File

@@ -0,0 +1,13 @@
#ifndef MANGO_BSP_H_
#define MANGO_BSP_H_
#include <mango/compiler.h>
#include <mango/status.h>
#include <mango/types.h>
#include <stddef.h>
#include <stdint.h>
extern void bsp_set_location(const struct boot_module *mod);
extern void bsp_get_location(struct boot_module *out);
#endif

18
kernel/bsp.c Normal file
View File

@@ -0,0 +1,18 @@
#include <mango/bsp.h>
#include <mango/printk.h>
#include <mango/sched.h>
#include <mango/util.h>
#include <mango/vm-object.h>
#include <mango/vm-region.h>
static struct boot_module bsp_location = {0};
void bsp_set_location(const struct boot_module *mod)
{
memcpy(&bsp_location, mod, sizeof bsp_location);
}
void bsp_get_location(struct boot_module *out)
{
memcpy(out, &bsp_location, sizeof bsp_location);
}