summaryrefslogtreecommitdiff
path: root/Kernel/Prekernel
diff options
context:
space:
mode:
authorMarcin Undak <mcinek@gmail.com>2021-10-14 22:48:48 -0400
committerAndreas Kling <kling@serenityos.org>2021-10-31 12:35:53 +0100
commit82a73b8499472e1b035ab7b80ef5578de42f2840 (patch)
treebf421006d049c21f5822dc7e486c8faafc90e4d4 /Kernel/Prekernel
parent0329a37271b7aa0f2937e26b2ebccc3bc943d9d4 (diff)
downloadserenity-82a73b8499472e1b035ab7b80ef5578de42f2840.zip
Kernel: Add temporary debug printing utilities for Aarch64
Added dbgln() and warnln() debug functions to help bootstraping. Eventually they are going to be replaced by AK/Format.h implementation.
Diffstat (limited to 'Kernel/Prekernel')
-rw-r--r--Kernel/Prekernel/Arch/aarch64/Utils.cpp20
-rw-r--r--Kernel/Prekernel/Arch/aarch64/Utils.h15
-rw-r--r--Kernel/Prekernel/CMakeLists.txt1
3 files changed, 36 insertions, 0 deletions
diff --git a/Kernel/Prekernel/Arch/aarch64/Utils.cpp b/Kernel/Prekernel/Arch/aarch64/Utils.cpp
new file mode 100644
index 0000000000..a8728dca5e
--- /dev/null
+++ b/Kernel/Prekernel/Arch/aarch64/Utils.cpp
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) 2021, Marcin Undak <mcinek@gmail.com>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#include <Kernel/Prekernel/Arch/aarch64/UART.h>
+#include <Kernel/Prekernel/Arch/aarch64/Utils.h>
+
+void Prekernel::dbgln(const char* text)
+{
+ auto& uart = Prekernel::UART::the();
+ uart.print_str(text);
+ uart.print_str("\r\n");
+}
+
+void Prekernel::warnln(const char* text)
+{
+ dbgln(text);
+}
diff --git a/Kernel/Prekernel/Arch/aarch64/Utils.h b/Kernel/Prekernel/Arch/aarch64/Utils.h
new file mode 100644
index 0000000000..0c25610654
--- /dev/null
+++ b/Kernel/Prekernel/Arch/aarch64/Utils.h
@@ -0,0 +1,15 @@
+/*
+ * Copyright (c) 2021, Marcin Undak <mcinek@gmail.com>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+namespace Prekernel {
+
+// FIXME: to be replaced by real implementation from AK/Format.h
+void dbgln(const char* text);
+void warnln(const char* text);
+
+}
diff --git a/Kernel/Prekernel/CMakeLists.txt b/Kernel/Prekernel/CMakeLists.txt
index 689e546c2d..c501fcb4f7 100644
--- a/Kernel/Prekernel/CMakeLists.txt
+++ b/Kernel/Prekernel/CMakeLists.txt
@@ -11,6 +11,7 @@ if ("${SERENITY_ARCH}" STREQUAL "aarch64")
Arch/aarch64/MMIO.cpp
Arch/aarch64/Timer.cpp
Arch/aarch64/UART.cpp
+ Arch/aarch64/Utils.cpp
Arch/aarch64/Aarch64_asm_utils.S
Arch/aarch64/boot.S
Arch/aarch64/init.cpp