• Home
  • Raw
  • Download

Lines Matching refs:ptp_usb

57 static inline int get_timeout(PTP_USB* ptp_usb)  in get_timeout()  argument
59 if (FLAG_LONG_TIMEOUT(ptp_usb)) { in get_timeout()
74 PTP_USB *ptp_usb; member
95 static void close_usb(PTP_USB* ptp_usb);
105 static void clear_stall(PTP_USB* ptp_usb);
107 PTP_USB* ptp_usb, libusb_device* dev);
112 static int usb_get_endpoint_status(PTP_USB* ptp_usb,
719 void dump_usbinfo(PTP_USB *ptp_usb) in dump_usbinfo() argument
724 if (libusb_kernel_driver_active(ptp_usb->handle, ptp_usb->interface)) in dump_usbinfo()
727 dev = libusb_get_device (ptp_usb->handle); in dump_usbinfo()
736 LIBMTP_INFO(" IN endpoint maxpacket: %d bytes\n", ptp_usb->inep_maxpacket); in dump_usbinfo()
737 LIBMTP_INFO(" OUT endpoint maxpacket: %d bytes\n", ptp_usb->outep_maxpacket); in dump_usbinfo()
739 LIBMTP_INFO(" Bus location: %d\n", ptp_usb->rawdevice.bus_location); in dump_usbinfo()
740 LIBMTP_INFO(" Device number: %d\n", ptp_usb->rawdevice.devnum); in dump_usbinfo()
742 LIBMTP_INFO(" Vendor: %s\n", ptp_usb->rawdevice.device_entry.vendor); in dump_usbinfo()
743 LIBMTP_INFO(" Vendor id: 0x%04x\n", ptp_usb->rawdevice.device_entry.vendor_id); in dump_usbinfo()
744 LIBMTP_INFO(" Product: %s\n", ptp_usb->rawdevice.device_entry.product); in dump_usbinfo()
745 LIBMTP_INFO(" Vendor id: 0x%04x\n", ptp_usb->rawdevice.device_entry.product_id); in dump_usbinfo()
746 LIBMTP_INFO(" Device flags: 0x%08x\n", ptp_usb->rawdevice.device_entry.device_flags); in dump_usbinfo()
758 const char *get_playlist_extension(PTP_USB *ptp_usb) in get_playlist_extension() argument
765 dev = libusb_get_device(ptp_usb->handle); in get_playlist_extension()
837 PTP_USB *ptp_usb = (PTP_USB *)data; in ptp_read_func() local
847 uint16_t ptp_dev_vendor_id = ptp_usb->rawdevice.device_entry.vendor_id; in ptp_read_func()
851 usb_inep_maxpacket_size = ptp_usb->inep_maxpacket; in ptp_read_func()
873 if (readzero && FLAG_NO_ZERO_READS(ptp_usb) && toread % 64 == 0) { in ptp_read_func()
896 ret = USB_BULK_READ(ptp_usb->handle, in ptp_read_func()
897 ptp_usb->inep, in ptp_read_func()
901 ptp_usb->timeout); in ptp_read_func()
926 ptp_usb->current_transfer_complete += xread; in ptp_read_func()
930 if (ptp_usb->callback_active) { in ptp_read_func()
931 if (ptp_usb->current_transfer_complete >= ptp_usb->current_transfer_total) { in ptp_read_func()
933 ptp_usb->current_transfer_complete = ptp_usb->current_transfer_total; in ptp_read_func()
934 ptp_usb->callback_active = 0; in ptp_read_func()
936 if (ptp_usb->current_transfer_callback != NULL) { in ptp_read_func()
938 ret = ptp_usb->current_transfer_callback(ptp_usb->current_transfer_complete, in ptp_read_func()
939 ptp_usb->current_transfer_total, in ptp_read_func()
940 ptp_usb->current_transfer_callback_data); in ptp_read_func()
955 !FLAG_NO_ZERO_READS(ptp_usb) && in ptp_read_func()
956 curread % ptp_usb->outep_maxpacket == 0) { in ptp_read_func()
963 zeroresult = USB_BULK_READ(ptp_usb->handle, in ptp_read_func()
964 ptp_usb->inep, in ptp_read_func()
968 ptp_usb->timeout); in ptp_read_func()
983 PTP_USB *ptp_usb = (PTP_USB *)data; in ptp_write_func() local
1003 if (towrite > ptp_usb->outep_maxpacket && towrite % ptp_usb->outep_maxpacket != 0) { in ptp_write_func()
1004 towrite -= towrite % ptp_usb->outep_maxpacket; in ptp_write_func()
1013 ret = USB_BULK_WRITE(ptp_usb->handle, in ptp_write_func()
1014 ptp_usb->outep, in ptp_write_func()
1018 ptp_usb->timeout); in ptp_write_func()
1029 ptp_usb->current_transfer_complete += xwritten; in ptp_write_func()
1034 if (ptp_usb->callback_active) { in ptp_write_func()
1035 if (ptp_usb->current_transfer_complete >= ptp_usb->current_transfer_total) { in ptp_write_func()
1037 ptp_usb->current_transfer_complete = ptp_usb->current_transfer_total; in ptp_write_func()
1038 ptp_usb->callback_active = 0; in ptp_write_func()
1040 if (ptp_usb->current_transfer_callback != NULL) { in ptp_write_func()
1042 ret = ptp_usb->current_transfer_callback(ptp_usb->current_transfer_complete, in ptp_write_func()
1043 ptp_usb->current_transfer_total, in ptp_write_func()
1044 ptp_usb->current_transfer_callback_data); in ptp_write_func()
1060 if (ptp_usb->current_transfer_complete >= ptp_usb->current_transfer_total) { in ptp_write_func()
1061 if ((towrite % ptp_usb->outep_maxpacket) == 0) { in ptp_write_func()
1067 ret =USB_BULK_WRITE(ptp_usb->handle, in ptp_write_func()
1068 ptp_usb->outep, in ptp_write_func()
1072 ptp_usb->timeout); in ptp_write_func()
1231 PTP_USB *ptp_usb = (PTP_USB *) params->data; in ptp_usb_senddata() local
1233 packet_size = ptp_usb->outep_maxpacket; in ptp_usb_senddata()
1297 PTP_USB *ptp_usb = (PTP_USB *) params->data; in ptp_usb_getpacket() local
1299 packet_size = ptp_usb->inep_maxpacket; in ptp_usb_getpacket()
1327 PTP_USB *ptp_usb = (PTP_USB *) params->data; in ptp_usb_getdata() local
1346 if (FLAG_IGNORE_HEADER_ERRORS(ptp_usb)) { in ptp_usb_getdata()
1368 if (rlen == ptp_usb->inep_maxpacket) { in ptp_usb_getdata()
1418 } else if(!FLAG_NO_ZERO_READS(ptp_usb) && in ptp_usb_getdata()
1447 if (FLAG_NO_ZERO_READS(ptp_usb) && in ptp_usb_getdata()
1448 len+PTP_USB_BULK_HDR_LEN == ptp_usb->inep_maxpacket) { in ptp_usb_getdata()
1455 result = USB_BULK_READ(ptp_usb->handle, in ptp_usb_getdata()
1456 ptp_usb->inep, in ptp_usb_getdata()
1460 ptp_usb->timeout); in ptp_usb_getdata()
1463 …ld not read in extra byte for %d byte long file, return value 0x%04x\n", ptp_usb->inep_maxpacket, … in ptp_usb_getdata()
1464 …} else if (len+PTP_USB_BULK_HDR_LEN == ptp_usb->inep_maxpacket && params->split_header_data == 0) { in ptp_usb_getdata()
1470 zeroresult = USB_BULK_READ(ptp_usb->handle, in ptp_usb_getdata()
1471 ptp_usb->inep, in ptp_usb_getdata()
1475 ptp_usb->timeout); in ptp_usb_getdata()
1503 PTP_USB *ptp_usb = (PTP_USB *)(params->data); in ptp_usb_getresp() local
1545 if (FLAG_IGNORE_HEADER_ERRORS(ptp_usb)) { in ptp_usb_getresp()
1575 PTP_USB *ptp_usb; in ptp_usb_event() local
1581 ptp_usb = (PTP_USB *)(params->data); in ptp_usb_event()
1586 result = USB_BULK_READ(ptp_usb->handle, in ptp_usb_event()
1587 ptp_usb->intep, in ptp_usb_event()
1593 result = USB_BULK_READ(ptp_usb->handle, in ptp_usb_event()
1594 ptp_usb->intep, in ptp_usb_event()
1602 result = USB_BULK_READ(ptp_usb->handle, in ptp_usb_event()
1603 ptp_usb->intep, in ptp_usb_event()
1607 ptp_usb->timeout); in ptp_usb_event()
1609 result = USB_BULK_READ(ptp_usb->handle, in ptp_usb_event()
1610 ptp_usb->intep, in ptp_usb_event()
1614 ptp_usb->timeout); in ptp_usb_event()
1707 PTP_USB *ptp_usb; in ptp_usb_event_async() local
1739 ptp_usb = (PTP_USB *)(params->data); in ptp_usb_event_async()
1740 libusb_fill_interrupt_transfer(t, ptp_usb->handle, ptp_usb->intep, in ptp_usb_event_async()
1760 PTP_USB *ptp_usb = (PTP_USB *)(params->data); in ptp_usb_control_cancel_request() local
1766 ret = libusb_control_transfer(ptp_usb->handle, in ptp_usb_control_cancel_request()
1771 ptp_usb->timeout); in ptp_usb_control_cancel_request()
1777 static int init_ptp_usb(PTPParams* params, PTP_USB* ptp_usb, libusb_device* dev) in init_ptp_usb() argument
1789 params->data=ptp_usb; in init_ptp_usb()
1797 ptp_usb->timeout = get_timeout(ptp_usb); in init_ptp_usb()
1804 ptp_usb->handle = device_handle; in init_ptp_usb()
1811 if (FLAG_UNLOAD_DRIVER(ptp_usb) && in init_ptp_usb()
1812 libusb_kernel_driver_active(device_handle, ptp_usb->interface) in init_ptp_usb()
1814 if (LIBUSB_SUCCESS != libusb_detach_kernel_driver(device_handle, ptp_usb->interface)) { in init_ptp_usb()
1831 if (libusb_set_configuration(device_handle, ptp_usb->config) != LIBUSB_SUCCESS) { in init_ptp_usb()
1840 if (config->bConfigurationValue != ptp_usb->config) { in init_ptp_usb()
1842 if (libusb_set_configuration(device_handle, ptp_usb->config)) { in init_ptp_usb()
1859 usbresult = libusb_claim_interface(device_handle, ptp_usb->interface); in init_ptp_usb()
1874 ptp_usb->altsetting) { in init_ptp_usb()
1877 ptp_usb->interface, in init_ptp_usb()
1878 ptp_usb->altsetting); in init_ptp_usb()
1887 if (FLAG_SWITCH_MODE_BLACKBERRY(ptp_usb)) { in init_ptp_usb()
1929 static void clear_stall(PTP_USB* ptp_usb) in clear_stall() argument
1936 ret = usb_get_endpoint_status(ptp_usb,ptp_usb->inep,&status); in clear_stall()
1941 ret = libusb_clear_halt (ptp_usb->handle, ptp_usb->inep); in clear_stall()
1949 ret = usb_get_endpoint_status(ptp_usb,ptp_usb->outep,&status); in clear_stall()
1954 ret = libusb_clear_halt(ptp_usb->handle, ptp_usb->outep); in clear_stall()
1963 static void close_usb(PTP_USB* ptp_usb) in close_usb() argument
1965 if (!FLAG_NO_RELEASE_INTERFACE(ptp_usb)) { in close_usb()
1976 clear_stall(ptp_usb); in close_usb()
1977 libusb_release_interface(ptp_usb->handle, (int) ptp_usb->interface); in close_usb()
1979 if (FLAG_FORCE_RESET_ON_CLOSE(ptp_usb)) { in close_usb()
1987 libusb_reset_device (ptp_usb->handle); in close_usb()
1989 libusb_close(ptp_usb->handle); in close_usb()
2091 PTP_USB *ptp_usb; in configure_usb_device() local
2129 ptp_usb = (PTP_USB *) malloc(sizeof(PTP_USB)); in configure_usb_device()
2130 if (ptp_usb == NULL) { in configure_usb_device()
2135 memset(ptp_usb, 0, sizeof(PTP_USB)); in configure_usb_device()
2138 memcpy(&ptp_usb->rawdevice, device, sizeof(LIBMTP_raw_device_t)); in configure_usb_device()
2144 if (FLAG_ALWAYS_PROBE_DESCRIPTOR(ptp_usb)) { in configure_usb_device()
2151 &ptp_usb->config, in configure_usb_device()
2152 &ptp_usb->interface, in configure_usb_device()
2153 &ptp_usb->altsetting, in configure_usb_device()
2154 &ptp_usb->inep, in configure_usb_device()
2155 &ptp_usb->inep_maxpacket, in configure_usb_device()
2156 &ptp_usb->outep, in configure_usb_device()
2157 &ptp_usb->outep_maxpacket, in configure_usb_device()
2158 &ptp_usb->intep); in configure_usb_device()
2162 free (ptp_usb); in configure_usb_device()
2168 ptp_usb->bcdusb = desc.bcdUSB; in configure_usb_device()
2171 if (init_ptp_usb(params, ptp_usb, ldevice) < 0) { in configure_usb_device()
2172 free (ptp_usb); in configure_usb_device()
2185 libusb_reset_device (ptp_usb->handle); in configure_usb_device()
2186 close_usb(ptp_usb); in configure_usb_device()
2188 if(init_ptp_usb(params, ptp_usb, ldevice) <0) { in configure_usb_device()
2191 free (ptp_usb); in configure_usb_device()
2199 free (ptp_usb); in configure_usb_device()
2215 libusb_release_interface(ptp_usb->handle, ptp_usb->interface); in configure_usb_device()
2217 free (ptp_usb); in configure_usb_device()
2222 *usbinfo = (void *) ptp_usb; in configure_usb_device()
2228 void close_device (PTP_USB *ptp_usb, PTPParams *params) in close_device() argument
2232 close_usb(ptp_usb); in close_device()
2235 void set_usb_device_timeout(PTP_USB *ptp_usb, int timeout) in set_usb_device_timeout() argument
2237 ptp_usb->timeout = timeout; in set_usb_device_timeout()
2240 void get_usb_device_timeout(PTP_USB *ptp_usb, int *timeout) in get_usb_device_timeout() argument
2242 *timeout = ptp_usb->timeout; in get_usb_device_timeout()
2245 int guess_usb_speed(PTP_USB *ptp_usb) in guess_usb_speed() argument
2255 switch (ptp_usb->bcdusb & 0xFF00) { in guess_usb_speed()
2274 static int usb_get_endpoint_status(PTP_USB* ptp_usb, int ep, uint16_t* status) in usb_get_endpoint_status() argument
2276 return libusb_control_transfer(ptp_usb->handle, in usb_get_endpoint_status()
2283 ptp_usb->timeout); in usb_get_endpoint_status()