Loading include/usbhost/usbhost.h +7 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,13 @@ int usb_device_release_interface(struct usb_device *device, unsigned int interfa int usb_device_connect_kernel_driver(struct usb_device *device, unsigned int interface, int connect); /* Sets the current configuration for the device to the specified configuration */ int usb_device_set_configuration(struct usb_device *device, int configuration); /* Sets the specified interface of a USB device */ int usb_device_set_interface(struct usb_device *device, unsigned int interface, unsigned int alt_setting); /* Sends a control message to the specified device on endpoint zero */ int usb_device_control_transfer(struct usb_device *device, int requestType, Loading libusbhost/usbhost.c +20 −15 Original line number Diff line number Diff line Loading @@ -453,6 +453,8 @@ char* usb_device_get_string(struct usb_device *device, int id) int i, result; int languageCount = 0; if (id == 0) return NULL; string[0] = 0; memset(languages, 0, sizeof(languages)); Loading Loading @@ -486,31 +488,19 @@ char* usb_device_get_string(struct usb_device *device, int id) char* usb_device_get_manufacturer_name(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iManufacturer) return usb_device_get_string(device, desc->iManufacturer); else return NULL; } char* usb_device_get_product_name(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iProduct) return usb_device_get_string(device, desc->iProduct); else return NULL; } char* usb_device_get_serial(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iSerialNumber) return usb_device_get_string(device, desc->iSerialNumber); else return NULL; } int usb_device_is_writeable(struct usb_device *device) Loading Loading @@ -556,6 +546,21 @@ int usb_device_connect_kernel_driver(struct usb_device *device, return ioctl(device->fd, USBDEVFS_IOCTL, &ctl); } int usb_device_set_configuration(struct usb_device *device, int configuration) { return ioctl(device->fd, USBDEVFS_SETCONFIGURATION, &configuration); } int usb_device_set_interface(struct usb_device *device, unsigned int interface, unsigned int alt_setting) { struct usbdevfs_setinterface ctl; ctl.interface = interface; ctl.altsetting = alt_setting; return ioctl(device->fd, USBDEVFS_SETINTERFACE, &ctl); } int usb_device_control_transfer(struct usb_device *device, int requestType, int request, Loading Loading
include/usbhost/usbhost.h +7 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,13 @@ int usb_device_release_interface(struct usb_device *device, unsigned int interfa int usb_device_connect_kernel_driver(struct usb_device *device, unsigned int interface, int connect); /* Sets the current configuration for the device to the specified configuration */ int usb_device_set_configuration(struct usb_device *device, int configuration); /* Sets the specified interface of a USB device */ int usb_device_set_interface(struct usb_device *device, unsigned int interface, unsigned int alt_setting); /* Sends a control message to the specified device on endpoint zero */ int usb_device_control_transfer(struct usb_device *device, int requestType, Loading
libusbhost/usbhost.c +20 −15 Original line number Diff line number Diff line Loading @@ -453,6 +453,8 @@ char* usb_device_get_string(struct usb_device *device, int id) int i, result; int languageCount = 0; if (id == 0) return NULL; string[0] = 0; memset(languages, 0, sizeof(languages)); Loading Loading @@ -486,31 +488,19 @@ char* usb_device_get_string(struct usb_device *device, int id) char* usb_device_get_manufacturer_name(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iManufacturer) return usb_device_get_string(device, desc->iManufacturer); else return NULL; } char* usb_device_get_product_name(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iProduct) return usb_device_get_string(device, desc->iProduct); else return NULL; } char* usb_device_get_serial(struct usb_device *device) { struct usb_device_descriptor *desc = (struct usb_device_descriptor *)device->desc; if (desc->iSerialNumber) return usb_device_get_string(device, desc->iSerialNumber); else return NULL; } int usb_device_is_writeable(struct usb_device *device) Loading Loading @@ -556,6 +546,21 @@ int usb_device_connect_kernel_driver(struct usb_device *device, return ioctl(device->fd, USBDEVFS_IOCTL, &ctl); } int usb_device_set_configuration(struct usb_device *device, int configuration) { return ioctl(device->fd, USBDEVFS_SETCONFIGURATION, &configuration); } int usb_device_set_interface(struct usb_device *device, unsigned int interface, unsigned int alt_setting) { struct usbdevfs_setinterface ctl; ctl.interface = interface; ctl.altsetting = alt_setting; return ioctl(device->fd, USBDEVFS_SETINTERFACE, &ctl); } int usb_device_control_transfer(struct usb_device *device, int requestType, int request, Loading