From b6e416c9986bb545956a642d626e6aafd54f3b76 Mon Sep 17 00:00:00 2001 From: Amlal Date: Sat, 28 Sep 2024 18:19:35 +0200 Subject: refactor: Moved functions to end of namespace in Processor.hxx - Refactor HalPagingMgr.cxx to not cast pt_index value. Signed-off-by: Amlal --- dev/zka/HALKit/AMD64/HalPagingMgr.cxx | 2 +- dev/zka/HALKit/AMD64/Processor.hxx | 44 +++++++++++++++++------------------ 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/dev/zka/HALKit/AMD64/HalPagingMgr.cxx b/dev/zka/HALKit/AMD64/HalPagingMgr.cxx index 9d721e32..db27aaf5 100644 --- a/dev/zka/HALKit/AMD64/HalPagingMgr.cxx +++ b/dev/zka/HALKit/AMD64/HalPagingMgr.cxx @@ -114,7 +114,7 @@ namespace Kernel::HAL UInt64 pt_entry = (pt_base + pt_index * cPmlEntrySize); // Lastly, grab the pte entry. - ZKA_PTE* pte_struct = reinterpret_cast((UIntPtr*)pt_entry); + ZKA_PTE* pte_struct = reinterpret_cast(pt_entry); return mmi_map_page_table_entry(virtual_address, flags, pte_struct); } diff --git a/dev/zka/HALKit/AMD64/Processor.hxx b/dev/zka/HALKit/AMD64/Processor.hxx index 7aaeab31..e35e1073 100644 --- a/dev/zka/HALKit/AMD64/Processor.hxx +++ b/dev/zka/HALKit/AMD64/Processor.hxx @@ -61,28 +61,6 @@ namespace Kernel::HAL eFlagsCount = 3, }; - /// @brief Set a PTE from pd_base. - /// @param virt_addr a valid virtual address. - /// @param phys_addr point to physical address. - /// @param flags the flags to put on the page. - /// @return Status code of page manip. - EXTERN_C Int32 mm_map_page(VoidPtr virt_addr, UInt32 flags); - - EXTERN_C UChar In8(UInt16 port); - EXTERN_C UShort In16(UInt16 port); - EXTERN_C UInt In32(UInt16 port); - - EXTERN_C void Out16(UShort port, UShort byte); - EXTERN_C void Out8(UShort port, UChar byte); - EXTERN_C void Out32(UShort port, UInt byte); - - EXTERN_C void rt_wait_400ns(); - EXTERN_C void rt_halt(); - EXTERN_C void rt_cli(); - EXTERN_C void rt_sti(); - EXTERN_C void rt_cld(); - EXTERN_C void rt_std(); - struct PACKED Register64 final { UShort Limit; @@ -281,6 +259,28 @@ namespace Kernel::HAL private: VoidPtr fApic{nullptr}; }; + + /// @brief Set a PTE from pd_base. + /// @param virt_addr a valid virtual address. + /// @param phys_addr point to physical address. + /// @param flags the flags to put on the page. + /// @return Status code of page manip. + EXTERN_C Int32 mm_map_page(VoidPtr virt_addr, UInt32 flags); + + EXTERN_C UChar In8(UInt16 port); + EXTERN_C UShort In16(UInt16 port); + EXTERN_C UInt In32(UInt16 port); + + EXTERN_C void Out16(UShort port, UShort byte); + EXTERN_C void Out8(UShort port, UChar byte); + EXTERN_C void Out32(UShort port, UInt byte); + + EXTERN_C void rt_wait_400ns(); + EXTERN_C void rt_halt(); + EXTERN_C void rt_cli(); + EXTERN_C void rt_sti(); + EXTERN_C void rt_cld(); + EXTERN_C void rt_std(); } // namespace Kernel::HAL EXTERN_C Kernel::Void idt_handle_generic(Kernel::UIntPtr rsp); -- cgit v1.2.3