summaryrefslogtreecommitdiffstats
path: root/arch/x86/port/PortOps.h
diff options
context:
space:
mode:
authorAlexey Gavrilov <rebovas@yahoo.com>2024-05-24 14:07:47 +0700
committerAlexey Gavrilov <rebovas@yahoo.com>2024-05-24 14:07:47 +0700
commit5fbf41e967ed8e413ecf1e6abb72e8d285169df4 (patch)
tree48e25b199ae3459e12c7202f7b18a37cd087bf9b /arch/x86/port/PortOps.h
parent0a50b1758fd3da118408fd724825d0a50a9ecf17 (diff)
Pic + Tuple + refactor PrimaryInitialization class
Diffstat (limited to 'arch/x86/port/PortOps.h')
-rw-r--r--arch/x86/port/PortOps.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/x86/port/PortOps.h b/arch/x86/port/PortOps.h
new file mode 100644
index 0000000..7db3a5f
--- /dev/null
+++ b/arch/x86/port/PortOps.h
@@ -0,0 +1,26 @@
+#ifndef PORT_H
+#define PORT_H
+
+#include <types.h>
+
+
+using regb = uint8;
+using regw = uint16;
+using regl = uint32;
+using portadr = uint16;
+
+class PortOps
+{
+ public:
+ static void outb(portadr port, regb value);
+ static void outw(portadr port, regw value);
+ static void outl(portadr port, regl value);
+ // Get byte from port
+ static regb inb(portadr port);
+ // Get word from port
+ static regw inw(portadr port);
+ // Get double word from port
+ static regl inl(portadr port);
+};
+
+#endif