diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-05 21:10:18 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-05 21:10:18 +0200 |
| commit | f95d8bf159d10b5a9521dcaa0bc37aa0e9dfc02b (patch) | |
| tree | bf8186f1a0521a64983bb0bca4f7b54883542195 /Private/DriverKit | |
| parent | 5a903c1d8f80ca8d7bc5fbea0aea710ce0133f9d (diff) | |
MHR-23: Add run_format.sh, kernel patches.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/DriverKit')
| -rw-r--r-- | Private/DriverKit/KernelCall.c | 15 | ||||
| -rw-r--r-- | Private/DriverKit/KernelDev.c | 24 | ||||
| -rw-r--r-- | Private/DriverKit/KernelDev.h | 15 | ||||
| -rw-r--r-- | Private/DriverKit/KernelPrint.c | 31 | ||||
| -rw-r--r-- | Private/DriverKit/KernelStd.h | 4 | ||||
| -rw-r--r-- | Private/DriverKit/KernelString.c | 30 | ||||
| -rw-r--r-- | Private/DriverKit/KernelString.h | 2 |
7 files changed, 69 insertions, 52 deletions
diff --git a/Private/DriverKit/KernelCall.c b/Private/DriverKit/KernelCall.c index 494ac0bc..586505dc 100644 --- a/Private/DriverKit/KernelCall.c +++ b/Private/DriverKit/KernelCall.c @@ -11,14 +11,15 @@ 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; +DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...) +{ + if (!kernelRpcName || cnt == 0) + return NIL; - va_list arg; - va_start(arg, cnt); + va_list arg; + va_start(arg, cnt); - __kernelDispatchCall(cnt, arg); - - va_end(arg); + __kernelDispatchCall(cnt, arg); + va_end(arg); } diff --git a/Private/DriverKit/KernelDev.c b/Private/DriverKit/KernelDev.c index e8c041af..aec57e19 100644 --- a/Private/DriverKit/KernelDev.c +++ b/Private/DriverKit/KernelDev.c @@ -9,23 +9,29 @@ #include <DriverKit/KernelDev.h> /// @brief Open a new binary device from path. -DK_EXTERN kernelDeviceRef kernelOpenBinaryDevice(const char* devicePath) { - if (!devicePath) return NIL; +DK_EXTERN kernelDeviceRef kernelOpenBinaryDevice(const char* devicePath) +{ + if (!devicePath) + return NIL; - return kernelCall("OpenBinaryDevice", 1, devicePath); + return kernelCall("OpenBinaryDevice", 1, devicePath); } /// @brief Open a new character device from path. -DK_EXTERN kernelDeviceRef kernelOpenCharDevice(const char* devicePath) { - if (!devicePath) return NIL; +DK_EXTERN kernelDeviceRef kernelOpenCharDevice(const char* devicePath) +{ + if (!devicePath) + return NIL; - return kernelCall("OpenCharDevice", 1, devicePath); + return kernelCall("OpenCharDevice", 1, devicePath); } /// @brief Close any device. /// @param device valid device. -DK_EXTERN void kernelCloseDevice(kernelDeviceRef device) { - if (!device) return; +DK_EXTERN void kernelCloseDevice(kernelDeviceRef device) +{ + if (!device) + return; - kernelCall("CloseDevice", 1, device); + kernelCall("CloseDevice", 1, device); } diff --git a/Private/DriverKit/KernelDev.h b/Private/DriverKit/KernelDev.h index 8b6888f0..89edff4d 100644 --- a/Private/DriverKit/KernelDev.h +++ b/Private/DriverKit/KernelDev.h @@ -13,13 +13,14 @@ 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; +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); diff --git a/Private/DriverKit/KernelPrint.c b/Private/DriverKit/KernelPrint.c index 5ca09ccf..d10efc82 100644 --- a/Private/DriverKit/KernelPrint.c +++ b/Private/DriverKit/KernelPrint.c @@ -8,21 +8,26 @@ #include <DriverKit/KernelPrint.h> -DK_EXTERN void kernelPrintChar(const char ch) { - kernelCall("WriteCharacter", 1, ch); +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; - } +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/Private/DriverKit/KernelStd.h b/Private/DriverKit/KernelStd.h index 3344630e..7a34dad6 100644 --- a/Private/DriverKit/KernelStd.h +++ b/Private/DriverKit/KernelStd.h @@ -10,10 +10,10 @@ #if defined(__cplusplus) #define DK_EXTERN extern "C" -#define NIL nullptr +#define NIL nullptr #else #define DK_EXTERN extern -#define NIL NULL +#define NIL NULL #endif // defined(__cplusplus) #include <stdint.h> diff --git a/Private/DriverKit/KernelString.c b/Private/DriverKit/KernelString.c index 0bb45b16..a8093f97 100644 --- a/Private/DriverKit/KernelString.c +++ b/Private/DriverKit/KernelString.c @@ -8,23 +8,27 @@ #include <DriverKit/KernelString.h> -DK_EXTERN size_t kernelStringLength(const char* str) { - size_t index = 0; +DK_EXTERN size_t kernelStringLength(const char* str) +{ + size_t index = 0; - while (str[index] != 0) { - ++index; - } + while (str[index] != 0) + { + ++index; + } - return index; + return index; } -DK_EXTERN int kernelStringCopy(char* dst, const char* src, size_t len) { - size_t index = 0; +DK_EXTERN int kernelStringCopy(char* dst, const char* src, size_t len) +{ + size_t index = 0; - while (index != len) { - dst[index] = src[index]; - ++index; - } + while (index != len) + { + dst[index] = src[index]; + ++index; + } - return index; + return index; } diff --git a/Private/DriverKit/KernelString.h b/Private/DriverKit/KernelString.h index 8e189d26..6536ba83 100644 --- a/Private/DriverKit/KernelString.h +++ b/Private/DriverKit/KernelString.h @@ -13,4 +13,4 @@ /// @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); +DK_EXTERN int kernelStringCopy(char* dst, const char* src, size_t len); |
