Line 116:
Line 116:
* in 1: u16 - PID
* in 1: u16 - PID
* in 2: u8 - If falsy, return immediately if the device is already plugged in
* in 2: u8 - If falsy, return immediately if the device is already plugged in
−
* io 0: u32 - Unknown; some sort of ID? If the ioctlv returned immediately, this is unchanged; otherwise this seems to contain random bytes.
+
* io 0: u32 - Overwritten with an ID to use with ioctl 31 for cancelling this insertion hook
|-
|-
Line 122:
Line 122:
| Internal names: IUSB_CancelInsertionNotify / __ohciCancelNotifyInsertion
| Internal names: IUSB_CancelInsertionNotify / __ohciCancelNotifyInsertion
−
Cancels a device insertion hook (the hook request will be replied to with return value -7022). The input buffer is probably used to specify the VID/PID. {{check}}
+
Cancels a device insertion hook (the hook request will be replied to with return value -7022). The input buffer is the ID given in the unique output vector of ioctlv 30.
Returns IPC_EINVAL if input buffer was nullptr. Otherwise, IPC_SUCCESS is returned if there was no hook;
Returns IPC_EINVAL if input buffer was nullptr. Otherwise, IPC_SUCCESS is returned if there was no hook;
−
if there was a pending hook, the return value of <code>IOS_ResourceReply(pending_hook, -7022)</code> is used.
+
if there was a pending hook, the return value of <code>IOS_ResourceReply(ioctlv_30_request, -7022)</code> is used.
|}
|}