feat: added cross compiler and moved headers to include dir

This commit is contained in:
2021-03-09 19:45:20 +01:00
parent cefdb8ed90
commit dc4bf71b5a
77 changed files with 180 additions and 45 deletions

22
include/libk/kprint.h Normal file
View File

@@ -0,0 +1,22 @@
//
// Created by rick on 28-01-21.
//
#ifndef NEW_KERNEL_KPRINT_H
#define NEW_KERNEL_KPRINT_H
#endif //NEW_KERNEL_KPRINT_H
#include <types.h>
typedef void (*kprint_handler)(const char *);
void kprint_register(kprint_handler);
void kprint(const char *msg);
void kprint_sync(const char* msg);
void kprint_init();
void kprint_start_task();

23
include/libk/libk.h Normal file
View File

@@ -0,0 +1,23 @@
//
// Created by rick on 02-02-21.
//
#ifndef NEW_KERNEL_LIBK_H
#define NEW_KERNEL_LIBK_H
#include <attributes.h>
#include <stdbool.h>
extern void* _kernel_start;
extern void* _kernel_end;
#define kernel_start ((uint32_t)(&_kernel_start))
#define kernel_end ((uint32_t)(&_kernel_end))
bool k_addr_in_kspace(void *addr);
void k_wait_for_interrupt();
void noreturn k_panics(const char *msg);
void noreturn k_panic();
#endif //NEW_KERNEL_LIBK_H

23
include/libk/syscall.h Normal file
View File

@@ -0,0 +1,23 @@
//
// Created by rick on 22-02-21.
//
#ifndef NEW_KERNEL_SYSCALL_H
#define NEW_KERNEL_SYSCALL_H
#include <types.h>
#include <attributes.h>
#define SYSCALL_START_SCHEDULER 0x01
#define SYSCALL_YIELD_JOB 0x02
#define SYSCALL_YIELD_IRQ 0x03
#define SYSCALL_SUSPEND 0x04
void noreturn syscall_start_scheduler();
void syscall_yield_job();
void syscall_yield_irq(uint16_t irq);
void syscall_job_suspend();
#endif //NEW_KERNEL_SYSCALL_H