Line 5:
Line 5:
===IPC===
===IPC===
−
PowerPC code is able to call IOSU drivers through an IPC interface. It uses the same call interface as IOSU does internally. Userspace code submits IOSU requests with the IPCKDriver_SubmitRequest() syscall in the Cafe OS kernel. The kernel includes information to identify which Cafe OS process sent the request, allowing IOSU to check permissions on a per-app basis. Requests are contained in a struct, sent to a memory area, and marshalled by a special IOSU process that makes syscalls on behalf of the PowerPC.
+
PowerPC code is able to call IOSU drivers through an IPC interface. It uses the same call interface as IOSU does internally. Userspace code submits IOSU requests with the IPCKDriver_SubmitRequest() [[Cafe_OS_Kernel_Syscalls|syscall]] in the Cafe OS kernel. The kernel includes information to identify which Cafe OS process sent the request, allowing IOSU to check permissions on a per-app basis. Requests are contained in a struct, sent to a memory area, and marshalled by a special IOSU process that makes syscalls on behalf of the PowerPC.
ipc struct size = 0x48, aligned to 0x20
ipc struct size = 0x48, aligned to 0x20