Line 92:
Line 92:
If it does, IPC_SUCCESS is returned, change callbacks are triggered and /dev/usb/usb ioctl 1 is issued.
If it does, IPC_SUCCESS is returned, change callbacks are triggered and /dev/usb/usb ioctl 1 is issued.
|-
|-
β
| 7 || SetAlternateSetting || 0x20 || None
+
| 7 || SetAlternateSetting
β
| calls /dev/usb/usb ioctl 5 and/or 0x11
+
| 0x20 bytes
+
+
1-2: Device index<br>
+
2-4: Device number<br>
+
8-12: Alternate setting
+
| None
+
| Set the active alternate setting for a device.
+
+
Internally, this issues /dev/usb/usb ioctl 2 to get descriptors, loops over all endpoints and calls /dev/usb/usb ioctl 5 if <code>(bmAttributes & 3) == 1</code>. If all ioctls succeed, VEN calls /dev/usb/usb ioctl 0x11 with the device ID, alt setting and bInterfaceNumber (+ other unknown values).
|-
|-
| 8 || ? || 0x20 || None
| 8 || ? || 0x20 || None