summaryrefslogtreecommitdiffhomepage
path: root/Private/HALKit/AMD64/Processor.cpp
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-29 09:55:05 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-29 09:55:44 +0100
commit2529c8722d6d3491a3e19aa728f4bfce099bcc91 (patch)
tree116a1cfb461884b33c6805bde6fcfe868ae5e491 /Private/HALKit/AMD64/Processor.cpp
parent202db65935d71650600de9de59e4950ad047a122 (diff)
Kernel: Improve BootKit and EFIKit.
TODO: Add File Protocol support and Pool support for EFIKit. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/HALKit/AMD64/Processor.cpp')
-rw-r--r--Private/HALKit/AMD64/Processor.cpp85
1 files changed, 48 insertions, 37 deletions
diff --git a/Private/HALKit/AMD64/Processor.cpp b/Private/HALKit/AMD64/Processor.cpp
index 13732381..c70c7959 100644
--- a/Private/HALKit/AMD64/Processor.cpp
+++ b/Private/HALKit/AMD64/Processor.cpp
@@ -9,53 +9,64 @@
#include <HALKit/AMD64/Processor.hpp>
-namespace hCore::HAL {
- void out8(UInt16 port, UInt8 value) {
- asm volatile("outb %%al, %1" : : "a"(value), "Nd"(port) : "memory");
- }
+namespace hCore::HAL
+{
+void out8(UInt16 port, UInt8 value)
+{
+ asm volatile("outb %%al, %1" : : "a"(value), "Nd"(port) : "memory");
+}
- void out16(UInt16 port, UInt16 value) {
- asm volatile("outw %%ax, %1" : : "a"(value), "Nd"(port) : "memory");
- }
+void out16(UInt16 port, UInt16 value)
+{
+ asm volatile("outw %%ax, %1" : : "a"(value), "Nd"(port) : "memory");
+}
- void out32(UInt16 port, UInt32 value) {
- asm volatile("outl %%eax, %1" : : "a"(value), "Nd"(port) : "memory");
- }
+void out32(UInt16 port, UInt32 value)
+{
+ asm volatile("outl %%eax, %1" : : "a"(value), "Nd"(port) : "memory");
+}
- UInt8 in8(UInt16 port) {
- UInt8 value = 0UL;
- asm volatile("inb %1, %%al" : "=a"(value) : "Nd"(port) : "memory");
+UInt8 in8(UInt16 port)
+{
+ UInt8 value = 0UL;
+ asm volatile("inb %1, %%al" : "=a"(value) : "Nd"(port) : "memory");
- return value;
- }
+ return value;
+}
- UInt16 in16(UInt16 port) {
- UInt16 value = 0UL;
- asm volatile("inw %1, %%ax" : "=a"(value) : "Nd"(port) : "memory");
+UInt16 in16(UInt16 port)
+{
+ UInt16 value = 0UL;
+ asm volatile("inw %1, %%ax" : "=a"(value) : "Nd"(port) : "memory");
- return value;
- }
+ return value;
+}
- UInt32 in32(UInt16 port) {
- UInt32 value = 0UL;
- asm volatile("inl %1, %%eax" : "=a"(value) : "Nd"(port) : "memory");
+UInt32 in32(UInt16 port)
+{
+ UInt32 value = 0UL;
+ asm volatile("inl %1, %%eax" : "=a"(value) : "Nd"(port) : "memory");
- return value;
- }
+ return value;
+}
- void rt_halt() {
- asm volatile("hlt");
- }
+void rt_halt()
+{
+ asm volatile("hlt");
+}
- void rt_cli() {
- asm volatile("cli");
- }
+void rt_cli()
+{
+ asm volatile("cli");
+}
- void rt_sti() {
- asm volatile("sti");
- }
+void rt_sti()
+{
+ asm volatile("sti");
+}
- void rt_cld() {
- asm volatile("cld");
- }
+void rt_cld()
+{
+ asm volatile("cld");
+}
} // namespace hCore::HAL