summaryrefslogtreecommitdiffhomepage
path: root/Kernel/DriverKit
diff options
context:
space:
mode:
Diffstat (limited to 'Kernel/DriverKit')
-rw-r--r--Kernel/DriverKit/KernelCall.c25
-rw-r--r--Kernel/DriverKit/KernelDev.c37
-rw-r--r--Kernel/DriverKit/KernelDev.h33
-rw-r--r--Kernel/DriverKit/KernelDispatchCall.S21
-rw-r--r--Kernel/DriverKit/KernelPrint.c33
-rw-r--r--Kernel/DriverKit/KernelPrint.h18
-rw-r--r--Kernel/DriverKit/KernelStd.h22
-rw-r--r--Kernel/DriverKit/KernelStdCxx.cc24
-rw-r--r--Kernel/DriverKit/KernelString.c34
-rw-r--r--Kernel/DriverKit/KernelString.h16
10 files changed, 0 insertions, 263 deletions
diff --git a/Kernel/DriverKit/KernelCall.c b/Kernel/DriverKit/KernelCall.c
deleted file mode 100644
index d61f8439..00000000
--- a/Kernel/DriverKit/KernelCall.c
+++ /dev/null
@@ -1,25 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Definitions.
-
-------------------------------------------- */
-
-#include <DriverKit/KernelStd.h>
-#include <stdarg.h>
-
-DK_EXTERN __attribute__((naked)) void __kernelDispatchCall(int32_t cnt, ...);
-
-DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...)
-{
- if (!kernelRpcName || cnt == 0)
- return NIL;
-
- va_list arg;
- va_start(arg, cnt);
-
- __kernelDispatchCall(cnt, arg);
-
- va_end(arg);
-}
diff --git a/Kernel/DriverKit/KernelDev.c b/Kernel/DriverKit/KernelDev.c
deleted file mode 100644
index 704f17da..00000000
--- a/Kernel/DriverKit/KernelDev.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Text I/O.
-
-------------------------------------------- */
-
-#include <DriverKit/KernelDev.h>
-
-/// @brief Open a new binary device from path.
-DK_EXTERN kernelDeviceRef kernelOpenBinaryDevice(const char* devicePath)
-{
- if (!devicePath)
- return NIL;
-
- return kernelCall("OpenBinaryDevice", 1, devicePath);
-}
-
-/// @brief Open a new character device from path.
-DK_EXTERN kernelDeviceRef kernelOpenCharDevice(const char* devicePath)
-{
- if (!devicePath)
- return NIL;
-
- return kernelCall("OpenCharDevice", 1, devicePath);
-}
-
-/// @brief Close any device.
-/// @param device valid device.
-DK_EXTERN void kernelCloseDevice(kernelDeviceRef device)
-{
- if (!device)
- return;
-
- kernelCall("CloseDevice", 1, device);
-}
diff --git a/Kernel/DriverKit/KernelDev.h b/Kernel/DriverKit/KernelDev.h
deleted file mode 100644
index c3435e8d..00000000
--- a/Kernel/DriverKit/KernelDev.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Devices.
-
-------------------------------------------- */
-
-#pragma once
-
-#include <DriverKit/KernelStd.h>
-
-struct _kernelDevice;
-
-/// @brief Kernel Device driver.
-typedef struct _kernelDevice
-{
- char name[255]; // the device name. Could be /./DEVICE_NAME/
- int32_t (*read)(); // read from device.
- int32_t (*write)(); // write to device.
- struct _kernelDevice* (*open)(const char* path); // open device.
- void (*close)(struct _kernelDevice* dev); // close device.
-} kernelDevice, *kernelDeviceRef;
-
-/// @brief Open a new binary device from path.
-DK_EXTERN kernelDeviceRef kernelOpenBinaryDevice(const char* devicePath);
-
-/// @brief Open a new character device from path.
-DK_EXTERN kernelDeviceRef kernelOpenCharDevice(const char* devicePath);
-
-/// @brief Close any device.
-/// @param device valid device.
-DK_EXTERN void kernelCloseDevice(kernelDeviceRef device);
diff --git a/Kernel/DriverKit/KernelDispatchCall.S b/Kernel/DriverKit/KernelDispatchCall.S
deleted file mode 100644
index 64b6663e..00000000
--- a/Kernel/DriverKit/KernelDispatchCall.S
+++ /dev/null
@@ -1,21 +0,0 @@
-.globl __kernelDispatchCall
-
-.section .text
-
-/* Really simple function, takes our va-list,
- and brings it to the trap handler in the kernel. */
-
-#ifdef __x86_64__
-
-__kernelDispatchCall:
- int $0x33
- ret
-
-#elif defined(__powerpc64__)
-
-__kernelDispatchCall:
- /* There is no specific interrupt request id for a system call in POWER. */
- sc
- blr
-
-#endif
diff --git a/Kernel/DriverKit/KernelPrint.c b/Kernel/DriverKit/KernelPrint.c
deleted file mode 100644
index 533bf34a..00000000
--- a/Kernel/DriverKit/KernelPrint.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Text I/O.
-
-------------------------------------------- */
-
-#include <DriverKit/KernelPrint.h>
-
-DK_EXTERN void kernelPrintChar(const char ch)
-{
- kernelCall("WriteCharacter", 1, ch);
-}
-
-/// @brief print string to UART.
-/// @param message UART to transmit.
-DK_EXTERN void kernelPrintStr(const char* message)
-{
- if (!message)
- return;
- if (*message == 0)
- return;
-
- size_t index = 0;
- size_t len = kernelStringLength(message);
-
- while (index < len)
- {
- kernelPrintChar(message[index]);
- ++index;
- }
-}
diff --git a/Kernel/DriverKit/KernelPrint.h b/Kernel/DriverKit/KernelPrint.h
deleted file mode 100644
index 7bf0dda9..00000000
--- a/Kernel/DriverKit/KernelPrint.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Text I/O.
-
-------------------------------------------- */
-
-#pragma once
-
-#include <DriverKit/KernelString.h>
-
-/// @brief print character into UART.
-DK_EXTERN void kernelPrintChar(const char ch);
-
-/// @brief print string to UART.
-/// @param message UART to transmit.
-DK_EXTERN void kernelPrintStr(const char* message);
diff --git a/Kernel/DriverKit/KernelStd.h b/Kernel/DriverKit/KernelStd.h
deleted file mode 100644
index b0dba70e..00000000
--- a/Kernel/DriverKit/KernelStd.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Definitions.
-
-------------------------------------------- */
-
-#pragma once
-
-#if defined(__cplusplus)
-#define DK_EXTERN extern "C"
-#define NIL nullptr
-#else
-#define DK_EXTERN extern
-#define NIL NULL
-#endif // defined(__cplusplus)
-
-#include <stdint.h>
-#include <stddef.h>
-
-DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...);
diff --git a/Kernel/DriverKit/KernelStdCxx.cc b/Kernel/DriverKit/KernelStdCxx.cc
deleted file mode 100644
index 99bcc579..00000000
--- a/Kernel/DriverKit/KernelStdCxx.cc
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Driver C++ Definitions.
-
-------------------------------------------- */
-
-#include <DriverKit/KernelStd.h>
-
-void* operator new(size_t sz) {
- if (!sz) ++sz;
-
- auto ptr = kernelCall("NewKernelHeap", 1, sz);
- kernelCall("KernelHeapProtect", 1, ptr);
-
- return ptr;
-}
-
-void operator delete(void* ptr) noexcept {
- if (!ptr) return;
-
- kernelCall("DeleteKernelHeap", 1,ptr);
-}
diff --git a/Kernel/DriverKit/KernelString.c b/Kernel/DriverKit/KernelString.c
deleted file mode 100644
index 6f28f4d8..00000000
--- a/Kernel/DriverKit/KernelString.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Strings.
-
-------------------------------------------- */
-
-#include <DriverKit/KernelString.h>
-
-DK_EXTERN size_t kernelStringLength(const char* str)
-{
- size_t index = 0;
-
- while (str[index] != 0)
- {
- ++index;
- }
-
- return index;
-}
-
-DK_EXTERN int kernelStringCopy(char* dst, const char* src, size_t len)
-{
- size_t index = 0;
-
- while (index != len)
- {
- dst[index] = src[index];
- ++index;
- }
-
- return index;
-}
diff --git a/Kernel/DriverKit/KernelString.h b/Kernel/DriverKit/KernelString.h
deleted file mode 100644
index db063a1b..00000000
--- a/Kernel/DriverKit/KernelString.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* -------------------------------------------
-
- Copyright SoftwareLabs
-
- Purpose: Kernel Strings.
-
-------------------------------------------- */
-
-#pragma once
-
-#include <DriverKit/KernelStd.h>
-
-/// @brief DriverKit equivalent of POSIX's string.h.
-
-DK_EXTERN size_t kernelStringLength(const char* str);
-DK_EXTERN int kernelStringCopy(char* dst, const char* src, size_t len);