diff options
Diffstat (limited to 'kernel/printk.c')
| -rw-r--r-- | kernel/printk.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/kernel/printk.c b/kernel/printk.c new file mode 100644 index 0000000..c0eedd9 --- /dev/null +++ b/kernel/printk.c @@ -0,0 +1,23 @@ +#include <fbos/printk.h> +#include <fbos/string.h> +#include <fbos/sbi.h> + +void __noreturn __kernel die(const char *const message) +{ + if (message) { + printk(message); + } + + for (;;) + ; +} + +void __kernel printk(const char *const message) +{ + size_t len = strlen(message); + if (!len) { + return; + } + + sbi_ecall2(DBCN_EXT, DBCN_WRITE, len, (unsigned long)message); +} |
