コード例 #1
0
/**
 * usbd_device_class_descriptor_index
 * @device: which device
 * @port: which port
 * @configuration: index to configuration, 0 - N-1 
 * @interface: index to interface
 * @index: which index
 *
 * Return the specified class descriptor for the specified device.
 */
struct usb_class_descriptor *usbd_device_class_descriptor_index (struct usb_device_instance *device, int port, int configuration, int interface, int alternate, int index)
{
	struct usb_alternate_instance *alternate_instance;

	if (!(alternate_instance = usbd_device_alternate_instance (device, port, configuration, interface, alternate))) {
		return NULL;
	}
	if (index >= alternate_instance->classes) {
		return NULL;
	}
	return *(alternate_instance->classes_descriptor_array + index);
}
コード例 #2
0
/**
 * usbd_device_endpoint_transfersize
 * @device: which device
 * @port: which port
 * @configuration: index to configuration, 0 - N-1 
 * @interface: index to interface
 * @index: which index
 *
 * Return the specified endpoint transfer size;
 */
int usbd_device_endpoint_transfersize (struct usb_device_instance *device, int port, int configuration, int interface, int alternate, int index)
{
	struct usb_alternate_instance *alternate_instance;

	if (!(alternate_instance = usbd_device_alternate_instance (device, port, configuration, interface, alternate))) {
		return 0;
	}
	if (index >= alternate_instance->endpoints) {
		return 0;
	}
	return *(alternate_instance->endpoint_transfersize_array + index);
}
コード例 #3
0
ファイル: core.c プロジェクト: jiangxilong/i10-quickboot
struct usb_endpoint_descriptor *
usbd_device_endpoint_descriptor_index (struct usb_device_instance *device, 
										int configuration, 
										int interface, 
										int alternate, 
										int index)
{
    struct usb_alternate_instance *alternate_instance;

    alternate_instance = usbd_device_alternate_instance (device, configuration, interface, alternate);
    if (!(alternate_instance)) {
        return NULL;
    }
    if (index >= alternate_instance->endpoints) {
        return NULL;
    }
    return *(alternate_instance->endpoints_descriptor_array + index);
}