From 6120d4cb06086a3cf05964f7838e2ec48b6d555c Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Mon, 19 Aug 2024 12:18:08 +0200 Subject: [DDK] + Add property kernel calls regarding kernel objects. + So we can add and fetch them. Signed-off-by: Amlal El Mahrouss --- dev/DDK/KernelCall.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'dev/DDK/KernelCall.c') diff --git a/dev/DDK/KernelCall.c b/dev/DDK/KernelCall.c index c0a6ed15..8c890579 100644 --- a/dev/DDK/KernelCall.c +++ b/dev/DDK/KernelCall.c @@ -32,5 +32,24 @@ 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, 0); + kernelCall("AddSyscall", slot, slotFn, 1); +} + +/// @brief Get a kernel property. +/// @param slot property id (always 0) +/// @param name the prperty's name. +/// @return property's object. +DK_EXTERN void* kernelGetProperty(const int slot, const char* name) +{ + return kernelCall("GetProperty", slot, name, 1); +} + +/// @brief Set a kernel property. +/// @param slot property id (always 0) +/// @param name the property's name. +/// @param ddk_pr pointer to a property's DDK_PROPERTY_RECORD. +/// @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); } -- cgit v1.2.3