summaryrefslogtreecommitdiff
path: root/kernel/src/drivers/serial.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/src/drivers/serial.cpp')
-rw-r--r--kernel/src/drivers/serial.cpp46
1 files changed, 0 insertions, 46 deletions
diff --git a/kernel/src/drivers/serial.cpp b/kernel/src/drivers/serial.cpp
deleted file mode 100644
index 626aa0d..0000000
--- a/kernel/src/drivers/serial.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-
-#include <cstdint>
-#include <cstddef>
-
-#include <drivers/serial.hpp>
-#include <drivers/io.hpp>
-
-#include <etc/libc.hpp>
-
-serial_mapping_t __serial_map[32];
-int __serial_map_ptr = 0;
-
-void drivers::serial::init(uint16_t port) {
-
- if(__serial_map_ptr == 0)
- memset(__serial_map,0,sizeof(serial_mapping_t));
-
- drivers::io io;
- io.outb(DEFAULT_SERIAL_PORT + 1, 0x00);
- io.outb(DEFAULT_SERIAL_PORT + 3, 0x80);
- io.outb(DEFAULT_SERIAL_PORT + 0, 0x03);
- io.outb(DEFAULT_SERIAL_PORT + 1, 0x00);
- io.outb(DEFAULT_SERIAL_PORT + 3, 0x03);
- io.outb(DEFAULT_SERIAL_PORT + 2, 0xC7);
- io.outb(DEFAULT_SERIAL_PORT + 4, 0x0B);
- io.outb(DEFAULT_SERIAL_PORT + 4, 0x1E);
- io.outb(DEFAULT_SERIAL_PORT + 0, 0xAE);
-
- if(io.inb(DEFAULT_SERIAL_PORT + 0) != 0xAE) {
- __serial_map[__serial_map_ptr].port = port;
- __serial_map[__serial_map_ptr++].is_init = 0;
- }
-
- io.outb(DEFAULT_SERIAL_PORT + 4, 0x0F);
- __serial_map[__serial_map_ptr].port = port;
- __serial_map[__serial_map_ptr++].is_init = 1;
-}
-
-std::uint8_t drivers::serial::is_init(uint16_t port) {
-
- for(int i = 0;i < __serial_map_ptr;i++) {
- if(__serial_map[i].port == port && __serial_map[i].is_init == 1)
- return 1;
- }
- return 0;
-} \ No newline at end of file