From 62d05264b79058f79fffceb74ba78ecfc1976591 Mon Sep 17 00:00:00 2001 From: Aphek Date: Sun, 25 Feb 2024 16:51:57 +0000 Subject: [PATCH] Update vita-headers to vita-headers --- Cargo.toml | 6 + src/bindings.rs | 1236 ++++++++++++++++++++++++++++++++++++++--------- vita-headers | 2 +- 3 files changed, 1020 insertions(+), 224 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index ff50a34..b4ec2aa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -118,6 +118,7 @@ all-stubs = [ "SceIme_stub", "SceIncomingDialog_stub", "SceIntrmgrForDriver_stub", + "SceIntrmgrForKernel_363_stub", "SceIntrmgrForKernel_stub", "SceIofilemgrForDriver_stub", "SceIofilemgr_stub", @@ -218,6 +219,8 @@ all-stubs = [ "SceSblAuthMgrForDriver_stub", "SceSblAuthMgrForKernel_stub", "SceSblFwLoaderForDriver_stub", + "SceSblGcAuthMgrDrmBBForDriver_stub", + "SceSblGcAuthMgrGcAuthForDriver_stub", "SceSblGcAuthMgr_stub", "SceSblPostSsMgrForDriver_stub", "SceSblPostSsMgr_stub", @@ -352,6 +355,7 @@ SceIftuForDriver_stub = [] SceIme_stub = [] SceIncomingDialog_stub = [] SceIntrmgrForDriver_stub = [] +SceIntrmgrForKernel_363_stub = [] SceIntrmgrForKernel_stub = [] SceIofilemgrForDriver_stub = [] SceIofilemgr_stub = [] @@ -455,6 +459,8 @@ SceSblAIMgrForDriver_stub = [] SceSblAuthMgrForDriver_stub = [] SceSblAuthMgrForKernel_stub = [] SceSblFwLoaderForDriver_stub = [] +SceSblGcAuthMgrDrmBBForDriver_stub = [] +SceSblGcAuthMgrGcAuthForDriver_stub = [] SceSblGcAuthMgr_stub = [] SceSblPostSsMgrForDriver_stub = [] SceSblPostSsMgr_stub = [] diff --git a/src/bindings.rs b/src/bindings.rs index 1690df1..85e0b31 100644 --- a/src/bindings.rs +++ b/src/bindings.rs @@ -1344,6 +1344,173 @@ pub struct SceExcpmgrExceptionContext { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsDateTime { + pub year: SceUInt16, + pub month: SceUInt16, + pub day: SceUInt16, + pub hour: SceUInt16, + pub minute: SceUInt16, + pub second: SceUInt16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsDrive { + pub state: SceUInt32, + pub unk_0x04: [crate::ctypes::c_int; 47usize], + pub assignName: *const crate::ctypes::c_char, + pub unk_0xC4: [crate::ctypes::c_int; 71usize], + pub fastmutex: SceKernelFastMutex, + pub VfsMount2: *mut SceVfsMount2, + pub vp: *mut crate::ctypes::c_void, + pub unk_0x228: *mut crate::ctypes::c_void, + pub unk_0x22C: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsFile { + pub fnode: *mut SceExfatfsFnode, + pub mode: crate::ctypes::c_int, + pub Position: SceOff, + pub Buf: *mut crate::ctypes::c_void, + pub BufTop: *mut crate::ctypes::c_void, + pub Cluster: SceUInt32, + pub clusterIndex: SceUInt32, + pub unk_0x20: crate::ctypes::c_int, + pub unk_0x24: crate::ctypes::c_int, + pub cacheIndex: SceUInt64, + pub unk_0x30: crate::ctypes::c_int, + pub unk_0x34: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsFileSystem { + pub devname: *const crate::ctypes::c_char, + pub unk_4: crate::ctypes::c_int, + pub unk_8: crate::ctypes::c_int, + pub rsvd_sector: crate::ctypes::c_int, + pub unk_10: crate::ctypes::c_int, + pub available_clusters: crate::ctypes::c_int, + pub PBRBuf: *mut crate::ctypes::c_void, + pub unk_1C: crate::ctypes::c_int, + pub unk_20: crate::ctypes::c_int, + pub unk_24: crate::ctypes::c_int, + pub unk_28: *mut crate::ctypes::c_void, + pub unk_2C: crate::ctypes::c_int, + pub unk_30: crate::ctypes::c_int, + pub unk_34: *mut crate::ctypes::c_void, + pub unk_38: *mut crate::ctypes::c_void, + pub unk_3C: crate::ctypes::c_int, + pub unk_40: crate::ctypes::c_int, + pub unk_44: crate::ctypes::c_int, + pub unk_48: crate::ctypes::c_int, + pub unk_4C: crate::ctypes::c_int, + pub unk_50: *mut crate::ctypes::c_void, + pub unk_54: *mut crate::ctypes::c_void, + pub unk_58: crate::ctypes::c_int, + pub unk_5C: crate::ctypes::c_int, + pub unk_60: crate::ctypes::c_int, + pub unk_64: crate::ctypes::c_int, + pub unk_68: crate::ctypes::c_int, + pub unk_6C: crate::ctypes::c_int, + pub unk_70: crate::ctypes::c_int, + pub unk_74: crate::ctypes::c_int, + pub unk_78: crate::ctypes::c_int, + pub unk_7C: crate::ctypes::c_int, + pub unk_80: crate::ctypes::c_int, + pub unk_84: crate::ctypes::c_int, + pub unk_88: crate::ctypes::c_int, + pub unk_8C: crate::ctypes::c_int, + pub unk_90: crate::ctypes::c_int, + pub unk_94: crate::ctypes::c_int, + pub unk_98: crate::ctypes::c_int, + pub unk_9C: crate::ctypes::c_int, + pub unk_A0: crate::ctypes::c_int, + pub unk_A4: crate::ctypes::c_int, + pub unk_A8: crate::ctypes::c_int, + pub drive: *mut SceExfatfsDrive, + pub mount_mode: SceUInt32, + pub unk_B4: crate::ctypes::c_int, + pub unk_B8: crate::ctypes::c_int, + pub sectorSize: SceSize, + pub clusterSectorCount: SceUInt32, + pub firstClusterOfRoot: SceUInt32, + pub devSectors: SceUInt32, + pub unk_CC: crate::ctypes::c_int, + pub data_0xD0: [crate::ctypes::c_char; 72usize], + pub file: SceExfatfsFile, + pub fnode: SceExfatfsFnode, + pub rootFastMutex: *mut SceKernelFastMutex, + pub unk_0x3E4: *mut crate::ctypes::c_void, + pub unk_0x3E8: SceUID, + pub unk_0x3EC: *mut crate::ctypes::c_void, + pub fastmutex: SceKernelFastMutex, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsFnode { + pub FilePath: [SceUInt16; 260usize], + pub FileName: *mut SceUInt16, + pub fileSystem: *mut _SceExfatfsFileSystem, + pub Stat: _SceExfatfsFnode__bindgen_ty_1, + pub DirCluster: SceUInt32, + pub data_0x254: crate::ctypes::c_int, + pub DirOffset: SceOff, + pub DirOffClust: SceUInt32, + pub data_0x264: crate::ctypes::c_int, + pub dirSize: SceSize, + pub dirGeneralSecondaryFlags: SceUInt8, + pub data_0x26D: SceUInt8, + pub data_0x26E: SceUInt8, + pub data_0x26F: SceUInt8, + pub refCount: SceUInt16, + pub fdCount: SceUInt16, + pub data_0x274: crate::ctypes::c_int, + pub cache_element_count: SceUInt32, + pub cluster_cache_array: *mut crate::ctypes::c_void, + pub tailCluster: SceUInt32, + pub tailIndex: SceUInt32, + pub clusterCount: SceUInt32, + pub chunkCount: SceUInt32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsFnode__bindgen_ty_1 { + pub st_mode: SceUInt16, + pub st_type: SceUInt16, + pub st_dev: SceUInt16, + pub st_uid: SceUInt16, + pub Size: SceOff, + pub ctime: SceExfatfsDateTime, + pub atime: SceExfatfsDateTime, + pub mtime: SceExfatfsDateTime, + pub StartCluster: SceUInt32, + pub data_0x248: SceUInt8, + pub data_0x249: SceUInt8, + pub data_0x24A: SceUInt8, + pub data_0x24B: SceUInt8, + pub data_0x24C: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SceExfatfsMbr { + pub data: [crate::ctypes::c_char; 512usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceExfatfsSharedResource { + pub fileSystem: [SceExfatfsFileSystem; 15usize], + pub mbr: [SceExfatfsMbr; 15usize], + pub data_0x5CD0: *mut crate::ctypes::c_void, + pub data_0x5CD4: crate::ctypes::c_int, + pub fnode: [SceExfatfsFnode; 4096usize], + pub data_0x295CD8: [crate::ctypes::c_int; 30usize], + pub data_0x295D50: crate::ctypes::c_int, + pub data_0x295D54: crate::ctypes::c_int, + pub data_0x295D58: crate::ctypes::c_int, + pub data_0x295D5C: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceFColor { pub r: SceFloat, pub g: SceFloat, @@ -3218,6 +3385,14 @@ pub struct SceKernelCallbackInfo { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct _SceKernelCompatibilityShimInfo { + pub title_id: *const crate::ctypes::c_char, + pub unk_04: SceUInt32, + pub library_shims_count: SceUInt32, + pub library_shims: *mut SceKernelLibraryShimInfo, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceKernelCondInfo { pub size: SceSize, pub condId: SceUID, @@ -3387,6 +3562,12 @@ pub struct SceKernelFreeMemorySizeInfo { pub size_phycont: crate::ctypes::c_int, } #[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceKernelFunctionShimInfo { + pub replaced_function_nid: SceNID, + pub replacing_function_nid: SceNID, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct SceKernelHeapCreateOpt { pub size: SceSize, @@ -3433,6 +3614,14 @@ pub struct SceKernelLibraryInfo { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct _SceKernelLibraryShimInfo { + pub library_name: *const crate::ctypes::c_char, + pub unk_04: SceUInt32, + pub function_shims_count: SceUInt32, + pub function_shims: *mut SceKernelFunctionShimInfo, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceKernelLMOption { pub size: SceSize, } @@ -3497,6 +3686,26 @@ pub struct SceKernelMemBlockInfo { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct SceKernelModuleExportEntry { + pub libnid: SceNID, + pub entry: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SceKernelModuleImportNonlinkedInfo { + pub size: SceSize, + pub modid: SceUID, + pub libnid: SceNID, + pub libname: [crate::ctypes::c_char; 256usize], + pub data_0x10C: crate::ctypes::c_int, + pub data_0x110: crate::ctypes::c_int, + pub data_0x114: crate::ctypes::c_int, + pub data_0x118: crate::ctypes::c_int, + pub data_0x11C: crate::ctypes::c_int, + pub data_0x120: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceKernelModuleInfo { pub size: SceSize, pub modid: SceUID, @@ -3835,6 +4044,11 @@ pub struct SceKernelThreadInfo { pub struct SceKernelThreadOptParam { pub size: SceSize, pub attr: SceUInt32, + pub kStackMemType: SceUInt32, + pub uStackMemType: SceUInt32, + pub uTLSMemType: SceUInt32, + pub uStackMemid: SceUInt32, + pub data_0x18: SceUInt32, } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -3878,6 +4092,21 @@ pub struct SceKernelVARange { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct SceLoadProcessParam { + pub sysver: SceUInt32, + pub thread_name: [crate::ctypes::c_char; 32usize], + pub initial_thread_priority: SceUInt32, + pub initial_thread_stack_size: SceSize, + pub unk_0x2C: SceUInt32, + pub unk_0x30: SceUInt32, + pub threadOptParam: SceKernelThreadOptParam, + pub unk_0x50: crate::ctypes::c_int, + pub process_name: [crate::ctypes::c_char; 32usize], + pub preload_disabled: SceUInt32, + pub module_proc_param: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceLocationHeadingInfo { pub trueHeading: SceFloat32, pub headingVectorX: SceFloat32, @@ -5093,6 +5322,87 @@ pub struct SceScreenShotParam { } #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct _SceSdstorFd { + pub fastmutex: SceKernelFastMutex, + pub unk_40: SceUInt32, + pub start_lba: SceUInt32, + pub n_sectors: SceUInt32, + pub flags: crate::ctypes::c_int, + pub pentry: *mut SceSdstorPartitionEntry, + pub sddev: *mut SceSdstorSddev, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceSdstorOpHandle { + pub pentry: *mut SceSdstorPartitionEntry, + pub sddev: *mut SceSdstorSddev, + pub unk_0x08: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceSdstorPartitionEntry { + pub start_lba: SceUInt32, + pub n_sectors: SceUInt32, + pub sdpart: *mut _SceSdstorSdpart, + pub partition_entry: *mut crate::ctypes::c_void, + pub numeric_name: [crate::ctypes::c_char; 4usize], + pub type_: SceUInt8, + pub flag: SceUInt8, + pub acl: SceUInt16, + pub unused: SceUInt16, + pub unk: SceUInt16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceSdstorSddev { + pub fastmutex: SceKernelFastMutex, + pub kind: SceUInt8, + pub port: SceSdstorSdpartPort, + pub stat: SceUInt8, + pub prev_stat: SceUInt8, + pub unk_44: SceUInt32, + pub unk_48: SceUInt32, + pub unk_4C: SceUInt32, + pub sdif_ctx: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceSdstorSdintr { + pub unk_0x00: crate::ctypes::c_int, + pub request_id: SceUID, + pub op_sync_id: SceUID, + pub unk_0x0C: crate::ctypes::c_int, + pub unk_0x10: crate::ctypes::c_int, + pub mediaid: [SceUInt32; 4usize], + pub port: SceSdstorSdpartPort, + pub stat: SceUInt8, + pub unk_0x26: SceUInt8, + pub unk_0x27: SceUInt8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SceSdstorSdpart { + pub fastmutex: SceKernelFastMutex, + pub unk_40: SceUInt32, + pub sddev: *mut SceSdstorSddev, + pub unk_48: SceUInt32, + pub unk_4C: SceUInt32, + pub unk_50: SceUInt32, + pub mbr_ptr: *mut crate::ctypes::c_void, + pub pentry: [SceSdstorPartitionEntry; 17usize], + pub stat: SceUInt8, + pub prev_stat: SceUInt8, + pub unk_236: SceUInt8, + pub unk_237: SceUInt8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SceSelfAppInfo { + pub vendor_id: crate::ctypes::c_int, + pub self_type: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct SceSelfAuthInfo { pub program_authority_id: SceUInt64, pub padding: [u8; 8usize], @@ -6157,6 +6467,11 @@ pub struct SceUsbdTransferStatus { pub unk3: u32, } #[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SceVfsMount2 { + pub _address: u8, +} +#[repr(C)] #[derive(Copy, Clone)] pub union SceVideodecQueryInitInfo { pub reserved: [u8; 32usize], @@ -7048,6 +7363,10 @@ pub const SCE_EXCP_RESET: SceExcpKind = 0; pub const SCE_EXCP_SVC: SceExcpKind = 2; pub const SCE_EXCP_UNDEF_INSTRUCTION: SceExcpKind = 1; pub const SCE_EXCP_UNUSED: SceExcpKind = 5; +pub const SCE_EXFATFS_MAX_FILE_SYSTEM: u32 = 15; +pub const SCE_EXFATFS_MAX_FNODE: u32 = 4096; +pub const SCE_EXFATFS_TYPE_EXFAT: u32 = 2; +pub const SCE_EXFATFS_TYPE_FAT: u32 = 1; pub const SCE_FALSE: _bindgen_ty_1 = 0; pub const SCE_FIBER_ERROR_AGAIN: SceFiberErrorCode = 2153316360; pub const SCE_FIBER_ERROR_ALIGNMENT: SceFiberErrorCode = 2153316354; @@ -7146,12 +7465,6 @@ pub const SCE_GUID_PHYMEM_PART_TOOL: _bindgen_ty_2 = 65553; pub const SCE_GUID_PROCESS_BUDGET_FULL_GAME: _bindgen_ty_2 = 65629; pub const SCE_GUID_PROCESS_BUDGET_KERNEL: _bindgen_ty_2 = 65625; pub const SCE_GUID_PROCESS_BUDGET_SHELL: _bindgen_ty_2 = 65627; -pub const SCE_GUID_RESERVED_29: _bindgen_ty_2 = 65577; -pub const SCE_GUID_RESERVED_2D: _bindgen_ty_2 = 65581; -pub const SCE_GUID_RESERVED_2F: _bindgen_ty_2 = 65583; -pub const SCE_GUID_RESERVED_31: _bindgen_ty_2 = 65585; -pub const SCE_GUID_RESERVED_49: _bindgen_ty_2 = 65609; -pub const SCE_GUID_RESERVED_5F: _bindgen_ty_2 = 65631; pub const SCE_GUID_SYSROOT: _bindgen_ty_2 = 65537; pub const SCE_GUID_THREAD_ID_PROCESS_ALL: _bindgen_ty_2 = 65575; pub const SCE_GUID_THREAD_ID_SYSTEM_ALL: _bindgen_ty_2 = 65573; @@ -8281,6 +8594,7 @@ pub const SCE_KERNEL_64MiB: u32 = 67108864; pub const SCE_KERNEL_8GiB: u64 = 8589934592; pub const SCE_KERNEL_8KiB: u32 = 8192; pub const SCE_KERNEL_8MiB: u32 = 8388608; +pub const SCE_KERNEL_ADDRESS_SPACE_ID: _bindgen_ty_2 = 65543; pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_ALLOW_PARTIAL_OP: SceKernelAllocMemBlockAttr = 67108864; pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_ALIGNMENT: SceKernelAllocMemBlockAttr = 4; pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_MIRROR_BLOCKID: SceKernelAllocMemBlockAttr = 64; @@ -8288,12 +8602,14 @@ pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR: SceKernelAllocMemBlockAttr = pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PADDR_LIST: SceKernelAllocMemBlockAttr = 4096; pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_HAS_PID: SceKernelAllocMemBlockAttr = 128; pub const SCE_KERNEL_ALLOC_MEMBLOCK_ATTR_PHYCONT: SceKernelAllocMemBlockAttr = 2097152; +pub const SCE_KERNEL_ALL_PROCESS_ID: _bindgen_ty_2 = 65569; pub const SCE_KERNEL_ASSERT_LEVEL_0: SceKernelAssertLevel = 0; pub const SCE_KERNEL_ASSERT_LEVEL_1: SceKernelAssertLevel = 1; pub const SCE_KERNEL_ASSERT_LEVEL_2: SceKernelAssertLevel = 2; pub const SCE_KERNEL_ATTR_OPENABLE: SceKernelWaitableAttribute = 128; pub const SCE_KERNEL_ATTR_THREAD_FIFO: SceKernelWaitableAttribute = 0; pub const SCE_KERNEL_ATTR_THREAD_PRIO: SceKernelWaitableAttribute = 8192; +pub const SCE_KERNEL_CLEANER_THREAD_ID: _bindgen_ty_2 = 65559; pub const SCE_KERNEL_CPU_MASK_SYSTEM: u32 = 524288; pub const SCE_KERNEL_CPU_MASK_USER_0: u32 = 65536; pub const SCE_KERNEL_CPU_MASK_USER_1: u32 = 131072; @@ -8373,6 +8689,8 @@ pub const SCE_KERNEL_DMA_OP_SYNC_WAIT: SceKernelDmaOpSyncMode = 2; pub const SCE_KERNEL_DMA_OP_VIRTUAL_ADDR: SceKernelDmaOpFlag = 17; pub const SCE_KERNEL_DMA_OP_VIRTUAL_DST_ADDR: SceKernelDmaOpFlag = 16; pub const SCE_KERNEL_DMA_OP_VIRTUAL_SRC_ADDR: SceKernelDmaOpFlag = 1; +pub const SCE_KERNEL_DUMMY_PROCESS_GAME_ID: _bindgen_ty_2 = 65555; +pub const SCE_KERNEL_DUMMY_PROCESS_SYSTEM_ID: _bindgen_ty_2 = 65557; pub const SCE_KERNEL_ERROR_ADDRESS_SPACE_CANNOT_FIND_PARTITION_BY_ADDR: SceKernelErrorCode = 2147633667; pub const SCE_KERNEL_ERROR_ALARM_CAN_NOT_CANCEL: SceKernelErrorCode = 2147647682; @@ -8689,8 +9007,25 @@ pub const SCE_KERNEL_ERROR_WAIT_DELETE_LW_MUTEX: SceKernelErrorCode = 2147647938 pub const SCE_KERNEL_ERROR_WAIT_DELETE_MUTEX: SceKernelErrorCode = 2147647906; pub const SCE_KERNEL_ERROR_WAIT_TIMEOUT: SceKernelErrorCode = 2147647493; pub const SCE_KERNEL_ERROR_WORK_QUEUE: SceKernelErrorCode = 2147648256; +pub const SCE_KERNEL_FIXED_HEAP_128B_ID: _bindgen_ty_2 = 65595; +pub const SCE_KERNEL_FIXED_HEAP_16B_ID: _bindgen_ty_2 = 65587; +pub const SCE_KERNEL_FIXED_HEAP_256B_ID: _bindgen_ty_2 = 65597; +pub const SCE_KERNEL_FIXED_HEAP_32B_ID: _bindgen_ty_2 = 65589; +pub const SCE_KERNEL_FIXED_HEAP_48B_ID: _bindgen_ty_2 = 65591; +pub const SCE_KERNEL_FIXED_HEAP_512B_ID: _bindgen_ty_2 = 65599; +pub const SCE_KERNEL_FIXED_HEAP_64B_ID: _bindgen_ty_2 = 65593; +pub const SCE_KERNEL_FIXED_HEAP_L2_OBJECT_ID: _bindgen_ty_2 = 65601; +pub const SCE_KERNEL_GLOBAL_WORK_QUEUE_ID: _bindgen_ty_2 = 65571; +pub const SCE_KERNEL_GUID_ENTRY_HEAP_ID: _bindgen_ty_2 = 65539; pub const SCE_KERNEL_HEAP_ATTR_HAS_AUTO_EXTEND: SceKernelHeapAttr = 1; pub const SCE_KERNEL_HEAP_ATTR_HAS_MEMORY_TYPE: SceKernelHeapAttr = 1024; +pub const SCE_KERNEL_HEAP_ID: _bindgen_ty_2 = 65547; +pub const SCE_KERNEL_HEAP_TOOL_ID: _bindgen_ty_2 = 65579; +pub const SCE_KERNEL_HEAP_UNCACHE_ID: _bindgen_ty_2 = 65549; +pub const SCE_KERNEL_IDLE_THREAD_0_ID: _bindgen_ty_2 = 65561; +pub const SCE_KERNEL_IDLE_THREAD_1_ID: _bindgen_ty_2 = 65563; +pub const SCE_KERNEL_IDLE_THREAD_2_ID: _bindgen_ty_2 = 65565; +pub const SCE_KERNEL_IDLE_THREAD_3_ID: _bindgen_ty_2 = 65567; pub const SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_L1WBWA_RW: u32 = 1077952518; pub const SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_CDRAM_RW: u32 = 1077968902; pub const SCE_KERNEL_MEMBLOCK_TYPE_KERNEL_IO_NC_R: u32 = 537952260; @@ -8807,6 +9142,19 @@ pub const SCE_KERNEL_MODULE_STATE_STARTED: SceKernelModuleState = 6; pub const SCE_KERNEL_MUTEX_ATTR_CEILING: SceKernelMutexAttribute = 4; pub const SCE_KERNEL_MUTEX_ATTR_RECURSIVE: SceKernelMutexAttribute = 2; pub const SCE_KERNEL_OK: SceKernelErrorCode = 0; +pub const SCE_KERNEL_PARTITION_CDRAM_ID: _bindgen_ty_2 = 65607; +pub const SCE_KERNEL_PARTITION_IO_ID: _bindgen_ty_2 = 65605; +pub const SCE_KERNEL_PARTITION_KMP_ID: _bindgen_ty_2 = 65615; +pub const SCE_KERNEL_PARTITION_ROOT_ID: _bindgen_ty_2 = 65545; +pub const SCE_KERNEL_PARTITION_ROOT_TOOL_ID: _bindgen_ty_2 = 65621; +pub const SCE_KERNEL_PARTITION_ROOT_TOOL_UNCACHE_ID: _bindgen_ty_2 = 65623; +pub const SCE_KERNEL_PARTITION_ROOT_UNCACHE_GPU_GAME_ID: _bindgen_ty_2 = 65617; +pub const SCE_KERNEL_PARTITION_ROOT_UNCACHE_ID: _bindgen_ty_2 = 65613; +pub const SCE_KERNEL_PARTITION_TMP_FS_GAME_ID: _bindgen_ty_2 = 65619; +pub const SCE_KERNEL_PARTITION_TMP_ID: _bindgen_ty_2 = 65611; +pub const SCE_KERNEL_PARTITION_USER_SHARED_ID: _bindgen_ty_2 = 65603; +pub const SCE_KERNEL_PHYMEMPART_ID: _bindgen_ty_2 = 65551; +pub const SCE_KERNEL_PHYMEMPART_TOOL_ID: _bindgen_ty_2 = 65553; pub const SCE_KERNEL_POWER_TICK_DEFAULT: SceKernelPowerTickType = 0; pub const __SCE_KERNEL_POWER_TICK_DISABLE: SceKernelPowerTickType = 4294967295; pub const SCE_KERNEL_POWER_TICK_DISABLE_AUTO_SUSPEND: SceKernelPowerTickType = 1; @@ -8822,6 +9170,10 @@ pub const SCE_KERNEL_PRELOAD_INHIBIT_LIBPVF: SceKernelPreloadInhibit = 16777216; pub const SCE_KERNEL_PRELOAD_INHIBIT_LIBSCEFT2: SceKernelPreloadInhibit = 8388608; pub const SCE_KERNEL_PRELOAD_INHIBIT_LIBSHELLSVC: SceKernelPreloadInhibit = 524288; pub const SCE_KERNEL_PRELOAD_INHIBIT_NONE: SceKernelPreloadInhibit = 0; +pub const SCE_KERNEL_PROCESS_BUDGET_FULL_GAME_ID: _bindgen_ty_2 = 65629; +pub const SCE_KERNEL_PROCESS_BUDGET_KERNEL_ID: _bindgen_ty_2 = 65625; +pub const SCE_KERNEL_PROCESS_BUDGET_SHELL_ID: _bindgen_ty_2 = 65627; +pub const SCE_KERNEL_PROCESS_ID: _bindgen_ty_2 = 65541; pub const SCE_KERNEL_PROCESS_ID_SELF: u32 = 0; pub const __SCE_KERNEL_PROCESS_PRIORITY_SYSTEM: SceKernelProcessPrioritySystem = 4294967295; pub const SCE_KERNEL_PROCESS_PRIORITY_SYSTEM_DEFAULT: SceKernelProcessPrioritySystem = 96; @@ -8831,6 +9183,12 @@ pub const __SCE_KERNEL_PROCESS_PRIORITY_USER: SceKernelProcessPriorityUser = 429 pub const SCE_KERNEL_PROCESS_PRIORITY_USER_DEFAULT: SceKernelProcessPriorityUser = 96; pub const SCE_KERNEL_PROCESS_PRIORITY_USER_HIGH: SceKernelProcessPriorityUser = 64; pub const SCE_KERNEL_PROCESS_PRIORITY_USER_LOW: SceKernelProcessPriorityUser = 127; +pub const SCE_KERNEL_RESERVED_GUID_29: _bindgen_ty_2 = 65577; +pub const SCE_KERNEL_RESERVED_GUID_2D: _bindgen_ty_2 = 65581; +pub const SCE_KERNEL_RESERVED_GUID_2F: _bindgen_ty_2 = 65583; +pub const SCE_KERNEL_RESERVED_GUID_31: _bindgen_ty_2 = 65585; +pub const SCE_KERNEL_RESERVED_GUID_49: _bindgen_ty_2 = 65609; +pub const SCE_KERNEL_RESERVED_GUID_5F: _bindgen_ty_2 = 65631; pub const SCE_KERNEL_START_FAILED: u32 = 2; pub const SCE_KERNEL_START_NO_RESIDENT: u32 = 1; pub const SCE_KERNEL_START_RESIDENT: u32 = 0; @@ -8838,11 +9196,14 @@ pub const SCE_KERNEL_START_SUCCESS: u32 = 0; pub const SCE_KERNEL_STOP_CANCEL: u32 = 1; pub const SCE_KERNEL_STOP_FAIL: u32 = 1; pub const SCE_KERNEL_STOP_SUCCESS: u32 = 0; +pub const SCE_KERNEL_SYSROOT_ID: _bindgen_ty_2 = 65537; pub const SCE_KERNEL_SYSROOT_SELF_INDEX_ENCDEC_W_PORTABILITY_SM: SceKernelSysrootSelfIndex = 2; pub const SCE_KERNEL_SYSROOT_SELF_INDEX_GCAUTHMGR_SM: SceKernelSysrootSelfIndex = 0; pub const SCE_KERNEL_SYSROOT_SELF_INDEX_RMAUTH_SM: SceKernelSysrootSelfIndex = 1; pub const SCE_KERNEL_THREAD_CPU_AFFINITY_MASK_DEFAULT: u32 = 0; +pub const SCE_KERNEL_THREAD_ID_PROCESS_ALL_ID: _bindgen_ty_2 = 65575; pub const SCE_KERNEL_THREAD_ID_SELF: u32 = 0; +pub const SCE_KERNEL_THREAD_ID_SYSTEM_ALL_ID: _bindgen_ty_2 = 65573; pub const SCE_KERNEL_TMID_Alarm: SceKernelIdListType = 10; pub const SCE_KERNEL_TMID_Callback: SceKernelIdListType = 8; pub const SCE_KERNEL_TMID_DelayThread: SceKernelIdListType = 65; @@ -9677,6 +10038,19 @@ pub const SCE_SCREENSHOT_MAX_GAME_TITLE_LEN: u32 = 64; pub const SCE_SCREENSHOT_MAX_GAME_TITLE_SIZE: u32 = 256; pub const SCE_SCREENSHOT_MAX_PHOTO_TITLE_LEN: u32 = 64; pub const SCE_SCREENSHOT_MAX_PHOTO_TITLE_SIZE: u32 = 256; +pub const SCE_SDSTOR_SDPART_KIND_GC: SceSdstorSdpartKind = 1; +pub const SCE_SDSTOR_SDPART_KIND_INVALID: SceSdstorSdpartKind = 0; +pub const SCE_SDSTOR_SDPART_KIND_RM: SceSdstorSdpartKind = 2; +pub const SCE_SDSTOR_SDPART_KIND_USD: SceSdstorSdpartKind = 3; +pub const SCE_SDSTOR_SDPART_PORT_EMMC: SceSdstorSdpartPort = 0; +pub const SCE_SDSTOR_SDPART_PORT_GC: SceSdstorSdpartPort = 1; +pub const SCE_SDSTOR_SDPART_PORT_PSUDO_MC: SceSdstorSdpartPort = 255; +pub const SCE_SDSTOR_SDPART_PORT_RM: SceSdstorSdpartPort = 2; +pub const SCE_SDSTOR_SDPART_PORT_UMA: SceSdstorSdpartPort = 3; +pub const SCE_SDSTOR_SDPART_PORT_USD: SceSdstorSdpartPort = 4; +pub const SCE_SDSTOR_SDPART_STAT_ACT: SceSdstorSdpartStat = 1; +pub const SCE_SDSTOR_SDPART_STAT_IGN: SceSdstorSdpartStat = 2; +pub const SCE_SDSTOR_SDPART_STAT_INA: SceSdstorSdpartStat = 0; pub const SCE_SEEK_CUR: SceIoSeekMode = 1; pub const SCE_SEEK_END: SceIoSeekMode = 2; pub const SCE_SEEK_SET: SceIoSeekMode = 0; @@ -11306,17 +11680,138 @@ extern "C" {} #[link(name = "SceCpuForDriver_stub", kind = "static")] #[cfg(feature = "SceCpuForDriver_stub")] extern "C" { - pub fn ksceKernelCpuDcacheAndL2InvalidateRange(ptr: *const crate::ctypes::c_void, len: SceSize); - pub fn ksceKernelCpuDcacheAndL2WritebackInvalidateRange( - ptr: *const crate::ctypes::c_void, - len: SceSize, + pub fn ksceKernelAtomicAddAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicAddAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicAddAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicAddAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicAddUnless16( + store: *mut SceInt16, + value: SceInt16, + cmpv: SceInt16, + ) -> SceBool; + pub fn ksceKernelAtomicAddUnless32( + store: *mut SceInt32, + value: SceInt32, + cmpv: SceInt32, + ) -> SceBool; + pub fn ksceKernelAtomicAddUnless64( + store: *mut SceInt64, + value: SceInt64, + cmpv: SceInt64, + ) -> SceBool; + pub fn ksceKernelAtomicAddUnless8( + store: *mut SceInt8, + value: SceInt8, + cmpv: SceInt8, + ) -> SceBool; + pub fn ksceKernelAtomicAndAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicAndAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicAndAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicAndAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicClearAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicClearAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicClearAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicClearAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicClearMask16(store: *mut SceInt16, value: SceInt16); + pub fn ksceKernelAtomicClearMask32(store: *mut SceInt32, value: SceInt32); + pub fn ksceKernelAtomicClearMask64(store: *mut SceInt64, value: SceInt64); + pub fn ksceKernelAtomicClearMask8(store: *mut SceInt8, value: SceInt8); + pub fn ksceKernelAtomicCompareAndSet16( + store: *mut SceInt16, + value: SceInt16, + new_value: SceInt16, + ) -> SceInt16; + pub fn ksceKernelAtomicCompareAndSet32( + store: *mut SceInt32, + value: SceInt32, + new_value: SceInt32, + ) -> SceInt32; + pub fn ksceKernelAtomicCompareAndSet64( + store: *mut SceInt64, + value: SceInt64, + new_value: SceInt64, + ) -> SceInt64; + pub fn ksceKernelAtomicCompareAndSet8( + store: *mut SceInt8, + value: SceInt8, + new_value: SceInt8, + ) -> SceInt8; + pub fn ksceKernelAtomicDecIfPositive16(store: *mut SceInt16) -> SceInt16; + pub fn ksceKernelAtomicDecIfPositive32(store: *mut SceInt32) -> SceInt32; + pub fn ksceKernelAtomicDecIfPositive64(store: *mut SceInt64) -> SceInt64; + pub fn ksceKernelAtomicDecIfPositive8(store: *mut SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndAdd16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndAdd32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndAdd64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndAdd8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndAnd16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndAnd32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndAnd64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndAnd8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndClear16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndClear32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndClear64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndClear8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndOr16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndOr32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndOr64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndOr8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndSet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndSet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndSet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndSet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndSub16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndSub32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndSub64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndSub8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicGetAndXor16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicGetAndXor32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGetAndXor64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicGetAndXor8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicOrAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicOrAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicOrAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicOrAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicSet16(store: *mut SceInt16, value: SceInt16); + pub fn ksceKernelAtomicSet32(store: *mut SceInt32, value: SceInt32); + pub fn ksceKernelAtomicSet64(store: *mut SceInt64, value: SceInt64); + pub fn ksceKernelAtomicSet8(store: *mut SceInt8, value: SceInt8); + pub fn ksceKernelAtomicSubAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicSubAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicSubAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicSubAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelAtomicXorAndGet16(store: *mut SceInt16, value: SceInt16) -> SceInt16; + pub fn ksceKernelAtomicXorAndGet32(store: *mut SceInt32, value: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicXorAndGet64(store: *mut SceInt64, value: SceInt64) -> SceInt64; + pub fn ksceKernelAtomicXorAndGet8(store: *mut SceInt8, value: SceInt8) -> SceInt8; + pub fn ksceKernelCpuId() -> crate::ctypes::c_int; + pub fn ksceKernelCpuResumeIntr(prev_state: SceKernelIntrStatus) -> SceKernelIntrStatus; + pub fn ksceKernelCpuSuspendIntr() -> SceKernelIntrStatus; + pub fn ksceKernelDcacheCleanInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelDcacheCleanInvalidateRangeForL1WBWA( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelDcacheCleanRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelDcacheCleanRangeForL1WBWA( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelDcacheInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelDcacheInvalidateRangeForL1WBWA( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, ); - pub fn ksceKernelCpuDcacheAndL2WritebackRange(ptr: *const crate::ctypes::c_void, len: SceSize); - pub fn ksceKernelCpuDcacheInvalidateRange(ptr: *const crate::ctypes::c_void, len: SceSize); - pub fn ksceKernelCpuDcacheWritebackRange(ptr: *const crate::ctypes::c_void, len: SceSize); - pub fn ksceKernelCpuDisableInterrupts() -> crate::ctypes::c_int; - pub fn ksceKernelCpuEnableInterrupts(flags: crate::ctypes::c_int); - pub fn ksceKernelCpuGetCpuId() -> crate::ctypes::c_int; + pub fn ksceKernelIsUncacheAddressInTmpFsGame(address: *mut crate::ctypes::c_void) -> SceBool; pub fn ksceKernelRWSpinlockLowReadLock(lock: *mut SceKernelRWSpinlock); pub fn ksceKernelRWSpinlockLowReadLockCpuSuspendIntr( lock: *mut SceKernelRWSpinlock, @@ -11351,8 +11846,8 @@ extern "C" { pub fn ksceKernelSpinlockLowLockCpuSuspendIntr( lock: *mut SceKernelSpinlock, ) -> SceKernelIntrStatus; - pub fn ksceKernelSpinlockLowTryLock(lock: *mut SceKernelSpinlock) -> crate::ctypes::c_int; - pub fn ksceKernelSpinlockLowTryLockCpuSuspendIntr( + pub fn ksceKernelSpinlockLowTrylock(lock: *mut SceKernelSpinlock) -> crate::ctypes::c_int; + pub fn ksceKernelSpinlockLowTrylockCpuSuspendIntr( lock: *mut SceKernelSpinlock, ) -> SceKernelIntrStatus; pub fn ksceKernelSpinlockLowUnlock(lock: *mut SceKernelSpinlock); @@ -11366,22 +11861,74 @@ extern "C" { extern "C" {} #[cfg(any(feature = "SceCpuForKernel_363_stub", feature = "SceCpuForKernel_stub"))] extern "C" { + pub fn ksceKernelAtomicAdd32AndGet64InHiLoRange( + val: *mut SceUInt64, + add_val: SceInt32, + limit: SceInt32, + ) -> SceInt32; + pub fn ksceKernelAtomicAdd32AndGet64InRange( + val: *mut SceUInt64, + add_val: SceInt32, + limit: SceInt32, + ) -> SceInt32; + pub fn ksceKernelAtomicAddAndGetPositive32InRange( + val: *mut SceInt32, + add_val: SceInt32, + limit: SceInt32, + ) -> SceInt32; + pub fn ksceKernelAtomicDecIfLowPositive32(addr: *mut SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGet32AndSet64(result: *mut SceUInt64, src: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicGet32AndSet64_2(result: *mut SceUInt64, src: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicIncrementHighwaterCounter(counter: *mut SceUInt32) -> SceUInt32; + pub fn ksceKernelAtomicLimit64(result: *mut SceUInt64, limit: SceInt32) -> SceInt32; + pub fn ksceKernelAtomicSubIfGreater64(a1: *mut SceUInt64, a2: SceUInt32) -> SceInt32; pub fn ksceKernelCorelockInitialize(ctx: *mut SceCorelockContext); pub fn ksceKernelCorelockLock(ctx: *mut SceCorelockContext, core: SceUInt32); pub fn ksceKernelCorelockUnlock(ctx: *mut SceCorelockContext); - pub fn ksceKernelCpuDcacheInvalidateAll(); - pub fn ksceKernelCpuDcacheWritebackAll(); - pub fn ksceKernelCpuDcacheWritebackInvalidateAll(); - pub fn ksceKernelCpuDcacheWritebackInvalidateRange( - ptr: *const crate::ctypes::c_void, - len: SceSize, + pub fn ksceKernelCpuBranchPredictorInvalidateAll(); + pub fn ksceKernelCpuBranchPredictorInvalidateAllIS(); + pub fn ksceKernelCpuGetCONTEXTIDR() -> SceUInt8; + pub fn ksceKernelCpuUpdateSCTLR(); + pub fn ksceKernelGetVmaccessRange(pRangeStart: *mut SceUIntPtr, pRangeEnd: *mut SceUIntPtr); + pub fn ksceKernelIcacheInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, ); - pub fn ksceKernelCpuIcacheAndL2WritebackInvalidateRange( - ptr: *const crate::ctypes::c_void, - len: SceSize, + pub fn ksceKernelL1DcacheClean(start: *mut crate::ctypes::c_void); + pub fn ksceKernelL1DcacheCleanAll(); + pub fn ksceKernelL1DcacheCleanInvalidate(start: *mut crate::ctypes::c_void); + pub fn ksceKernelL1DcacheCleanInvalidateAll(); + pub fn ksceKernelL1DcacheCleanInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelL1DcacheCleanRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelL1DcacheInvalidate(start: *mut crate::ctypes::c_void); + pub fn ksceKernelL1DcacheInvalidateAll(); + pub fn ksceKernelL1DcacheInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, + ); + pub fn ksceKernelL1IcacheInvalidateEntire(); + pub fn ksceKernelL1IcacheInvalidateEntireAllCore(); + pub fn ksceKernelL1IcacheInvalidateRange( + start: *mut crate::ctypes::c_void, + size: crate::ctypes::c_uint, ); - pub fn ksceKernelCpuIcacheInvalidateAll() -> crate::ctypes::c_int; - pub fn ksceKernelCpuIcacheInvalidateRange(ptr: *const crate::ctypes::c_void, len: SceSize); + pub fn ksceKernelMMUGetMemoryType(vaddr: *mut crate::ctypes::c_void) -> crate::ctypes::c_int; + pub fn ksceKernelMMUVAtoPA( + va: *mut crate::ctypes::c_void, + pa: *mut SceUIntPtr, + ) -> crate::ctypes::c_int; + pub fn ksceKernelMMUVAtoPAWithMode( + mode: crate::ctypes::c_int, + va: *mut crate::ctypes::c_void, + pa: *mut SceUIntPtr, + ) -> crate::ctypes::c_int; + pub fn ksceKernelPleFlushRequest(); } #[link(name = "SceCpuForKernel_stub", kind = "static")] #[cfg(feature = "SceCpuForKernel_stub")] @@ -11631,34 +12178,33 @@ extern "C" {} feature = "SceDebugForKernel_stub" ))] extern "C" { - pub fn ksceDebugDisableInfoDump(flag: crate::ctypes::c_int) -> crate::ctypes::c_int; - pub fn ksceDebugGetPutcharHandler() -> *mut crate::ctypes::c_void; - pub fn ksceDebugPutchar(character: crate::ctypes::c_int) -> crate::ctypes::c_int; - pub fn ksceDebugRegisterPutcharHandler( - func: ::core::option::Option< + pub fn ksceKernelDebugPutchar(character: crate::ctypes::c_int) -> crate::ctypes::c_int; + pub fn ksceKernelEnableCrashDump(enable: SceBool) -> crate::ctypes::c_int; + pub fn ksceKernelGetDebugPutcharHandler() -> *mut crate::ctypes::c_void; + pub fn ksceKernelRegisterDebugPutcharHandler( + handler: ::core::option::Option< unsafe extern "C" fn( - args: *mut crate::ctypes::c_void, + argp: *mut crate::ctypes::c_void, c: crate::ctypes::c_char, ) -> crate::ctypes::c_int, >, - args: *mut crate::ctypes::c_void, + argp: *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; - pub fn ksceDebugSetHandlers( - func: ::core::option::Option< + pub fn ksceKernelRegisterKprintfHandler( + handler: ::core::option::Option< unsafe extern "C" fn( unk: crate::ctypes::c_int, format: *const crate::ctypes::c_char, args: va_list, ) -> crate::ctypes::c_int, >, - args: *mut crate::ctypes::c_void, + argp: *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; + pub fn ksceKernelSetAssertLevel(level: SceUInt32) -> SceUInt32; } #[link(name = "SceDebugForKernel_stub", kind = "static")] #[cfg(feature = "SceDebugForKernel_stub")] -extern "C" { - pub fn ksceKernelSetMinimumAssertionLevel(level: crate::ctypes::c_int) -> crate::ctypes::c_int; -} +extern "C" {} #[link(name = "SceDebugLedForDriver_stub", kind = "static")] #[cfg(feature = "SceDebugLedForDriver_stub")] extern "C" { @@ -13480,6 +14026,20 @@ extern "C" { subintr_arg: *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; } +#[link(name = "SceIntrmgrForKernel_363_stub", kind = "static")] +#[cfg(feature = "SceIntrmgrForKernel_363_stub")] +extern "C" {} +#[cfg(any( + feature = "SceIntrmgrForKernel_363_stub", + feature = "SceIntrmgrForKernel_stub" +))] +extern "C" { + pub fn ksceKernelQueryIntrHandlerInfo( + intr_code: crate::ctypes::c_uint, + a2: crate::ctypes::c_uint, + a3: crate::ctypes::c_int, + ) -> crate::ctypes::c_int; +} #[link(name = "SceIntrmgrForKernel_stub", kind = "static")] #[cfg(feature = "SceIntrmgrForKernel_stub")] extern "C" {} @@ -14201,6 +14761,11 @@ extern "C" {} #[cfg(feature = "SceLibKernel_stub")] extern "C" { pub fn sceClibAbort(); + pub fn sceClibDprintf( + fd: SceUID, + fmt: *const crate::ctypes::c_char, + ... + ) -> crate::ctypes::c_int; pub fn sceClibLookCtypeTable(ch: crate::ctypes::c_char) -> crate::ctypes::c_char; pub fn sceClibMemchr( src: *const crate::ctypes::c_void, @@ -15007,60 +15572,73 @@ extern "C" {} feature = "SceModulemgrForKernel_stub" ))] extern "C" { - pub fn ksceKernelGetModuleInfo( + pub fn ksceKernelFinalizeKbl(); + pub fn ksceKernelGetExportedLibraryListInModule( pid: SceUID, modid: SceUID, - info: *mut SceKernelModuleInfo, + library_ids: *mut SceUID, + num: *mut SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelGetModuleList( + pub fn ksceKernelGetImportedLibraryListInModule( pid: SceUID, - flags1: crate::ctypes::c_int, - flags2: crate::ctypes::c_int, + modid: SceUID, + library_ids: *mut SceUID, + num: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetLibEntCBListForSyslibtrace( + ppList: *mut *mut crate::ctypes::c_void, + num: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetLibraryClientList( + pid: SceUID, + library_id: SceUID, modids: *mut SceUID, num: *mut SceSize, + cpy_skip_num: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelLoadModuleForPid( + pub fn ksceKernelGetLibraryDBFlags( pid: SceUID, - path: *const crate::ctypes::c_char, - flags: crate::ctypes::c_int, - option: *mut SceKernelLMOption, - ) -> SceUID; - pub fn ksceKernelMountBootfs( - bootImagePath: *const crate::ctypes::c_char, + pFlags: *mut crate::ctypes::c_int, ) -> crate::ctypes::c_int; - pub fn ksceKernelStartModuleForPid( + pub fn ksceKernelGetLibraryExportInfoForDebugger( pid: SceUID, - modid: SceUID, - args: SceSize, - argp: *mut crate::ctypes::c_void, - flags: crate::ctypes::c_int, - option: *mut SceKernelLMOption, - status: *mut crate::ctypes::c_int, + library_id: SceUID, + list: *mut SceKernelModuleExportEntry, + num: *mut SceSize, + cpy_skip_num: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelStopModuleForPid( + pub fn ksceKernelGetLibraryInfoForDebugger( + pid: SceUID, + library_id: SceUID, + info: *mut SceKernelModuleLibraryInfo, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetLibraryList( + pid: SceUID, + library_ids: *mut SceUID, + num: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetLostLibraryInfo( pid: SceUID, modid: SceUID, - args: SceSize, - argp: *mut crate::ctypes::c_void, - flags: crate::ctypes::c_int, - option: *mut SceKernelULMOption, - status: *mut crate::ctypes::c_int, + libnid: SceNID, + info: *mut SceKernelModuleImportNonlinkedInfo, ) -> crate::ctypes::c_int; - pub fn ksceKernelUmountBootfs() -> crate::ctypes::c_int; - pub fn ksceKernelUnloadModuleForPid( + pub fn ksceKernelGetLostLibraryList( + pid: SceUID, + a2: *mut crate::ctypes::c_void, + num: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetLostLibraryListInModule( pid: SceUID, modid: SceUID, - flags: crate::ctypes::c_int, - option: *mut SceKernelULMOption, + pList: *mut crate::ctypes::c_void, + num: *mut SceSize, ) -> crate::ctypes::c_int; -} -#[link(name = "SceModulemgrForKernel_stub", kind = "static")] -#[cfg(feature = "SceModulemgrForKernel_stub")] -extern "C" { - pub fn ksceKernelGetLibraryInfoForDebugger( + pub fn ksceKernelGetMetaDataForDebugger( pid: SceUID, - library_id: SceUID, - info: *mut SceKernelModuleLibraryInfo, + uModuleId: SceUID, + start: *mut *mut crate::ctypes::c_void, + stop: *mut *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; pub fn ksceKernelGetModuleCB( modid: SceUID, @@ -15071,11 +15649,21 @@ extern "C" { module_addr: *const crate::ctypes::c_void, info: *mut *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; + pub fn ksceKernelGetModuleEntryPoint(modid: SceUID) -> *mut crate::ctypes::c_void; + pub fn ksceKernelGetModuleFingerprint( + moduleId: SceUID, + pFingerprint: *mut SceUInt32, + ) -> crate::ctypes::c_int; pub fn ksceKernelGetModuleIdByAddrForDebugger( pid: SceUID, module_addr: *const crate::ctypes::c_void, ) -> SceUID; pub fn ksceKernelGetModuleIdByPid(pid: SceUID) -> SceUID; + pub fn ksceKernelGetModuleInfo( + pid: SceUID, + modid: SceUID, + info: *mut SceKernelModuleInfo, + ) -> crate::ctypes::c_int; pub fn ksceKernelGetModuleInfoForDebugger( pid: SceUID, infolists: *mut SceKernelModuleListInfo, @@ -15088,36 +15676,130 @@ extern "C" { program_text_addr: *mut *const crate::ctypes::c_void, module_name: *mut SceKernelModuleName, ) -> crate::ctypes::c_int; + pub fn ksceKernelGetModuleIsSharedByAddr( + pid: SceUID, + addr: *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetModuleList( + pid: SceUID, + flags1: crate::ctypes::c_int, + flags2: crate::ctypes::c_int, + modids: *mut SceUID, + num: *mut SceSize, + ) -> crate::ctypes::c_int; pub fn ksceKernelGetModulePath( modid: SceUID, path: *mut crate::ctypes::c_char, pathlen: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelRegisterModulesAfterBoot(); - pub fn ksceKernelRegisterSyscall(syscall_id: SceSize, func: *const crate::ctypes::c_void); -} -#[link(name = "SceMotionDevForDriver_stub", kind = "static")] -#[cfg(feature = "SceMotionDevForDriver_stub")] -extern "C" {} -#[link(name = "SceMotionDev_stub", kind = "static")] -#[cfg(feature = "SceMotionDev_stub")] -extern "C" { - pub fn sceMotionDevGetAccCalibData(data: *mut SceMotionDevAccCalibData) - -> crate::ctypes::c_int; - pub fn sceMotionDevGetAccCalibData2( - port: crate::ctypes::c_int, - data: *mut SceMotionDevAccCalibData, + pub fn ksceKernelGetProgramIdentificationInfo( + path: *const crate::ctypes::c_char, + pAuthid: *mut SceUInt64, + pInfo: *mut SceSelfAppInfo, ) -> crate::ctypes::c_int; - pub fn sceMotionDevGetCalibrationData( - block_id: SceUInt32, - data: *mut SceMotionDevCalibrationData, - data_num: SceUInt32, + pub fn ksceKernelGetStubInfoForDebugger( + pid: SceUID, + stubid: SceUID, + a3: *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; - pub fn sceMotionDevGetCalibrationHeader( - block_id: SceUInt32, - calib_header: *mut SceMotionDevCalibrationHeader, + pub fn ksceKernelGetStubList( + pid: SceUID, + stub: *mut SceUID, + num: *mut SceSize, ) -> crate::ctypes::c_int; - pub fn sceMotionDevGetCurrentMagnCalibData( + pub fn ksceKernelGetStubNidTableForDebugger( + pid: SceUID, + stubid: SceUID, + a3: *mut crate::ctypes::c_void, + num: *mut SceSize, + cpy_skip_num: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelLoadModuleForPid( + pid: SceUID, + path: *const crate::ctypes::c_char, + flags: crate::ctypes::c_int, + option: *mut SceKernelLMOption, + ) -> SceUID; + pub fn ksceKernelLoadPreloadingModules( + pid: SceUID, + pParam: *const SceLoadProcessParam, + flags: crate::ctypes::c_int, + ) -> crate::ctypes::c_int; + pub fn ksceKernelLoadProcessImage( + pid: SceUID, + path: *const crate::ctypes::c_char, + flags: crate::ctypes::c_int, + auth_info: *mut SceSelfAuthInfo, + param: *mut SceLoadProcessParam, + shim_info: *mut SceKernelCompatibilityShimInfo, + ) -> SceUID; + pub fn ksceKernelLoadPtLoadSegForFwloader( + path: *const crate::ctypes::c_char, + e_phnum: crate::ctypes::c_int, + buffer: *mut crate::ctypes::c_void, + bufsize: SceSize, + zero_unk: crate::ctypes::c_int, + bytes_read: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelModuleUnloadMySelf() -> crate::ctypes::c_int; + pub fn ksceKernelMountBootfs( + bootImagePath: *const crate::ctypes::c_char, + ) -> crate::ctypes::c_int; + pub fn ksceKernelRegisterModulesAfterBoot(); + pub fn ksceKernelRegisterSyscall(syscall_id: SceSize, func: *const crate::ctypes::c_void); + pub fn ksceKernelStartModuleForPid( + pid: SceUID, + modid: SceUID, + args: SceSize, + argp: *mut crate::ctypes::c_void, + flags: crate::ctypes::c_int, + option: *mut SceKernelLMOption, + status: *mut crate::ctypes::c_int, + ) -> crate::ctypes::c_int; + pub fn ksceKernelStartPreloadingModules(pid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelStopModuleForPid( + pid: SceUID, + modid: SceUID, + args: SceSize, + argp: *mut crate::ctypes::c_void, + flags: crate::ctypes::c_int, + option: *mut SceKernelULMOption, + status: *mut crate::ctypes::c_int, + ) -> crate::ctypes::c_int; + pub fn ksceKernelUmountBootfs() -> crate::ctypes::c_int; + pub fn ksceKernelUnloadModuleForPid( + pid: SceUID, + modid: SceUID, + flags: crate::ctypes::c_int, + option: *mut SceKernelULMOption, + ) -> crate::ctypes::c_int; + pub fn ksceKernelUnloadProcessModules(pid: SceUID) -> crate::ctypes::c_int; +} +#[link(name = "SceModulemgrForKernel_stub", kind = "static")] +#[cfg(feature = "SceModulemgrForKernel_stub")] +extern "C" {} +#[link(name = "SceMotionDevForDriver_stub", kind = "static")] +#[cfg(feature = "SceMotionDevForDriver_stub")] +extern "C" {} +#[link(name = "SceMotionDev_stub", kind = "static")] +#[cfg(feature = "SceMotionDev_stub")] +extern "C" { + pub fn sceMotionDevGetAccCalibData(data: *mut SceMotionDevAccCalibData) + -> crate::ctypes::c_int; + pub fn sceMotionDevGetAccCalibData2( + port: crate::ctypes::c_int, + data: *mut SceMotionDevAccCalibData, + ) -> crate::ctypes::c_int; + pub fn sceMotionDevGetCalibrationData( + block_id: SceUInt32, + data: *mut SceMotionDevCalibrationData, + data_num: SceUInt32, + ) -> crate::ctypes::c_int; + pub fn sceMotionDevGetCalibrationHeader( + block_id: SceUInt32, + calib_header: *mut SceMotionDevCalibrationHeader, + ) -> crate::ctypes::c_int; + pub fn sceMotionDevGetCurrentMagnCalibData( data: *mut SceMotionDevMagnCalibData, ) -> crate::ctypes::c_int; pub fn sceMotionDevGetCurrentMagnStabilityLevel(level: *mut SceUInt32) -> crate::ctypes::c_int; @@ -16601,11 +17283,6 @@ extern "C" {} feature = "SceProcessmgrForKernel_363_stub", feature = "SceProcessmgrForKernel_stub" ))] -extern "C" { - pub fn ksceKernelGetProcessKernelBuf(pid: SceUID) -> *mut crate::ctypes::c_void; -} -#[link(name = "SceProcessmgrForKernel_stub", kind = "static")] -#[cfg(feature = "SceProcessmgrForKernel_stub")] extern "C" { pub fn ksceKernelCreateProcess( titleid: *const crate::ctypes::c_char, @@ -16613,18 +17290,29 @@ extern "C" { path: *const crate::ctypes::c_char, opt: *mut crate::ctypes::c_void, ) -> SceUID; + pub fn ksceKernelExitProcess(status: crate::ctypes::c_int) -> crate::ctypes::c_int; + pub fn ksceKernelGetProcessKernelBuf(pid: SceUID) -> *mut crate::ctypes::c_void; pub fn ksceKernelGetProcessMainThread(pid: SceUID) -> SceUID; pub fn ksceKernelGetProcessModuleInfo(pid: SceUID) -> ScePVoid; pub fn ksceKernelGetProcessSelfAuthInfo( pid: SceUID, self_auth_info: *mut SceSelfAuthInfo, ) -> crate::ctypes::c_int; + pub fn ksceKernelGetUIDProcessClass() -> *mut SceClass; + pub fn ksceKernelLibcGettimeofday( + tv: *mut SceKernelTimeval, + tz: *mut SceKernelTimezone, + ) -> crate::ctypes::c_int; + pub fn ksceKernelLibcTime(tloc: *mut SceKernelTime) -> SceKernelTime; pub fn ksceKernelResumeProcess(pid: SceUID) -> crate::ctypes::c_int; pub fn ksceKernelSuspendProcess( pid: SceUID, status: crate::ctypes::c_int, ) -> crate::ctypes::c_int; } +#[link(name = "SceProcessmgrForKernel_stub", kind = "static")] +#[cfg(feature = "SceProcessmgrForKernel_stub")] +extern "C" {} #[link(name = "SceProcessmgr_stub", kind = "static")] #[cfg(feature = "SceProcessmgr_stub")] extern "C" { @@ -17362,6 +18050,19 @@ extern "C" { #[link(name = "SceSblFwLoaderForDriver_stub", kind = "static")] #[cfg(feature = "SceSblFwLoaderForDriver_stub")] extern "C" {} +#[link(name = "SceSblGcAuthMgrDrmBBForDriver_stub", kind = "static")] +#[cfg(feature = "SceSblGcAuthMgrDrmBBForDriver_stub")] +extern "C" { + pub fn ksceSblGcAuthMgrDrmBBClearCartSecret() -> crate::ctypes::c_int; + pub fn ksceSblGcAuthMgrDrmBBGetCartSecret( + secret: *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; +} +#[link(name = "SceSblGcAuthMgrGcAuthForDriver_stub", kind = "static")] +#[cfg(feature = "SceSblGcAuthMgrGcAuthForDriver_stub")] +extern "C" { + pub fn ksceSblGcAuthMgrGcAuthCartAuthentication(key_id: SceUInt32) -> crate::ctypes::c_int; +} #[link(name = "SceSblGcAuthMgr_stub", kind = "static")] #[cfg(feature = "SceSblGcAuthMgr_stub")] extern "C" {} @@ -17772,13 +18473,38 @@ extern "C" { size: SceSize, opt: *mut SceKernelAllocMemBlockKernelOpt, ) -> SceUID; - pub fn ksceKernelCreateClass( - cls: *mut SceClass, - name: *const crate::ctypes::c_char, - uidclass: *mut crate::ctypes::c_void, - itemsize: SceSize, - create: SceClassCallback, - destroy: SceClassCallback, + pub fn ksceKernelCopyFromToUser( + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelCopyFromToUserProc( + pid: SceUID, + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelCopyFromUser( + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelCopyFromUserProc( + pid: SceUID, + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelCopyToUser( + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelCopyToUserProc( + pid: SceUID, + dst: *mut crate::ctypes::c_void, + src: *const crate::ctypes::c_void, + len: SceSize, ) -> crate::ctypes::c_int; pub fn ksceKernelCreateHeap( name: *const crate::ctypes::c_char, @@ -17790,7 +18516,7 @@ extern "C" { addr: *const crate::ctypes::c_void, size: SceSize, ) -> SceUID; - pub fn ksceKernelFindMemBlockByAddrForPid( + pub fn ksceKernelFindProcMemBlockByAddr( pid: SceUID, addr: *const crate::ctypes::c_void, size: SceSize, @@ -17808,90 +18534,26 @@ extern "C" { uid: SceUID, base: *mut *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; - pub fn ksceKernelGetPidContext( - pid: SceUID, - ctx: *mut *mut SceKernelProcessContext, - ) -> crate::ctypes::c_int; - pub fn ksceKernelGetUidClass() -> *mut SceClass; - pub fn ksceKernelMapBlockUserVisible(uid: SceUID) -> crate::ctypes::c_int; - pub fn ksceKernelMapUserBlock( - name: *const crate::ctypes::c_char, - permission: crate::ctypes::c_int, - type_: crate::ctypes::c_int, - user_buf: *const crate::ctypes::c_void, - size: SceSize, - kernel_page: *mut *mut crate::ctypes::c_void, - kernel_size: *mut SceSize, - kernel_offset: *mut crate::ctypes::c_uint, - ) -> SceUID; - pub fn ksceKernelMemBlockRelease(uid: SceUID) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeRelease( - addr: *mut crate::ctypes::c_void, - size: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeReleaseForPid( - pid: SceUID, + pub fn ksceKernelGetUIDClass() -> *mut SceClass; + pub fn ksceKernelLockRange( addr: *mut crate::ctypes::c_void, size: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeReleaseWithPerm( - perm: SceKernelMemoryRefPerm, - addr: *mut crate::ctypes::c_void, - size: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeRetain( - addr: *mut crate::ctypes::c_void, - size: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeRetainForPid( + pub fn ksceKernelLockRangeProc( pid: SceUID, addr: *mut crate::ctypes::c_void, size: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelMemRangeRetainWithPerm( + pub fn ksceKernelLockRangeWithMode( perm: SceKernelMemoryRefPerm, addr: *mut crate::ctypes::c_void, size: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelMemcpyFromUser( - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelMemcpyToUser( - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelProcMemcpyFromUser( - pid: SceUID, - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelProcMemcpyToUser( - pid: SceUID, - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, + pub fn ksceKernelMapMemBlock(uid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelMapMemBlockWithFlag( + uid: SceUID, + flag: crate::ctypes::c_int, ) -> crate::ctypes::c_int; - pub fn ksceKernelProcStrncpyFromUser( - pid: SceUID, - dst: *mut crate::ctypes::c_char, - src: *const crate::ctypes::c_char, - len: SceSize, - ) -> SceSSize; - pub fn ksceKernelProcStrncpyToUser( - pid: SceUID, - dst: *mut crate::ctypes::c_char, - src: *const crate::ctypes::c_char, - len: SceSize, - ) -> SceSSize; - pub fn ksceKernelProcStrnlenUser( - pid: SceUID, - s: *const crate::ctypes::c_char, - n: SceSize, - ) -> SceSSize; pub fn ksceKernelProcUserMap( pid: SceUID, name: *const crate::ctypes::c_char, @@ -17902,12 +18564,6 @@ extern "C" { kernel_size: *mut SceSize, kernel_offset: *mut SceUInt32, ) -> SceUID; - pub fn ksceKernelProcUserMemcpy( - pid: SceUID, - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, - ) -> crate::ctypes::c_int; pub fn ksceKernelProcessGetContext( pid: SceUID, ctx: *mut *mut SceKernelProcessContext, @@ -17916,19 +18572,53 @@ extern "C" { new_context: *const SceKernelProcessContext, prev_context: *mut SceKernelProcessContext, ) -> crate::ctypes::c_int; - pub fn ksceKernelRemapBlock(uid: SceUID, type_: SceKernelMemBlockType) -> crate::ctypes::c_int; + pub fn ksceKernelRemapMemBlock( + uid: SceUID, + type_: SceKernelMemBlockType, + ) -> crate::ctypes::c_int; pub fn ksceKernelStrncpyFromUser( dst: *mut crate::ctypes::c_char, src: *const crate::ctypes::c_char, len: SceSize, ) -> SceSSize; + pub fn ksceKernelStrncpyFromUserProc( + pid: SceUID, + dst: *mut crate::ctypes::c_char, + src: *const crate::ctypes::c_char, + len: SceSize, + ) -> SceSSize; pub fn ksceKernelStrncpyToUser( dst: *mut crate::ctypes::c_char, src: *const crate::ctypes::c_char, len: SceSize, ) -> SceSSize; - pub fn ksceKernelStrnlenUser(s: *const crate::ctypes::c_char, n: SceSize) -> SceSize; - pub fn ksceKernelSwitchVmaForPid(pid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelStrncpyToUserProc( + pid: SceUID, + dst: *mut crate::ctypes::c_char, + src: *const crate::ctypes::c_char, + len: SceSize, + ) -> SceSSize; + pub fn ksceKernelStrnlenFromUser(s: *const crate::ctypes::c_char, n: SceSize) -> SceSize; + pub fn ksceKernelStrnlenFromUserProc( + pid: SceUID, + s: *const crate::ctypes::c_char, + n: SceSize, + ) -> SceSSize; + pub fn ksceKernelUnlockRange( + addr: *mut crate::ctypes::c_void, + size: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelUnlockRangeProc( + pid: SceUID, + addr: *mut crate::ctypes::c_void, + size: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelUnlockRangeWithMode( + perm: SceKernelMemoryRefPerm, + addr: *mut crate::ctypes::c_void, + size: SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceKernelUnmapMemBlock(uid: SceUID) -> crate::ctypes::c_int; pub fn ksceKernelUserMap( name: *const crate::ctypes::c_char, permission: crate::ctypes::c_int, @@ -17938,10 +18628,20 @@ extern "C" { kernel_size: *mut SceSize, kernel_offset: *mut SceUInt32, ) -> SceUID; - pub fn ksceKernelUserMemcpy( - dst: *mut crate::ctypes::c_void, - src: *const crate::ctypes::c_void, - len: SceSize, + pub fn ksceKernelUserMapWithFlags( + name: *const crate::ctypes::c_char, + permission: crate::ctypes::c_int, + flags: crate::ctypes::c_int, + user_buf: *const crate::ctypes::c_void, + size: SceSize, + kernel_page: *mut *mut crate::ctypes::c_void, + kernel_size: *mut SceSize, + kernel_offset: *mut crate::ctypes::c_uint, + ) -> SceUID; + pub fn ksceKernelUserUnmap(uid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelVARangeToPARange( + va_range: *const SceKernelVARange, + pa_range: *mut SceKernelPARange, ) -> crate::ctypes::c_int; pub fn ksceKernelVARangeToPAVector( va_range: *const SceKernelVARange, @@ -17954,6 +18654,14 @@ extern "C" { pub fn kscePUIDClose(pid: SceUID, puid: SceUID) -> crate::ctypes::c_int; pub fn kscePUIDOpenByGUID(pid: SceUID, guid: SceUID) -> SceUID; pub fn kscePUIDtoGUID(pid: SceUID, puid: SceUID) -> SceUID; + pub fn ksceUIDClassInitClass( + cls: *mut SceClass, + name: *const crate::ctypes::c_char, + uidclass: *mut crate::ctypes::c_void, + itemsize: SceSize, + create: SceClassCallback, + destroy: SceClassCallback, + ) -> crate::ctypes::c_int; } #[link(name = "SceSysmemForKernel_363_stub", kind = "static")] #[cfg(feature = "SceSysmemForKernel_363_stub")] @@ -17963,53 +18671,116 @@ extern "C" {} feature = "SceSysmemForKernel_stub" ))] extern "C" { + pub fn ksceGUIDGetObjectWithClass( + uid: SceUID, + pClass: *mut SceClass, + obj: *mut *mut SceObjectBase, + ) -> crate::ctypes::c_int; + pub fn ksceGUIDGetUIDVectorByClass( + cls: *mut SceClass, + vis_level: crate::ctypes::c_int, + vector: *mut SceUID, + num: SceSize, + ret_num: *mut SceSize, + ) -> crate::ctypes::c_int; + pub fn ksceGUIDKernelCreateWithAttr( + pClass: *mut SceClass, + name: *const crate::ctypes::c_char, + attr: SceUInt32, + ppEntry: *mut *mut SceObjectBase, + ) -> crate::ctypes::c_int; pub fn ksceGUIDKernelCreateWithOpt( sce_class: *mut SceClass, name: *const crate::ctypes::c_char, opt: *mut SceGUIDKernelCreateOpt, obj: *mut *mut SceObjectBase, ) -> SceUID; - pub fn ksceKernelFindClassByName( - name: *const crate::ctypes::c_char, - cls: *mut *mut SceClass, + pub fn ksceGUIDOpenByGUID(guid: SceUID) -> SceUID; + pub fn ksceKernelAddressSpaceFreeAllMemBlock(guid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelAddressSpaceSetPhyMemPart( + guid: SceUID, + index: SceUInt32, + pPhyMemPart: *mut crate::ctypes::c_void, ) -> crate::ctypes::c_int; - pub fn ksceKernelGetMemBlockType( + pub fn ksceKernelAddressSpaceUnmap( uid: SceUID, - type_: *mut crate::ctypes::c_uint, + a2: crate::ctypes::c_int, + a3: crate::ctypes::c_int, + addr: *mut crate::ctypes::c_void, + size: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelProcMemcpyToUserRx( - pid: SceUID, + pub fn ksceKernelAddressSpaceVAtoPA( + pAS: *mut crate::ctypes::c_void, + mode: SceUInt32, + pVA: *mut crate::ctypes::c_void, + pPA: *mut *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; + pub fn ksceKernelAlloc(size: crate::ctypes::c_uint) -> *mut crate::ctypes::c_void; + pub fn ksceKernelAllocPartitionMemBlock( + part: SceUID, + name: *const crate::ctypes::c_char, + type_: SceKernelMemBlockType, + size: SceSize, + pOpt: *const SceKernelAllocMemBlockOptKernel, + ) -> SceUID; + pub fn ksceKernelCopyToUserDomain( dst: *mut crate::ctypes::c_void, src: *const crate::ctypes::c_void, len: SceSize, ) -> crate::ctypes::c_int; -} -#[link(name = "SceSysmemForKernel_stub", kind = "static")] -#[cfg(feature = "SceSysmemForKernel_stub")] -extern "C" { - pub fn ksceGUIDGetUIDVectorByClass( - cls: *mut SceClass, - vis_level: crate::ctypes::c_int, - vector: *mut SceUID, - num: SceSize, - ret_num: *mut SceSize, - ) -> crate::ctypes::c_int; - pub fn ksceKernelAlloc(size: crate::ctypes::c_uint) -> *mut crate::ctypes::c_void; - pub fn ksceKernelFree(ptr: *mut crate::ctypes::c_void) -> crate::ctypes::c_int; - pub fn ksceKernelGetUidDLinkClass() -> *mut SceClass; - pub fn ksceKernelGetUidHeapClass() -> *mut SceClass; - pub fn ksceKernelGetUidMemBlockClass() -> *mut SceClass; - pub fn ksceKernelMemcpyToUserRo( + pub fn ksceKernelCopyToUserProcTextDomain( + pid: SceUID, dst: *mut crate::ctypes::c_void, src: *const crate::ctypes::c_void, len: SceSize, ) -> crate::ctypes::c_int; - pub fn ksceKernelMemcpyToUserRx( + pub fn ksceKernelCopyToUserTextDomain( dst: *mut crate::ctypes::c_void, src: *const crate::ctypes::c_void, len: SceSize, ) -> crate::ctypes::c_int; + pub fn ksceKernelCreateAddressSpace( + pid: SceUID, + name: *const crate::ctypes::c_char, + type_: SceUInt32, + pOpt: *mut crate::ctypes::c_void, + ) -> SceUID; + pub fn ksceKernelDeleteAddressSpace(guid: SceUID) -> crate::ctypes::c_int; + pub fn ksceKernelFindClassByName( + name: *const crate::ctypes::c_char, + cls: *mut *mut SceClass, + ) -> crate::ctypes::c_int; + pub fn ksceKernelFree(ptr: *mut crate::ctypes::c_void) -> crate::ctypes::c_int; + pub fn ksceKernelFreeSimpleMemBlock(a1: *mut crate::ctypes::c_void) -> crate::ctypes::c_int; + pub fn ksceKernelGetFixedHeapInfoByPointer( + pFixedHeap: *mut crate::ctypes::c_void, + pInfo: *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetHeapInfo( + heapid: SceUID, + level: SceUInt32, + pInfo: *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetHeapInfoByPtr( + pObject: *mut crate::ctypes::c_void, + pInfo: *mut crate::ctypes::c_void, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetMemBlockType( + uid: SceUID, + type_: *mut crate::ctypes::c_uint, + ) -> crate::ctypes::c_int; + pub fn ksceKernelGetUIDDLinkClass() -> *mut SceClass; + pub fn ksceKernelGetUIDHeapClass() -> *mut SceClass; + pub fn ksceKernelGetUIDMemBlockClass() -> *mut SceClass; + pub fn ksceKernelNameHeapGetInfo(pInfo: *mut crate::ctypes::c_void) -> crate::ctypes::c_int; + pub fn ksceKernelUIDEntryHeapGetInfo( + entryHeapId: SceUID, + pInfo: *mut crate::ctypes::c_void, + ) -> SceInt32; } +#[link(name = "SceSysmemForKernel_stub", kind = "static")] +#[cfg(feature = "SceSysmemForKernel_stub")] +extern "C" {} #[link(name = "SceSysmem_stub", kind = "static")] #[cfg(feature = "SceSysmem_stub")] extern "C" { @@ -19288,6 +20059,12 @@ pub type SceExcpKind = crate::ctypes::c_uint; pub type SceExcpmgrExceptionHandler = ::core::option::Option< unsafe extern "C" fn(context: *mut SceExcpmgrExceptionContext, code: SceExcpHandlingCode), >; +pub type SceExfatfsDateTime = _SceExfatfsDateTime; +pub type SceExfatfsDrive = _SceExfatfsDrive; +pub type SceExfatfsFile = _SceExfatfsFile; +pub type SceExfatfsFileSystem = _SceExfatfsFileSystem; +pub type SceExfatfsFnode = _SceExfatfsFnode; +pub type SceExfatfsSharedResource = _SceExfatfsSharedResource; pub type SceFiberEntry = ::core::option::Option; pub type SceFiberErrorCode = crate::ctypes::c_uint; @@ -19518,6 +20295,7 @@ pub type SceJpegEncoderHeaderMode = crate::ctypes::c_uint; pub type SceJpegEncoderInitParamOption = crate::ctypes::c_uint; pub type SceJpegEncoderPixelFormat = crate::ctypes::c_uint; pub type SceKernelAllocMemBlockAttr = crate::ctypes::c_uint; +pub type SceKernelAllocMemBlockOptKernel = SceKernelAllocMemBlockKernelOpt; pub type SceKernelAssertLevel = crate::ctypes::c_uint; pub type SceKernelCallbackFunction = ::core::option::Option< unsafe extern "C" fn( @@ -19528,6 +20306,7 @@ pub type SceKernelCallbackFunction = ::core::option::Option< ) -> crate::ctypes::c_int, >; pub type SceKernelClock = SceUInt64; +pub type SceKernelCompatibilityShimInfo = _SceKernelCompatibilityShimInfo; pub type SceKernelCoredumpStateFinishCallback = ::core::option::Option< unsafe extern "C" fn( task_id: crate::ctypes::c_int, @@ -19569,6 +20348,7 @@ pub type SceKernelDmaOpFlag = crate::ctypes::c_uint; pub type SceKernelDmaOpId = SceInt32; pub type SceKernelDmaOpSyncMode = crate::ctypes::c_uint; pub type SceKernelErrorCode = crate::ctypes::c_uint; +pub type SceKernelFunctionShimInfo = _SceKernelFunctionShimInfo; pub type SceKernelFwInfo = SceKernelSystemSwVersion; pub type SceKernelGetSystemSwVersionFunc = ::core::option::Option crate::ctypes::c_int>; @@ -19602,6 +20382,7 @@ pub type SceKernelIntrOptHandlersCb3 = ::core::option::Option< ) -> crate::ctypes::c_int, >; pub type SceKernelIntrStatus = crate::ctypes::c_int; +pub type SceKernelLibraryShimInfo = _SceKernelLibraryShimInfo; pub type SceKernelMemBlockType = SceUInt32; pub type SceKernelMemoryAccessType = crate::ctypes::c_uint; pub type SceKernelMemoryRefPerm = crate::ctypes::c_uint; @@ -19838,6 +20619,15 @@ pub type SceSblSmCommId = crate::ctypes::c_int; pub type SceSByte = crate::ctypes::c_schar; pub type SceSByte8 = crate::ctypes::c_schar; pub type SceScreenshotErrorCode = crate::ctypes::c_uint; +pub type SceSdstorFd = _SceSdstorFd; +pub type SceSdstorOpHandle = _SceSdstorOpHandle; +pub type SceSdstorPartitionEntry = _SceSdstorPartitionEntry; +pub type SceSdstorSddev = _SceSdstorSddev; +pub type SceSdstorSdintr = _SceSdstorSdintr; +pub type SceSdstorSdpart = _SceSdstorSdpart; +pub type SceSdstorSdpartKind = crate::ctypes::c_uint; +pub type SceSdstorSdpartPort = crate::ctypes::c_uint; +pub type SceSdstorSdpartStat = crate::ctypes::c_uint; pub type SceShaccCgCallbackAbsolutePath = ::core::option::Option< unsafe extern "C" fn( fileName: *const crate::ctypes::c_char, diff --git a/vita-headers b/vita-headers index 0653295..96b8721 160000 --- a/vita-headers +++ b/vita-headers @@ -1 +1 @@ -Subproject commit 06532950349fb4290002cb8ca43cfa1585d2f76d +Subproject commit 96b8721d90b2d3e0422b13129d33b46c9bfd812d