summaryrefslogtreecommitdiffhomepage
path: root/dev/zka/HALKit
diff options
context:
space:
mode:
authorAmlal <amlal@el-mahrouss-logic.com>2024-09-24 23:14:02 +0200
committerAmlal <amlal@el-mahrouss-logic.com>2024-09-24 23:14:02 +0200
commit8f62fbe30655e4d18837f196f01bb203126f474f (patch)
tree0b765ca18723524553ae10249d5dd9a9930abf5a /dev/zka/HALKit
parentb6adb479cbd704600fcbf663325396b60f3e4439 (diff)
Refactor kernel refactors and worked on fixing the GPF on user mode switch.
TODO: Re-implement the mm_map_page function. Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/zka/HALKit')
-rw-r--r--dev/zka/HALKit/AMD64/HalKernelMain.cxx3
-rw-r--r--dev/zka/HALKit/AMD64/ReadMe.md4
2 files changed, 5 insertions, 2 deletions
diff --git a/dev/zka/HALKit/AMD64/HalKernelMain.cxx b/dev/zka/HALKit/AMD64/HalKernelMain.cxx
index 767cc903..1ed11953 100644
--- a/dev/zka/HALKit/AMD64/HalKernelMain.cxx
+++ b/dev/zka/HALKit/AMD64/HalKernelMain.cxx
@@ -29,6 +29,7 @@ namespace Kernel::HAL
} // namespace Kernel::HAL
EXTERN_C Kernel::VoidPtr kInterruptVectorTable[];
+EXTERN_C Kernel::VoidPtr mp_user_switch_proc;
/// @brief Kernel init procedure.
EXTERN_C void hal_init_platform(
@@ -89,6 +90,8 @@ EXTERN_C Kernel::Void hal_real_init(Kernel::Void) noexcept
Kernel::NeFileSystemMgr* mgr = Kernel::mm_new_class<Kernel::NeFileSystemMgr>();
Kernel::NeFileSystemMgr::Mount(mgr);
+ Kernel::HAL::mm_map_page(mp_user_switch_proc, Kernel::HAL::eFlagsUser);
+
mp_do_user_switch();
Kernel::ke_stop(RUNTIME_CHECK_BOOTSTRAP);
diff --git a/dev/zka/HALKit/AMD64/ReadMe.md b/dev/zka/HALKit/AMD64/ReadMe.md
index bb936737..7364b8e6 100644
--- a/dev/zka/HALKit/AMD64/ReadMe.md
+++ b/dev/zka/HALKit/AMD64/ReadMe.md
@@ -1,4 +1,4 @@
# AMD64 Hardware Abstraction Layer
-- Supported CPU: AMD64 CPU
-- Supported Firmware: EDK 2
+- Supported CPU: AMD64 CPU.
+- Supported Firmware: EDK 2 w/ ZKA's own extensions for EPM.