Changes

561 bytes added ,  15:42, 27 October 2017
Line 48: Line 48:  
| Releases the device change callback with 0 as return code.
 
| Releases the device change callback with 0 as return code.
 
|-
 
|-
βˆ’
| 3 || GetDeviceInfo || 0x20 || 0xc0
+
| 3 || GetDeviceInfo ||
βˆ’
| calls /dev/usb/usb ioctl 2
+
0x20 bytes
 +
 
 +
1-2: Device index<br>
 +
2-4: Device number
 +
 
 +
(0-4 is considered as a whole as as the device ID, but IOS only cares about these two values.)
 +
 
 +
| 0xc0 bytes (memset to 0)
 +
 
 +
20-40: Device descriptor<br>
 +
40-52: Config descriptor<br>
 +
52-64: Interface descriptor<br>
 +
64-72: Endpoint descriptors (interface.bNumEndpoints times)
 +
 
 +
| Get USB descriptors for a device. Behind the scenes, calls /dev/usb/usb ioctl 2 (input: internal ID, output: descriptors) and copies information to the output buffer and the internal device struct.
 +
 
 +
The descriptor structures match the ones used by libusb (with padding).
 
|-
 
|-
 
| 4 || ? || 0x20 || None
 
| 4 || ? || 0x20 || None
219

edits