Implemented serial driver

This commit is contained in:
2025-02-18 14:06:41 +01:00
parent f9dece59ce
commit 609e10e13c
6 changed files with 145 additions and 6 deletions
+19
View File
@@ -0,0 +1,19 @@
#ifndef _SERIAL_H
#define _SERIAL_H
#include <kernel.h>
#define COM1 0x3f8
#define COM2 0x2f8
#define COM3 0x3e8
#define COM4 0x2e8
int serial_init(int dev);
int serial_txem(int dev);
void serial_send(int dev, char data);
int serial_rcvd(int dev);
char serial_recv(int dev);
void serial_write(int dev, char* buf, size_t len);
void serial_print(int dev, char* s);
#endif
+16
View File
@@ -0,0 +1,16 @@
#ifndef _SYSTEM_H
#define _SYSTEM_H
#include <kernel.h>
void cpuid(uint32_t* eax, uint32_t* ebx, uint32_t* ecx, uint32_t* edx);
// Ports
uint8_t inb(uint16_t port);
void outb(uint16_t port, uint8_t data);
uint16_t inw(uint16_t port);
void outw(uint16_t port, uint16_t data);
uint32_t inl(uint16_t port);
void outl(uint16_t port, uint32_t data);
#endif