summaryrefslogtreecommitdiffhomepage
path: root/dev/DDK
diff options
context:
space:
mode:
Diffstat (limited to 'dev/DDK')
-rw-r--r--dev/DDK/DispatchKernelCall.S2
-rw-r--r--dev/DDK/KernelAlloc.c4
-rw-r--r--dev/DDK/KernelCall.c6
-rw-r--r--dev/DDK/KernelDev.c4
-rw-r--r--dev/DDK/KernelDev.h12
-rw-r--r--dev/DDK/KernelPrint.c2
6 files changed, 15 insertions, 15 deletions
diff --git a/dev/DDK/DispatchKernelCall.S b/dev/DDK/DispatchKernelCall.S
index ef1886b9..3a9a57b5 100644
--- a/dev/DDK/DispatchKernelCall.S
+++ b/dev/DDK/DispatchKernelCall.S
@@ -30,7 +30,7 @@ __KernelCallDispatch:
/* args x0, x8, x9, x10, x11 is kept to tell that this is a Kernel call */
__KernelCallDispatch:
/* There is no specific interrupt request id for a system call in ARM64 as well. */
- mov x11, #0x33
+ mov x9, #0x33
svc #0
#endif
diff --git a/dev/DDK/KernelAlloc.c b/dev/DDK/KernelAlloc.c
index 75aa3213..7648712d 100644
--- a/dev/DDK/KernelAlloc.c
+++ b/dev/DDK/KernelAlloc.c
@@ -18,7 +18,7 @@ DK_EXTERN void* KernelAlloc(size_t sz)
if (!sz)
++sz;
- void* ptr = KernelCall("NewHeap", 1, &sz, sizeof(size_t));
+ void* ptr = KernelCall("MmNewKeHeap", 1, &sz, sizeof(size_t));
return ptr;
}
@@ -32,5 +32,5 @@ DK_EXTERN void KernelFree(void* ptr)
if (!ptr)
return;
- KernelCall("DeleteHeap", 1, ptr, 0);
+ KernelCall("MmDeleteKeHeap", 1, ptr, 0);
}
diff --git a/dev/DDK/KernelCall.c b/dev/DDK/KernelCall.c
index 31e67620..16c36f43 100644
--- a/dev/DDK/KernelCall.c
+++ b/dev/DDK/KernelCall.c
@@ -32,7 +32,7 @@ DK_EXTERN void* KernelCall(const char* KernelRpcName, int32_t cnt, void* data, s
/// @param slotFn, syscall slot.
DK_EXTERN void KernelAddSyscall(const int slot, void (*slotFn)(void* a0))
{
- KernelCall("AddSyscall", slot, slotFn, 1);
+ KernelCall("IntAddSyscall", slot, slotFn, 1);
}
/// @brief Get a Kernel property.
@@ -41,7 +41,7 @@ DK_EXTERN void KernelAddSyscall(const int slot, void (*slotFn)(void* a0))
/// @return property's object.
DK_EXTERN void* KernelGetProperty(const int slot, const char* name)
{
- return KernelCall("GetProperty", slot, name, 1);
+ return KernelCall("RtlGetProperty", slot, (void*)name, 1);
}
/// @brief Set a Kernel property.
@@ -51,5 +51,5 @@ DK_EXTERN void* KernelGetProperty(const int slot, const char* name)
/// @return property's object.
DK_EXTERN void* KernelSetProperty(const int slot, const struct DDK_PROPERTY_RECORD* ddk_pr)
{
- return KernelCall("SetProperty", slot, ddk_pr, 1);
+ return KernelCall("RtlSetProperty", slot, (void*)ddk_pr, 1);
}
diff --git a/dev/DDK/KernelDev.c b/dev/DDK/KernelDev.c
index 78703961..a04f5986 100644
--- a/dev/DDK/KernelDev.c
+++ b/dev/DDK/KernelDev.c
@@ -15,7 +15,7 @@ DK_EXTERN KERNEL_DEVICE_PTR KernelOpenDevice(const char* devicePath)
if (!devicePath)
return nil;
- return KernelCall("OpenDevice", 1, (void*)devicePath, KernelStringLength(devicePath));
+ return KernelCall("ZkOpenDevice", 1, (void*)devicePath, KernelStringLength(devicePath));
}
/// @brief Close any device.
@@ -25,5 +25,5 @@ DK_EXTERN void KernelCloseDevice(KERNEL_DEVICE_PTR device)
if (!device)
return;
- KernelCall("CloseDevice", 1, device, sizeof(KERNEL_DEVICE));
+ KernelCall("ZkCloseDevice", 1, device, sizeof(KERNEL_DEVICE));
}
diff --git a/dev/DDK/KernelDev.h b/dev/DDK/KernelDev.h
index e051c7a3..17876688 100644
--- a/dev/DDK/KernelDev.h
+++ b/dev/DDK/KernelDev.h
@@ -15,12 +15,12 @@ struct _KERNEL_DEVICE;
/// @brief Kernel Device driver.
typedef struct _KERNEL_DEVICE DK_FINAL
{
- char name[255]; // the device name. Could be /./DEVICE_NAME/
- void* (*read)(void* arg, int len); // read from device.
- void (*write)(void* arg, int len);
- void (*wait)(void); // write to device.
- struct _KERNEL_DEVICE* (*open)(const char* path); // open device.
- void (*close)(struct _KERNEL_DEVICE* dev); // close device.
+ char d_name[255]; // the device name. Could be /./DEVICE_NAME/
+ void* (*d_read)(void* arg, int len); // read from device.
+ void (*d_write)(void* arg, int len);
+ void (*d_wait)(void); // write to device.
+ struct _KERNEL_DEVICE* (*d_open)(const char* path); // open device.
+ void (*d_close)(struct _KERNEL_DEVICE* dev); // close device.
} KERNEL_DEVICE, *KERNEL_DEVICE_PTR;
/// @brief Open a new device from path.
diff --git a/dev/DDK/KernelPrint.c b/dev/DDK/KernelPrint.c
index 7eb893d0..77faa8a8 100644
--- a/dev/DDK/KernelPrint.c
+++ b/dev/DDK/KernelPrint.c
@@ -14,7 +14,7 @@ DK_EXTERN void KernelPrintChar(const char ch)
assembled[0] = ch;
assembled[1] = 0;
- KernelCall("WriteCharacter", 1, assembled, 1);
+ KernelCall("SrWriteCharacter", 1, assembled, 1);
}
/// @brief print string to UART.