summaryrefslogtreecommitdiff
path: root/src/kernel/drivers/serial.c
diff options
context:
space:
mode:
authorBrett Weiland <brett_weiland@bpcspace.com>2021-08-24 14:09:29 -0500
committerBrett Weiland <brett_weiland@bpcspace.com>2021-08-24 14:09:29 -0500
commit9b22a6965579ea1867aea291d910c96f386b518b (patch)
treed06dbb9c4708f1cc713bcb115b32ff9bce4cf9b9 /src/kernel/drivers/serial.c
parentbad4b0e9bdfee336bfc1c23761408279eaec1558 (diff)
major backup 8.24.21
Diffstat (limited to 'src/kernel/drivers/serial.c')
-rw-r--r--src/kernel/drivers/serial.c39
1 files changed, 0 insertions, 39 deletions
diff --git a/src/kernel/drivers/serial.c b/src/kernel/drivers/serial.c
deleted file mode 100644
index 25f89ad..0000000
--- a/src/kernel/drivers/serial.c
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <stdint.h>
-#include <serial.h>
-static inline void outb(uint16_t port, uint8_t value) {
- asm volatile(
- "outb %0, %1" :: "a"(value), "Nd"(port)
- );
-}
-
-static inline uint8_t inb(uint16_t port) {
- uint8_t ret;
- asm volatile(
- "inb %1, %0" : "=a"(ret) : "Nd"(port)
- );
- return(ret);
-}
-
-int init_serial(uint16_t port) {
- outb(port + 1, 0x00);
- outb(port + 3, 0x80);
- outb(port + 0, 0x06);
- outb(port + 1, 0x00);
- outb(port + 3, 0x03);
- outb(port + 2, 0xc7);
- outb(port + 4, 0x0b);
- outb(port + 4, 0x1e);
-
- outb(port + 0, 0xae); // test char
-
- if(inb(port + 0) != 0xae)
- return 1;
-
- outb(port + 4, 0x0f); // dissable interupts
- return 0;
-}
-
-void _putchar_serial(uint16_t port, char msg) {
- while(!(inb(port + 5) & 0x20)); //wait for transmit to be done
- outb(port, msg);
-}