summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/kernel/kernel/sysmem.h15
-rw-r--r--include/kernel/kernel/sysmem/memblock.h40
2 files changed, 30 insertions, 25 deletions
diff --git a/include/kernel/kernel/sysmem.h b/include/kernel/kernel/sysmem.h
index 3d5b5e4..c0f28dd 100644
--- a/include/kernel/kernel/sysmem.h
+++ b/include/kernel/kernel/sysmem.h
@@ -32,7 +32,7 @@ typedef struct SceKernelHeapCreateOpt {
SceUInt32 field_18;
} SceKernelHeapCreateOpt;
-typedef struct SceCreateUidObjOpt {
+typedef struct SceGUIDKernelCreateOpt {
SceUInt32 flags;
SceUInt32 field_4;
SceUInt32 field_8;
@@ -40,7 +40,8 @@ typedef struct SceCreateUidObjOpt {
SceUInt32 field_10;
SceUInt32 field_14;
SceUInt32 field_18;
-} SceCreateUidObjOpt;
+ SceUInt32 field_1C;
+} SceGUIDKernelCreateOpt;
typedef enum SceKernelModel {
SCE_KERNEL_MODEL_VITA = 0x10000,
@@ -89,9 +90,9 @@ int sceKernelStrncpyFromUser(void *dst, uintptr_t src, SceSize len);
int sceKernelStrncpyToUser(uintptr_t dst, const void *src, SceSize len);
int sceKernelStrncpyFromUserProc(SceUID pid, void *dst, uintptr_t src, SceSize len);
-SceUID scePUIDtoGUID(SceUID pid, SceUID user_uid);
-SceUID scePUIDOpenByGUID(SceUID pid, SceUID kern_uid);
-SceUID sceGUIDKernelCreateWithOpt(SceClass *cls, const char *name, SceCreateUidObjOpt *opt, SceObjectBase **obj);
+SceUID scePUIDtoGUID(SceUID pid, SceUID puid);
+SceUID scePUIDOpenByGUID(SceUID pid, SceUID guid);
+SceUID sceGUIDKernelCreateWithOpt(SceClass *cls, const char *name, SceGUIDKernelCreateOpt *opt, SceObjectBase **obj);
/**
* Gets an object from a UID.
@@ -139,8 +140,8 @@ SceClass *sceKernelGetUidHeapClass(void);
SceClass *sceKernelGetUidMemBlockClass(void);
int sceKernelCreateClass(SceClass *cls, const char *name, void *uidclass, SceSize itemsize, SceClassCallback create, SceClassCallback destroy);
-int scePUIDClose(SceUID pid, SceUID user_uid);
-int sceGUIDClose(SceUID uid);
+int scePUIDClose(SceUID pid, SceUID puid);
+int sceGUIDClose(SceUID guid);
int sceKernelFindClassByName(const char *name, SceClass **cls);
int sceKernelGetPidContext(SceUID pid, SceKernelProcessContext **ctx);
diff --git a/include/kernel/kernel/sysmem/memblock.h b/include/kernel/kernel/sysmem/memblock.h
index 0050e5b..1e62493 100644
--- a/include/kernel/kernel/sysmem/memblock.h
+++ b/include/kernel/kernel/sysmem/memblock.h
@@ -32,18 +32,22 @@ typedef enum SceKernelMemoryRefPerm {
SCE_KERNEL_MEMORY_REF_PERM_KERN_X = 0x40,
} SceKernelMemoryRefPerm;
-typedef struct SceKernelAddrPair {
- uint32_t addr; //!< Address
- uint32_t length; //!< Length
-} SceKernelAddrPair;
-
-typedef struct SceKernelPaddrList {
- uint32_t size; //!< sizeof(SceKernelPaddrList)
- uint32_t list_size; //!< Size in elements of the list array
- uint32_t ret_length; //!< Total physical size of the memory pairs
- uint32_t ret_count; //!< Number of elements of list filled by sceKernelVARangeToPAVector
- SceKernelAddrPair *list; //!< Array of physical addresses and their lengths pairs
-} SceKernelPaddrList;
+typedef struct SceKernelAddressRange {
+ uint32_t addr; //!< Address
+ uint32_t length; //!< Length
+} SceKernelAddressRange;
+
+typedef SceKernelAddressRange SceKernelPARange;
+
+typedef SceKernelAddressRange SceKernelVARange;
+
+typedef struct SceKernelPAVector {
+ SceSize size; //!< sizeof(SceKernelPAVector)
+ uint32_t nRanges; //!< Size in elements of the vector
+ uint32_t nDataInVector; //!< Total physical size of the address ranges
+ uint32_t nTotalSize; //!< Number of elements of list filled by sceKernelVARangeToPAVector
+ SceKernelPARange *pVector; //!< Vector of address ranges
+} SceKernelPAVector;
// specific to 3.60
typedef struct SceKernelAllocMemBlockKernelOpt {
@@ -57,7 +61,7 @@ typedef struct SceKernelAllocMemBlockKernelOpt {
SceUInt32 extraHigh;
SceUInt32 mirror_blockid;
SceUID pid;
- SceKernelPaddrList *pVector;
+ SceKernelPAVector *pVector;
SceUInt32 field_2C;
SceUInt32 field_30;
SceUInt32 field_34;
@@ -79,7 +83,7 @@ typedef struct SceKernelAllocMemBlockKernelOpt {
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelGetMemBlockType(SceUID uid, unsigned int *type);
+int sceKernelGetMemBlockType(SceUID uid, SceKernelMemBlockType *type);
/**
* Find the SceUID of a memory block for a PID
@@ -104,7 +108,7 @@ int sceKernelRemapBlock(SceUID uid, SceKernelMemBlockType type);
int sceKernelMapMemBlock(SceUID uid);
-int sceKernelUserMapWithFlags(const char *name, int permission, int type,
+int sceKernelUserMapWithFlags(const char *name, int permission, int flags,
const void *user_buf, SceSize size, void **kernel_page,
SceSize *kernel_size, unsigned int *kernel_offset);
@@ -129,12 +133,12 @@ int sceKernelVAtoPA(const void *addr, uintptr_t *paddr);
/**
* Get the physical address list of a given virtual address range
*
- * @param[in] input - The virtual address range
- * @param[out] list - The list of physical addresses
+ * @param[in] pRange - The virtual address range
+ * @param[out] pVector - The list of physical addresses
*
* @return 0 on success, < 0 on error.
*/
-int sceKernelVARangeToPAVector(const SceKernelAddrPair *input, SceKernelPaddrList *list);
+int sceKernelVARangeToPAVector(const SceKernelVARange *pRange, SceKernelPAVector *pVector);
/**
* Releases a memblock referenced by the UID.