PMM and liballoc port
This commit is contained in:
1
kernel/limine/.gitignore
vendored
Normal file
1
kernel/limine/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
*.o
|
||||
20
kernel/limine/requests.c
Normal file
20
kernel/limine/requests.c
Normal file
@@ -0,0 +1,20 @@
|
||||
#include <limine/limine.h>
|
||||
|
||||
#define DECL_REQ(small, big) \
|
||||
__attribute__((used, section(".limine_requests"))) \
|
||||
struct limine_ ## small ## _request limine_ ## small ## _request = { \
|
||||
.id = LIMINE_ ## big ## _REQUEST_ID, \
|
||||
.revision = 4 \
|
||||
}
|
||||
|
||||
__attribute__((used, section(".limine_requests")))
|
||||
volatile uint64_t limine_base_revision[] = LIMINE_BASE_REVISION(4);
|
||||
|
||||
__attribute__((used, section(".limine_requests_start")))
|
||||
volatile uint64_t limine_requests_start_marker[] = LIMINE_REQUESTS_START_MARKER;
|
||||
|
||||
__attribute__((used, section(".limine_requests_end")))
|
||||
volatile uint64_t limine_requests_end_marker[] = LIMINE_REQUESTS_END_MARKER;
|
||||
|
||||
DECL_REQ(hhdm, HHDM);
|
||||
DECL_REQ(memmap, MEMMAP);
|
||||
12
kernel/limine/requests.h
Normal file
12
kernel/limine/requests.h
Normal file
@@ -0,0 +1,12 @@
|
||||
#ifndef _KERNEL_LIMINE_REQUESTS_H
|
||||
#define _KERNEL_LIMINE_REQUESTS_H
|
||||
|
||||
#include <limine/limine.h>
|
||||
|
||||
#define EXTERN_REQ(small) \
|
||||
extern struct limine_ ## small ## _request limine_ ## small ## _request
|
||||
|
||||
EXTERN_REQ(hhdm);
|
||||
EXTERN_REQ(memmap);
|
||||
|
||||
#endif // _KERNEL_LIMINE_REQUESTS_H
|
||||
3
kernel/limine/src.mk
Normal file
3
kernel/limine/src.mk
Normal file
@@ -0,0 +1,3 @@
|
||||
c += limine/requests.c
|
||||
|
||||
o += limine/requests.o
|
||||
Reference in New Issue
Block a user