summaryrefslogtreecommitdiff
path: root/include/kernel/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'include/kernel/kernel')
-rw-r--r--include/kernel/kernel/cpu.h18
-rw-r--r--include/kernel/kernel/dmac.h6
-rw-r--r--include/kernel/kernel/modulemgr.h58
-rw-r--r--include/kernel/kernel/processmgr.h2
-rw-r--r--include/kernel/kernel/sysmem.h80
-rw-r--r--include/kernel/kernel/threadmgr.h28
-rw-r--r--include/kernel/kernel/utils.h44
7 files changed, 130 insertions, 106 deletions
diff --git a/include/kernel/kernel/cpu.h b/include/kernel/kernel/cpu.h
index 4765d52..ec2f14e 100644
--- a/include/kernel/kernel/cpu.h
+++ b/include/kernel/kernel/cpu.h
@@ -38,7 +38,7 @@ extern "C" {
*
* @return Zero on success
*/
-int sceKernelCpuDcacheWritebackRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheWritebackRange(const void *ptr, SceSize len);
/**
@@ -88,7 +88,7 @@ static inline void sceKernelCpuRestoreContext(int context[3])
*
* @return Zero on success.
*/
-static inline int sceKernelCpuUnrestrictedMemcpy(void *dst, const void *src, size_t len)
+static inline int sceKernelCpuUnrestrictedMemcpy(void *dst, const void *src, SceSize len)
{
int prev_dacr;
@@ -135,7 +135,7 @@ int sceKernelCpuEnableInterrupts(int flags);
*
* @return Zero on success
*/
-int sceKernelCpuDcacheInvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheInvalidateRange(const void *ptr, SceSize len);
/**
* @brief Writeback and invalidate a range of L1 dcache (without L2)
@@ -145,7 +145,7 @@ int sceKernelCpuDcacheInvalidateRange(const void *ptr, size_t len);
*
* @return Zero on success
*/
-int sceKernelCpuDcacheWritebackInvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheWritebackInvalidateRange(const void *ptr, SceSize len);
/**
* @brief Invalidate all the L1 dcache (without L2)
@@ -176,7 +176,7 @@ int sceKernelCpuDcacheWritebackInvalidateAll(void);
*
* @return Zero on success
*/
-int sceKernelCpuDcacheAndL2WritebackRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheAndL2WritebackRange(const void *ptr, SceSize len);
/**
* @brief Writeback and invalidate a range of L1 dcache and L2
@@ -186,7 +186,7 @@ int sceKernelCpuDcacheAndL2WritebackRange(const void *ptr, size_t len);
*
* @return Zero on success
*/
-int sceKernelCpuDcacheAndL2InvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheAndL2InvalidateRange(const void *ptr, SceSize len);
/**
* @brief Writeback and invalidate a range of L1 dcache and L2
@@ -196,7 +196,7 @@ int sceKernelCpuDcacheAndL2InvalidateRange(const void *ptr, size_t len);
*
* @return Zero on success
*/
-int sceKernelCpuDcacheAndL2WritebackInvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuDcacheAndL2WritebackInvalidateRange(const void *ptr, SceSize len);
/**
* @brief Invalidate a range of L1 icache (without L2)
@@ -206,7 +206,7 @@ int sceKernelCpuDcacheAndL2WritebackInvalidateRange(const void *ptr, size_t len)
*
* @return Zero on success
*/
-int sceKernelCpuIcacheInvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuIcacheInvalidateRange(const void *ptr, SceSize len);
/**
* @brief Invalidate all the L1 icache (without L2)
@@ -223,7 +223,7 @@ int sceKernelCpuIcacheInvalidateAll(void);
*
* @return Zero on success
*/
-int sceKernelCpuIcacheAndL2WritebackInvalidateRange(const void *ptr, size_t len);
+int sceKernelCpuIcacheAndL2WritebackInvalidateRange(const void *ptr, SceSize len);
/**
* @brief Suspend all interrupts (disables IRQs)
diff --git a/include/kernel/kernel/dmac.h b/include/kernel/kernel/dmac.h
index 669257e..adb1008 100644
--- a/include/kernel/kernel/dmac.h
+++ b/include/kernel/kernel/dmac.h
@@ -1,7 +1,7 @@
#ifndef _PSP2_KERNEL_DMAC_H_
#define _PSP2_KERNEL_DMAC_H_
-#include <stddef.h>
+#include <psp2kern/types.h>
#ifdef __cplusplus
extern "C" {
@@ -16,7 +16,7 @@ extern "C" {
*
* @return dst.
*/
-void *sceDmacMemcpy(void *dst, const void *src, size_t size);
+void *sceDmacMemcpy(void *dst, const void *src, SceSize size);
/**
* DMA memset
@@ -27,7 +27,7 @@ void *sceDmacMemcpy(void *dst, const void *src, size_t size);
*
* @return dst.
*/
-void *sceDmacMemset(void *dst, int c, size_t size);
+void *sceDmacMemset(void *dst, int c, SceSize size);
#ifdef __cplusplus
}
diff --git a/include/kernel/kernel/modulemgr.h b/include/kernel/kernel/modulemgr.h
index c8e115c..7ddc168 100644
--- a/include/kernel/kernel/modulemgr.h
+++ b/include/kernel/kernel/modulemgr.h
@@ -21,6 +21,12 @@ extern "C" {
#define SCE_KERNEL_STOP_CANCEL SCE_KERNEL_STOP_FAIL
/** @} */
+typedef enum SceKernelModuleState {
+ SCE_KERNEL_MODULE_STATE_READY = 0x00000002,
+ SCE_KERNEL_MODULE_STATE_STARTED = 0x00000006,
+ SCE_KERNEL_MODULE_STATE_ENDED = 0x00000009
+} SceKernelModuleState;
+
typedef struct SceKernelModuleName {
char s[0x1C];
} SceKernelModuleName;
@@ -53,7 +59,7 @@ typedef struct SceKernelModuleInfo {
SceSize tlsAreaSize;
char path[256];
SceKernelSegmentInfo segments[4];
- SceUInt type; //!< 6 = user-mode PRX?
+ SceUInt state; //!< see:SceKernelModuleState
} SceKernelModuleInfo;
typedef struct {
@@ -64,8 +70,7 @@ typedef struct {
SceSize size;
} SceKernelULMOption;
-typedef struct
-{
+typedef struct {
SceSize size;
char versionString[0x1C];
SceUInt version;
@@ -94,7 +99,7 @@ typedef struct {
uint32_t unk40;
uint32_t unk44;
uint32_t nid;
- int segments_num;
+ SceSize segments_num;
union {
struct {
SceKernelSegmentInfo2 SegmentInfo[1];
@@ -117,15 +122,15 @@ typedef struct {
typedef struct SceKernelModuleLibraryInfo {
SceSize size; //!< sizeof(SceKernelModuleLibraryInfo) : 0x120
- SceUID libid;
+ SceUID library_id;
uint32_t libnid;
uint16_t libver[2];
uint16_t entry_num_function;
uint16_t entry_num_variable;
uint16_t unk_0x14;
uint16_t unk_0x16;
- char library_name[0x100]; // offset : 0x18
- uint32_t unk_0x118;
+ char library_name[0x100];
+ SceSize number_of_imported;
SceUID modid2;
} SceKernelModuleLibraryInfo;
@@ -137,7 +142,7 @@ typedef struct SceKernelModuleLibraryInfo {
*
* @return none
*/
-void sceKernelRegisterSyscall(int syscall_id, const void *func);
+void sceKernelRegisterSyscall(SceSize syscall_id, const void *func);
/**
* @brief Setup kernel for modulemgr
@@ -159,7 +164,7 @@ void sceKernelSetupForModulemgr(void);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModuleList(SceUID pid, int flags1, int flags2, SceUID *modids, size_t *num);
+int sceKernelGetModuleList(SceUID pid, int flags1, int flags2, SceUID *modids, SceSize *num);
/**
* @par Example1: Get max to 10 kernel module info
@@ -189,7 +194,7 @@ int sceKernelGetModuleList(SceUID pid, int flags1, int flags2, SceUID *modids, s
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModuleList2(SceUID pid, SceKernelModuleListInfo *infolists, size_t *num);
+int sceKernelGetModuleList2(SceUID pid, SceKernelModuleListInfo *infolists, SceSize *num);
/**
* @brief Get module info
@@ -223,7 +228,7 @@ int sceKernelGetModuleInfoMinByAddr(SceUID pid, const void *module_addr, uint32_
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModuleInternal(SceUID modid, void **module_info);
+int sceKernelGetModuleInternal(SceUID modid, void **info);
/**
* @brief Get module id by module address
@@ -477,7 +482,7 @@ SceUID sceKernelGetProcessMainModule(SceUID pid);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModulePath(SceUID modid, char *path, int pathlen);
+int sceKernelGetModulePath(SceUID modid, char *path, SceSize pathlen);
/**
* @brief Get library info
@@ -488,7 +493,7 @@ int sceKernelGetModulePath(SceUID modid, char *path, int pathlen);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModuleLibraryInfo(SceUID pid, SceUID libid, SceKernelModuleLibraryInfo *info);
+int sceKernelGetModuleLibraryInfo(SceUID pid, SceUID library_id, SceKernelModuleLibraryInfo *info);
typedef struct SceKernelModuleExportEntry {
uint32_t libnid;
@@ -506,10 +511,31 @@ typedef struct SceKernelModuleExportEntry {
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetModuleLibExportList(SceUID pid, SceUID libid, SceKernelModuleExportEntry *list, SceSize *num, SceSize cpy_skip_num);
+int sceKernelGetModuleLibExportList(SceUID pid, SceUID library_id, SceKernelModuleExportEntry *list, SceSize *num, SceSize cpy_skip_num);
+
+/**
+ * @brief Get module id list by import
+ *
+ * @param[in] pid - target pid
+ * @param[in] library_id - target library uid
+ * @param[out] modids - module id output list
+ * @param[inout] num - in:list max num, out:get entry num
+ * @param[in] cpy_skip_num - The index at which to start copying
+ *
+ * @return 0 on success, < 0 on error.
+ */
+int sceKernelGetModuleListByImport(SceUID pid, SceUID library_id, SceUID *modids, SceSize *num, SceSize cpy_skip_num);
-int sceKernelGetModuleUid(SceUID pid, SceUID modid, SceUID *modid_out, const void *unk1, int unk2);
-int sceKernelGetModuleUidList(SceUID pid, SceUID *modids, size_t *num);
+/**
+ * @brief Get module export list
+ *
+ * @param[in] pid - target pid
+ * @param[out] library_ids - library id output list
+ * @param[inout] num - in:list max num, out:get entry num
+ *
+ * @return 0 on success, < 0 on error.
+ */
+int sceKernelGetProcessLibraryIdList(SceUID pid, SceUID *library_ids, SceSize *num);
#ifdef __cplusplus
}
diff --git a/include/kernel/kernel/processmgr.h b/include/kernel/kernel/processmgr.h
index 819129b..b176644 100644
--- a/include/kernel/kernel/processmgr.h
+++ b/include/kernel/kernel/processmgr.h
@@ -36,7 +36,7 @@ int sceKernelGetProcessLocalStorageAddrForPid(SceUID pid, int key, void **out_ad
* @param[in] unk Unknown.
* @return PID of the launched app on success, < 0 on error.
*/
-SceUID sceKernelLaunchApp(char* titleid, uint32_t flags, char *path, uint32_t unk);
+SceUID sceKernelLaunchApp(const char *titleid, uint32_t flags, const char *path, uint32_t unk);
/**
* @brief Resume a suspended process.
diff --git a/include/kernel/kernel/sysmem.h b/include/kernel/kernel/sysmem.h
index aa882e3..c39fe43 100644
--- a/include/kernel/kernel/sysmem.h
+++ b/include/kernel/kernel/sysmem.h
@@ -105,7 +105,7 @@ typedef enum SceKernelModel {
SCE_KERNEL_MODEL_VITATV = 0x20000
} SceKernelModel;
-typedef int (*SceClassCallback)(void *item);
+typedef int (* SceClassCallback)(void *item);
typedef struct SceClass {
struct SceClass *next;
@@ -151,11 +151,11 @@ typedef struct SceKernelSysrootSelfInfo {
* @param[in] name - Name for the memory block
* @param[in] type - Type of the memory to allocate
* @param[in] size - Size of the memory to allocate
- * @param[in] optp - Memory block options?
+ * @param[in] opt - Memory block options?
*
* @return SceUID of the memory block on success, < 0 on error.
*/
-SceUID sceKernelAllocMemBlock(const char *name, SceKernelMemBlockType type, int size, SceKernelAllocMemBlockKernelOpt *optp);
+SceUID sceKernelAllocMemBlock(const char *name, SceKernelMemBlockType type, SceSize size, SceKernelAllocMemBlockKernelOpt *opt);
/**
* Frees new memory block
@@ -169,12 +169,12 @@ int sceKernelFreeMemBlock(SceUID uid);
/**
* Gets the base address of a memory block
*
- * @param[in] uid - SceUID of the memory block
- * @param[out] basep - Base address of the memory block identified by uid
+ * @param[in] uid - SceUID of the memory block
+ * @param[out] base - Base address of the memory block identified by uid
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetMemBlockBase(SceUID uid, void **basep);
+int sceKernelGetMemBlockBase(SceUID uid, void **base);
/**
* Gets the memory block type of a memory block
@@ -222,14 +222,14 @@ int sceKernelDeleteHeap(SceUID uid);
void *sceKernelAllocHeapMemory(SceUID uid, SceSize size);
void sceKernelFreeHeapMemory(SceUID uid, void *ptr);
-int sceKernelMemcpyUserToKernelForPid(SceUID pid, void *dst, uintptr_t src, size_t len);
-int sceKernelMemcpyUserToKernel(void *dst, uintptr_t src, size_t len);
-int sceKernelMemcpyKernelToUser(uintptr_t dst, const void *src, size_t len);
-int sceKernelRxMemcpyKernelToUserForPid(SceUID pid, uintptr_t dst, const void *src, size_t len);
+int sceKernelMemcpyUserToKernelForPid(SceUID pid, void *dst, uintptr_t src, SceSize len);
+int sceKernelMemcpyUserToKernel(void *dst, uintptr_t src, SceSize len);
+int sceKernelMemcpyKernelToUser(uintptr_t dst, const void *src, SceSize len);
+int sceKernelRxMemcpyKernelToUserForPid(SceUID pid, uintptr_t dst, const void *src, SceSize len);
-int sceKernelStrncpyUserToKernel(void *dst, uintptr_t src, size_t len);
-int sceKernelStrncpyKernelToUser(uintptr_t dst, const void *src, size_t len);
-int sceKernelStrncpyUserForPid(SceUID pid, void *dst, uintptr_t src, size_t len);
+int sceKernelStrncpyUserToKernel(void *dst, uintptr_t src, SceSize len);
+int sceKernelStrncpyKernelToUser(uintptr_t dst, const void *src, SceSize len);
+int sceKernelStrncpyUserForPid(SceUID pid, void *dst, uintptr_t src, SceSize len);
SceUID sceKernelKernelUidForUserUid(SceUID pid, SceUID user_uid);
SceUID sceKernelCreateUserUid(SceUID pid, SceUID kern_uid);
@@ -275,7 +275,8 @@ SceClass *sceKernelGetUidClass(void);
SceClass *sceKernelGetUidDLinkClass(void);
SceClass *sceKernelGetUidHeapClass(void);
SceClass *sceKernelGetUidMemBlockClass(void);
-int sceKernelCreateClass(SceClass *cls, const char *name, void *uidclass, size_t itemsize, SceClassCallback create, SceClassCallback destroy);
+
+int sceKernelCreateClass(SceClass *cls, const char *name, void *uidclass, SceSize itemsize, SceClassCallback create, SceClassCallback destroy);
int sceKernelDeleteUserUid(SceUID pid, SceUID user_uid);
int sceKernelDeleteUid(SceUID uid);
int sceKernelFindClassByName(const char *name, SceClass **cls);
@@ -285,18 +286,18 @@ int sceKernelSwitchVmaForPid(SceUID pid);
void *sceKernelGetSysrootBuffer(void);
int sceKernelGetPidContext(SceUID pid, SceKernelProcessContext **ctx);
-int sceKernelGetProcessTitleId(SceUID pid, char *titleid, size_t len);
+int sceKernelGetProcessTitleId(SceUID pid, char *titleid, SceSize len);
int sceKernelMapBlockUserVisible(SceUID uid);
int sceKernelMapUserBlock(const char *name, int permission, int type,
- const void *user_buf, unsigned int size, void **kernel_page,
- unsigned int *kernel_size, unsigned int *kernel_offset);
+ const void *user_buf, SceSize size, void **kernel_page,
+ SceSize *kernel_size, unsigned int *kernel_offset);
int sceKernelMapUserBlockDefaultType(const char *name, int permission, const void *user_buf,
- unsigned int size, void **kernel_page,
- unsigned int *kernel_size, unsigned int *kernel_offset);
+ SceSize size, void **kernel_page,
+ SceSize *kernel_size, unsigned int *kernel_offset);
int sceKernelMapUserBlockDefaultTypeForPid(int pid, const char *name, int permission,
- const void *user_buf, unsigned int size, void **kernel_page,
- unsigned int *kernel_size, unsigned int *kernel_offset);
+ const void *user_buf, SceSize size, void **kernel_page,
+ SceSize *kernel_size, unsigned int *kernel_offset);
int sceSysrootGetSelfInfo(SceKernelSysrootSelfIndex index, SceKernelSysrootSelfInfo *info);
@@ -343,7 +344,7 @@ int sceKernelMemBlockRelease(SceUID uid);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeRetain(void *addr, unsigned int size);
+int sceKernelMemRangeRetain(void *addr, SceSize size);
/**
* Retains a memory range for a process (pid)
@@ -358,7 +359,7 @@ int sceKernelMemRangeRetain(void *addr, unsigned int size);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeRetainForPid(SceUID pid, void *addr, unsigned int size);
+int sceKernelMemRangeRetainForPid(SceUID pid, void *addr, SceSize size);
/**
* Retains a memory range checking for a given permission
@@ -373,7 +374,7 @@ int sceKernelMemRangeRetainForPid(SceUID pid, void *addr, unsigned int size);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeRetainWithPerm(SceKernelMemoryRefPerm perm, void *addr, unsigned int size);
+int sceKernelMemRangeRetainWithPerm(SceKernelMemoryRefPerm perm, void *addr, SceSize size);
/**
* Releases a memory range
@@ -387,7 +388,7 @@ int sceKernelMemRangeRetainWithPerm(SceKernelMemoryRefPerm perm, void *addr, uns
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeRelease(void *addr, unsigned int size);
+int sceKernelMemRangeRelease(void *addr, SceSize size);
/**
* Releases a memory range for a process (pid)
@@ -402,7 +403,7 @@ int sceKernelMemRangeRelease(void *addr, unsigned int size);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeReleaseForPid(SceUID pid, void *addr, unsigned int size);
+int sceKernelMemRangeReleaseForPid(SceUID pid, void *addr, SceSize size);
/**
* Releases a memory range checking for a given permission
@@ -417,7 +418,7 @@ int sceKernelMemRangeReleaseForPid(SceUID pid, void *addr, unsigned int size);
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelMemRangeReleaseWithPerm(SceKernelMemoryRefPerm perm, void *addr, unsigned int size);
+int sceKernelMemRangeReleaseWithPerm(SceKernelMemoryRefPerm perm, void *addr, SceSize size);
int sceSysrootUseExternalStorage(void);
@@ -427,31 +428,28 @@ int sceSysrootUseInternalStorage(void);
int sceDebugPrintf(const char *fmt, ...);
-typedef struct kernel_message_ctx
-{
+typedef struct SceKernelDebugMessageContext {
int hex_value0_hi;
int hex_value0_lo;
int hex_value1;
- char* msg0;
- int num;
- char* msg1;
-} kernel_message_ctx;
+ char *msg0;
+ SceSize num;
+ char *msg1;
+} SceKernelDebugMessageContext;
// msg_type_flag : 0 or 0xB
-int sceDebugPrintf2(int msg_type_flag, kernel_message_ctx *msg_ctx, const char *fmt, ...);
+int sceDebugPrintf2(int msg_type_flag, const SceKernelDebugMessageContext *ctx, const char *fmt, ...);
int sceDebugVprintf(const char *fmt, va_list args);
-int sceDebugPrintKernelPanic(kernel_message_ctx *msg_ctx, void *some_address);
-
-int sceDebugPrintfKernelPanic(kernel_message_ctx *msg_ctx, void *some_address, char* format, ...);
-
-int sceDebugPrintKernelAssertion(int condition, kernel_message_ctx *msg_ctx, void *some_address);
+int sceDebugPrintKernelPanic(const SceKernelDebugMessageContext *ctx, void *some_address);
+int sceDebugPrintfKernelPanic(const SceKernelDebugMessageContext *ctx, void *some_address, const char *fmt, ...);
-int sceDebugPrintfKernelAssertion(int unk, int condition, kernel_message_ctx *msg_ctx, int some_address, const char *fmt, ...);
+int sceDebugPrintKernelAssertion(int condition, const SceKernelDebugMessageContext *ctx, void *some_address);
+int sceDebugPrintfKernelAssertion(int unk, int condition, const SceKernelDebugMessageContext *ctx, int some_address, const char *fmt, ...);
-int sceDebugSetHandlers(int (*func)(void *args, char c), void *args);
+int sceDebugSetHandlers(int (*func)(int unk, const char *format, const va_list args), void *args);
int sceDebugRegisterPutcharHandler(int (*func)(void *args, char c), void *args);
diff --git a/include/kernel/kernel/threadmgr.h b/include/kernel/kernel/threadmgr.h
index 6c4dc0e..445c806 100644
--- a/include/kernel/kernel/threadmgr.h
+++ b/include/kernel/kernel/threadmgr.h
@@ -36,7 +36,7 @@ typedef struct SceKernelThreadInfo {
/** Thread stack pointer */
void *stack;
/** Thread stack size */
- int stackSize;
+ SceSize stackSize;
/** Initial priority */
int initPriority;
/** Current priority */
@@ -116,7 +116,7 @@ typedef struct SceKernelFaultingProcessInfo {
* @return UID of the created thread, or an error code.
*/
SceUID sceKernelCreateThread(const char *name, SceKernelThreadEntry entry, int initPriority,
- int stackSize, SceUInt attr, int cpuAffinityMask,
+ SceSize stackSize, SceUInt attr, int cpuAffinityMask,
const SceKernelThreadOptParam *option);
/**
@@ -275,7 +275,7 @@ typedef struct SceKernelSemaInfo {
* @par Example:
* @code
* int semaid;
- * semaid = sceKernelCreateSema("MySema", 0, 1, 1, 0);
+ * semaid = sceKernelCreateSema("MySema", 0, 1, 1, NULL);
* @endcode
*
* @param name - Specifies the name of the sema
@@ -316,7 +316,7 @@ int sceKernelSignalSema(SceUID semaid, int signal);
*
* @par Example:
* @code
- * sceKernelWaitSema(semaid, 1, 0);
+ * sceKernelWaitSema(semaid, 1, NULL);
* @endcode
*
* @param semaid - The sema id returned from ::sceKernelCreateSema
@@ -375,7 +375,7 @@ typedef struct SceKernelMutexInfo {
* @par Example:
* @code
* int mutexid;
- * mutexid = sceKernelCreateMutex("MyMutex", 0, 1, 1, 0);
+ * mutexid = sceKernelCreateMutex("MyMutex", 0, 1, NULL);
* @endcode
*
* @param name - Specifies the name of the mutex
@@ -547,7 +547,7 @@ typedef enum SceEventFlagWaitTypes {
* @par Example:
* @code
* int evid;
- * evid = sceKernelCreateEventFlag("wait_event", 0, 0, 0);
+ * evid = sceKernelCreateEventFlag("wait_event", 0, 0, NULL);
* @endcode
*/
SceUID sceKernelCreateEventFlag(const char *name, int attr, int bits, SceKernelEventFlagOptParam *opt);
@@ -740,7 +740,7 @@ typedef struct SceKernelCallbackInfo {
* @par Example:
* @code
* int cbid;
- * cbid = sceKernelCreateCallback("Exit Callback", exit_cb, NULL);
+ * cbid = sceKernelCreateCallback("Exit Callback", 0, exit_cb, NULL);
* @endcode
*
* @param name - A textual name for the callback
@@ -864,7 +864,7 @@ SceUID sceKernelGetProcessId(void);
*
* @return Zero on success
*/
-int sceKernelRunWithStack(int stack_size, int (*to_call)(void *), void *args);
+int sceKernelRunWithStack(SceSize stack_size, int (* to_call)(void *), void *args);
/**
* @brief Call from an abort handler to get info on faulting process
@@ -877,7 +877,7 @@ int sceKernelGetFaultingProcess(SceKernelFaultingProcessInfo *info);
/* Workqueues */
-typedef int (*SceKernelWorkQueueWorkFunction)(void *args);
+typedef int (* SceKernelWorkQueueWorkFunction)(void *args);
/**
* @brief Enqueue work to a workqueue
@@ -981,7 +981,7 @@ int sceKernelChangeThreadSuspendStatus(SceUID thid, int status);
*
* @return The UID of the created pipe, < 0 on error
*/
-SceUID sceKernelCreateMsgPipe(const char *name, int type, int attr, unsigned int bufSize, void *opt);
+SceUID sceKernelCreateMsgPipe(const char *name, int type, int attr, SceSize bufSize, void *opt);
/**
* Delete a message pipe
@@ -995,7 +995,7 @@ int sceKernelDeleteMsgPipe(SceUID uid);
typedef struct
{
const void *message;
- unsigned int size;
+ SceSize size;
} MsgPipeSendData;
/**
@@ -1023,12 +1023,12 @@ int sceKernelSendMsgPipeVector(SceUID uid, const MsgPipeSendData *v, unsigned in
*
* @return 0 on success, < 0 on error
*/
-int sceKernelTrySendMsgPipeVector(SceUID uid, const MsgPipeSendData *v, unsigned int size, int unk1, void *unk2);
+int sceKernelTrySendMsgPipeVector(SceUID uid, const MsgPipeSendData *v, SceSize size, int unk1, void *unk2);
typedef struct
{
void *message;
- unsigned int size;
+ SceSize size;
} MsgPipeRecvData;
/**
@@ -1056,7 +1056,7 @@ int sceKernelReceiveMsgPipeVector(SceUID uid, const MsgPipeRecvData *v, unsigned
*
* @return 0 on success, < 0 on error
*/
-int sceKernelTryReceiveMsgPipeVector(SceUID uid, const MsgPipeRecvData *v, unsigned int size, int unk1, void *unk2);
+int sceKernelTryReceiveMsgPipeVector(SceUID uid, const MsgPipeRecvData *v, SceSize size, int unk1, void *unk2);
/**
* Cancel a message pipe
diff --git a/include/kernel/kernel/utils.h b/include/kernel/kernel/utils.h
index c7f1c92..fc1e6f5 100644
--- a/include/kernel/kernel/utils.h
+++ b/include/kernel/kernel/utils.h
@@ -58,24 +58,24 @@ typedef struct {
uint8_t data[976];
} SceAesContext;
-int sceSha1BlockInit(SceSha1Context *pContext);
-int sceSha1BlockUpdate(SceSha1Context *pContext, const void *plain, uint32_t len);
-int sceSha1BlockResult(SceSha1Context *pContext, char *digest);
-int sceSha1Digest(const void *plain, uint32_t len, char *result);
+int sceSha1BlockInit(SceSha1Context *ctx);
+int sceSha1BlockUpdate(SceSha1Context *ctx, const void *plain, SceSize len);
+int sceSha1BlockResult(SceSha1Context *ctx, void *result);
+int sceSha1Digest(const void *plain, SceSize len, void *digest);
-int sceSha224BlockInit(SceSha224Context *pContext);
-int sceSha224BlockUpdate(SceSha224Context *pContext, const void *plain, uint32_t len);
-int sceSha224BlockResult(SceSha224Context *pContext, char *digest);
-int sceSha224Digest(const void *plain, uint32_t len, char *result);
+int sceSha224BlockInit(SceSha224Context *ctx);
+int sceSha224BlockUpdate(SceSha224Context *ctx, const void *plain, SceSize len);
+int sceSha224BlockResult(SceSha224Context *ctx, void *result);
+int sceSha224Digest(const void *plain, SceSize len, void *digest);
-int sceSha256BlockInit(SceSha256Context *pContext);
-int sceSha256BlockUpdate(SceSha256Context *pContext, const void *plain, uint32_t len);
-int sceSha256BlockResult(SceSha256Context *pContext, char *digest);
-int sceSha256Digest(const void *plain, uint32_t len, char *result);
+int sceSha256BlockInit(SceSha256Context *ctx);
+int sceSha256BlockUpdate(SceSha256Context *ctx, const void *plain, SceSize len);
+int sceSha256BlockResult(SceSha256Context *ctx, void *result);
+int sceSha256Digest(const void *plain, SceSize len, void *digest);
-int sceHmacSha1Digest(const unsigned char *key, uint32_t key_len, const void *plain, uint32_t len, char *result);
-int sceHmacSha224Digest(const unsigned char *key, uint32_t key_len, const void *plain, uint32_t len, char *result);
-int sceHmacSha256Digest(const unsigned char *key, uint32_t key_len, const void *plain, uint32_t len, char *result);
+int sceHmacSha1Digest(const void *key, SceSize key_len, const void *plain, SceSize len, void *digest);
+int sceHmacSha224Digest(const void *key, SceSize key_len, const void *plain, SceSize len, void *digest);
+int sceHmacSha256Digest(const void *key, SceSize key_len, const void *plain, SceSize len, void *digest);
/**
* @param[out] dst - dst buf
@@ -85,7 +85,7 @@ int sceHmacSha256Digest(const unsigned char *key, uint32_t key_len, const void *
*
* @return decompressed size on success, < 0 on error.
*/
-int sceGzipDecompress(void *dst, uint32_t dst_size, const void *src, uint32_t *crc32);
+int sceGzipDecompress(void *dst, SceSize dst_size, const void *src, uint32_t *crc32);
/**
* @brief Check magic of Gzip header
@@ -167,7 +167,7 @@ const void *sceZlibGetCompressedData(const void *src);
*
* @return decompressed size on success, < 0 on error.
*/
-int sceZlibDecompress(void *dst, uint32_t dst_size, const void *src, uint32_t *adler32);
+int sceZlibDecompress(void *dst, SceSize dst_size, const void *src, uint32_t *adler32);
/**
* @param[out] dst - dst buf
@@ -177,8 +177,8 @@ int sceZlibDecompress(void *dst, uint32_t dst_size, const void *src, uint32_t *a
*
* @return decompressed size on success, < 0 on error.
*/
-int sceDeflateDecompress(void *dst, uint32_t dst_size, const void *src, const void **next);
-int sceDeflateDecompressPartial(void *dst, unsigned int dst_size, const void *src, const void **next, SceDeflatePartialInputParam *cbInfo);
+int sceDeflateDecompress(void *dst, SceSize dst_size, const void *src, const void **next);
+int sceDeflateDecompressPartial(void *dst, SceSize dst_size, const void *src, const void **next, SceDeflatePartialInputParam *cbInfo);
/**
* @param[out] ctx - out key data, etc...
@@ -188,9 +188,9 @@ int sceDeflateDecompressPartial(void *dst, unsigned int dst_size, const void *sr
*
* @return 0 on success, < 0 on error.
*/
-int sceAesInit1(SceAesContext *ctx, int blocksize, int keysize, const void *key);
-int sceAesInit2(SceAesContext *ctx, int blocksize, int keysize, const void *key);
-int sceAesInit3(SceAesContext *ctx, int blocksize, int keysize, const void *key);
+int sceAesInit1(SceAesContext *ctx, SceSize blocksize, SceSize keysize, const void *key);
+int sceAesInit2(SceAesContext *ctx, SceSize blocksize, SceSize keysize, const void *key);
+int sceAesInit3(SceAesContext *ctx, SceSize blocksize, SceSize keysize, const void *key);
int sceAesDecrypt1(SceAesContext *ctx, const void *src, void *dst);
int sceAesDecrypt2(SceAesContext *ctx, const void *src, void *dst);