summaryrefslogtreecommitdiffhomepage
path: root/Private/HALKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-21 21:04:42 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-21 21:06:05 +0200
commit593e9b91591a9b98f6f46b5db046fe56f719ef24 (patch)
tree02561ea8465c0fb92d822f7f34c057a207c2cc8f /Private/HALKit
parentda3e277c4685f64112ed0e7d7715e11a9f684eff (diff)
MHR-5: Add icon for settings app alongside Applications folder, register **mup** and **param** schemes on the kernel.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/HALKit')
-rw-r--r--Private/HALKit/POWER/HalVirtualMemory.cxx3
-rw-r--r--Private/HALKit/POWER/Processor.hpp14
2 files changed, 10 insertions, 7 deletions
diff --git a/Private/HALKit/POWER/HalVirtualMemory.cxx b/Private/HALKit/POWER/HalVirtualMemory.cxx
index 43c59384..c138d76f 100644
--- a/Private/HALKit/POWER/HalVirtualMemory.cxx
+++ b/Private/HALKit/POWER/HalVirtualMemory.cxx
@@ -10,8 +10,7 @@
#include <HALKit/POWER/Processor.hpp>
#include <KernelKit/DebugOutput.hpp>
-/// NOTE: refer to: https://www.nxp.com/docs/en/white-paper/POWRPCARCPRMRM.pdf,
-/// or in /Developer/PDF/POWRPCARCPRMRM.pdf
+/// @note refer to our SoC documentation.
using namespace NewOS;
diff --git a/Private/HALKit/POWER/Processor.hpp b/Private/HALKit/POWER/Processor.hpp
index a597b202..d6fbfb89 100644
--- a/Private/HALKit/POWER/Processor.hpp
+++ b/Private/HALKit/POWER/Processor.hpp
@@ -34,13 +34,17 @@ typedef StackFrame* StackFramePtr;
inline void rt_halt() {
while (1) {
-
+ asm volatile("mr 0, 0"); // no oop.
}
}
-inline void rt_cli() {}
+inline void rt_cli() {
+ asm volatile ("mr 0, 0"); // no oop
+}
} // namespace NewOS::HAL
-extern "C" void int_handle_math(NewOS::UIntPtr sp);
-extern "C" void int_handle_pf(NewOS::UIntPtr sp);
-extern "C" void* __ppc_alloca(size_t sz);
+EXTERN_C void int_handle_math(NewOS::UIntPtr sp);
+EXTERN_C void int_handle_pf(NewOS::UIntPtr sp);
+
+/// @brief Flush system TLB.
+EXTERN_C void hal_flush_tlb();