summaryrefslogtreecommitdiff
path: root/cpu/io.h
diff options
context:
space:
mode:
authorAnton Kling <anton@kling.gg>2023-10-24 19:22:27 +0200
committerAnton Kling <anton@kling.gg>2023-10-30 21:49:48 +0100
commit730e065e0bba1394750b3172bb7e2f1c0fd42c73 (patch)
treea37d4745fccb530948eb795a3eca7200c24d63b9 /cpu/io.h
parentba1952bf4c08b7783854d501ba30815a2aa2574c (diff)
Kernel: Add basic PCI and very basic rtl8139 support
Diffstat (limited to 'cpu/io.h')
-rw-r--r--cpu/io.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/cpu/io.h b/cpu/io.h
index 9c33b66..5e28e86 100644
--- a/cpu/io.h
+++ b/cpu/io.h
@@ -1,11 +1,14 @@
#include <stdint.h>
-__attribute__((no_caller_saved_registers)) extern void outsw(uint16_t,
- uint32_t);
-__attribute__((no_caller_saved_registers)) extern void outb(uint16_t, uint16_t);
-__attribute__((no_caller_saved_registers)) extern uint16_t inb(uint16_t);
-__attribute__((no_caller_saved_registers)) extern void
-rep_outsw(uint16_t count, uint16_t port, volatile void *addy);
+extern void outsw(uint16_t, uint32_t);
+extern void outb(uint16_t, uint8_t);
+extern void outw(uint16_t, uint16_t);
+extern void outl(uint16_t, uint32_t);
+
+extern uint32_t inl(uint16_t);
+extern uint16_t inb(uint16_t);
+
+extern void rep_outsw(uint16_t count, uint16_t port, volatile void *addy);
__attribute__((no_caller_saved_registers)) extern void
rep_insw(uint16_t count, uint16_t port, volatile void *addy);
extern void jump_usermode(void (*address)(), uint32_t stack_pointer);