Updated drivers

This commit is contained in:
Alex 2022-11-04 04:37:46 +02:00
parent c664cf71f3
commit 75b96052bd
Signed by untrusted user who does not match committer: enderice2
GPG Key ID: EACC3AD603BAB4DD
7 changed files with 31 additions and 31 deletions

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -365,13 +365,13 @@ PortType CheckPortType(HBAPort *Port)
} }
} }
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }

View File

@ -1,7 +1,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
/* The driver is /* The driver is
@ -30,18 +30,18 @@ KernelAPI *KAPI;
/* --------------------------------------------------------------------------------------------------------- */ /* --------------------------------------------------------------------------------------------------------- */
// Driver entry point. This is called at initialization. "Data" argument points to the kernel API structure. // Driver entry point. This is called at initialization. "Data" argument points to the kernel API structure.
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
// Check if kernel API is valid // Check if kernel API is valid
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
// // Check if kernel API version is valid. this is important because the kernel API may change in the future.
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED;
// Set the global variable to the kernel API // Set the global variable to the kernel API
KAPI = Data; KAPI = (KernelAPI *)Data;
// Check if kernel API version is valid. this is important because the kernel API may change in the future.
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED;
// We print "Hello World!" to UART. // We print "Hello World!" to UART.
KAPI->Util.DebugPrint(((char *)"Hello World!" + KAPI->Info.Offset), KAPI->Info.DriverUID); KAPI->Util.DebugPrint(((char *)"Hello World!" + KAPI->Info.Offset), KAPI->Info.DriverUID);

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -71,13 +71,13 @@ void WriteCSR16(uint16_t CSR, uint16_t Value)
outportw(BAR.IOBase + 0x10, Value); outportw(BAR.IOBase + 0x10, Value);
} }
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -302,13 +302,13 @@ void InitializeTX()
OutCMD(REG::TIPG, 0x0060200A); OutCMD(REG::TIPG, 0x0060200A);
} }
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -113,13 +113,13 @@ MediaAccessControl GetMAC()
return mac; return mac;
} }
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -44,13 +44,13 @@ BARData BAR;
MediaAccessControl MAC; MediaAccessControl MAC;
InternetProtocol4 IP; InternetProtocol4 IP;
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }

View File

@ -5,7 +5,7 @@
#include "../../../Kernel/DAPI.hpp" #include "../../../Kernel/DAPI.hpp"
#include "../../../Kernel/Fex.hpp" #include "../../../Kernel/Fex.hpp"
extern "C" int DriverEntry(KernelAPI *Data); extern "C" int DriverEntry(void *Data);
int CallbackHandler(KernelCallback *Data); int CallbackHandler(KernelCallback *Data);
HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry); HEAD(FexFormatType_Driver, FexOSType_Fennix, DriverEntry);
@ -44,13 +44,13 @@ BARData BAR;
MediaAccessControl MAC; MediaAccessControl MAC;
InternetProtocol4 IP; InternetProtocol4 IP;
int DriverEntry(KernelAPI *Data) int DriverEntry(void *Data)
{ {
if (!Data) if (!Data)
return INVALID_KERNEL_API; return INVALID_KERNEL_API;
if (Data->Version.Major < 0 || Data->Version.Minor < 0 || Data->Version.Patch < 0) KAPI = (KernelAPI *)Data;
if (KAPI->Version.Major < 0 || KAPI->Version.Minor < 0 || KAPI->Version.Patch < 0)
return KERNEL_API_VERSION_NOT_SUPPORTED; return KERNEL_API_VERSION_NOT_SUPPORTED;
KAPI = Data;
return OK; return OK;
} }