I'm working with two digital cameras - a Sanyo Xacti S1 and a Canon PowerShot
A80 - and I'm writing an application to talk to them which uses libusb.  Each
DSC advertises that the maximum bytecount per transfer on the interrupt
endpoint is 8 bytes, so I only read a maximum of 8 bytes at a time from the
interrupt endpoint, even though the higher level protocol (PTP) usually sends
a total of 16 bytes in a "logical interrupt".

Having hooked up a USB analyzer between the camera and my Linux system, I see
interrupt data on the scope, but I don't always see the data when I read the
interrupt endpoint.

I've enabled debug in USB for this kernel, and I've cruised the source a
little in core/urb.c and core/message.c, but I'm not sure of the best place to
add a printk() or two (or otherwise enable more debug output) to see if the
interrupt data I'm looking for is being seen by the kernel.

Below is the output of dmesg from when I fire up my application and turn on
the camera until I turn off the camera.  Note that the "USBDEVFS_BULK failed"
messages are instances of timeouts on reads to the interrupt endpoint.  What
you don't see here (because dmesg doesn't include it) is lots of successful
I/O to and from the input, output, and interrupt endpoints.

Suggestions?  What other information would be useful?  Thanks,
-Del

>From dmesg:
drivers/usb/host/uhci-hcd.c: 1060: wakeup_hc
hub 1-0:1.0: port 2, status 101, change 1, 12 Mb/s
hub 1-0:1.0: debounce: port 2: delay 100ms stable 4 status 0x101
hub 1-0:1.0: new USB device on port 2, assigned address 13
usb 1-2: new device strings: Mfr=1, Product=2, SerialNumber=3
drivers/usb/core/message.c: USB device number 13 default language ID 0x409
usb 1-2: Product: SANYO Digital Camera
usb 1-2: Manufacturer: SANYO
usb 1-2: SerialNumber: 000068951222
drivers/usb/core/usb.c: usb_hotplug
usb 1-2: registering 1-2:1.0 (config #1, interface 0)
drivers/usb/core/usb.c: usb_hotplug
drivers/usb/core/usb.c: usbfs driver claimed interface cf9f3d80
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
usb 1-2: bulk timeout on ep1in
usbfs: USBDEVFS_BULK failed dev 13 ep 0x81 len 8 ret -110
hub 1-0:1.0: port 2, status 100, change 3, 12 Mb/s
usb 1-2: USB disconnect, address 13
usb 1-2: usb_disable_device nuking all URBs
usb 1-2: unregistering interface 1-2:1.0
drivers/usb/core/usb.c: usb_hotplug
usb 1-2: unregistering device
drivers/usb/core/usb.c: usb_hotplug
updfstab: numerical sysctl 1 23 is obsolete.
hub 1-0:1.0: port 2 enable change, status 100
drivers/usb/host/uhci-hcd.c: 1060: suspend_hc

>From linux-2.6.0-test9/.config:
131 lines matching "usb" in buffer .config.
   1106:CONFIG_USB_IRDA=m
   1130:CONFIG_BT_HCIUSB=m
   1131:CONFIG_BT_USB_SCO=y
   1132:# CONFIG_BT_USB_ZERO_PACKET is not set
   1426:CONFIG_VIDEO_CPIA_USB=m
   1534:# USB support
   1536:CONFIG_USB=m
   1537:CONFIG_USB_DEBUG=y
   1540:# Miscellaneous USB options
   1542:CONFIG_USB_DEVICEFS=y
   1543:# CONFIG_USB_BANDWIDTH is not set
   1544:# CONFIG_USB_DYNAMIC_MINORS is not set
   1547:# USB Host Controller Drivers
   1549:CONFIG_USB_EHCI_HCD=m
   1550:# CONFIG_USB_OHCI_HCD is not set
   1551:CONFIG_USB_UHCI_HCD=m
   1554:# USB Device Class drivers
   1556:CONFIG_USB_AUDIO=m
   1559:# USB Bluetooth TTY can only be used with disabled Bluetooth subsystem
   1561:CONFIG_USB_MIDI=m
   1562:CONFIG_USB_ACM=m
   1563:CONFIG_USB_PRINTER=m
   1564:CONFIG_USB_STORAGE=m
   1565:CONFIG_USB_STORAGE_DEBUG=y
   1566:CONFIG_USB_STORAGE_DATAFAB=y
   1567:CONFIG_USB_STORAGE_FREECOM=y
   1568:CONFIG_USB_STORAGE_ISD200=y
   1569:CONFIG_USB_STORAGE_DPCM=y
   1570:CONFIG_USB_STORAGE_HP8200e=y
   1571:CONFIG_USB_STORAGE_SDDR09=y
   1572:CONFIG_USB_STORAGE_SDDR55=y
   1573:CONFIG_USB_STORAGE_JUMPSHOT=y
   1576:# USB Human Interface Devices (HID)
   1578:CONFIG_USB_HID=m
   1579:CONFIG_USB_HIDINPUT=y
   1581:CONFIG_USB_HIDDEV=y
   1584:# USB HID Boot Protocol drivers
   1586:# CONFIG_USB_KBD is not set
   1587:# CONFIG_USB_MOUSE is not set
   1588:CONFIG_USB_AIPTEK=m
   1589:CONFIG_USB_WACOM=m
   1590:CONFIG_USB_KBTAB=m
   1591:CONFIG_USB_POWERMATE=m
   1592:# CONFIG_USB_XPAD is not set
   1595:# USB Imaging devices
   1597:CONFIG_USB_MDC800=m
   1598:CONFIG_USB_SCANNER=m
   1599:CONFIG_USB_MICROTEK=m
   1600:CONFIG_USB_HPUSBSCSI=m
   1603:# USB Multimedia devices
   1605:CONFIG_USB_DABUSB=m
   1606:CONFIG_USB_VICAM=m
   1607:CONFIG_USB_DSBR=m
   1608:CONFIG_USB_IBMCAM=m
   1609:CONFIG_USB_KONICAWC=m
   1610:CONFIG_USB_OV511=m
   1611:CONFIG_USB_PWC=m
   1612:CONFIG_USB_SE401=m
   1613:CONFIG_USB_STV680=m
   1616:# USB Network adaptors
   1618:CONFIG_USB_CATC=m
   1619:CONFIG_USB_KAWETH=m
   1620:CONFIG_USB_PEGASUS=m
   1621:CONFIG_USB_RTL8150=m
   1622:CONFIG_USB_USBNET=m
   1625:# USB Host-to-Host Cables
   1627:CONFIG_USB_AN2720=y
   1628:CONFIG_USB_BELKIN=y
   1629:CONFIG_USB_GENESYS=y
   1630:CONFIG_USB_NET1080=y
   1631:CONFIG_USB_PL2301=y
   1634:# Intelligent USB Devices/Gadgets
   1636:CONFIG_USB_ARMLINUX=y
   1637:CONFIG_USB_EPSON2888=y
   1638:CONFIG_USB_ZAURUS=y
   1639:CONFIG_USB_CDCETHER=y
   1642:# USB Network Adapters
   1644:# CONFIG_USB_AX8817X is not set
   1647:# USB port drivers
   1649:CONFIG_USB_USS720=m
   1652:# USB Serial Converter support
   1654:CONFIG_USB_SERIAL=m
   1655:CONFIG_USB_SERIAL_GENERIC=y
   1656:CONFIG_USB_SERIAL_BELKIN=m
   1657:CONFIG_USB_SERIAL_WHITEHEAT=m
   1658:CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
   1659:CONFIG_USB_SERIAL_EMPEG=m
   1660:CONFIG_USB_SERIAL_FTDI_SIO=m
   1661:CONFIG_USB_SERIAL_VISOR=m
   1662:CONFIG_USB_SERIAL_IPAQ=m
   1663:CONFIG_USB_SERIAL_IR=m
   1664:CONFIG_USB_SERIAL_EDGEPORT=m
   1665:CONFIG_USB_SERIAL_EDGEPORT_TI=m
   1666:CONFIG_USB_SERIAL_KEYSPAN_PDA=m
   1667:CONFIG_USB_SERIAL_KEYSPAN=m
   1668:CONFIG_USB_SERIAL_KEYSPAN_MPR=y
   1669:# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set
   1670:# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set
   1671:CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
   1672:CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
   1673:# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set
   1674:# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set
   1675:CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
   1676:CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
   1677:CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
   1678:CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
   1679:CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
   1680:CONFIG_USB_SERIAL_KLSI=m
   1681:CONFIG_USB_SERIAL_KOBIL_SCT=m
   1682:CONFIG_USB_SERIAL_MCT_U232=m
   1683:CONFIG_USB_SERIAL_PL2303=m
   1684:CONFIG_USB_SERIAL_SAFE=m
   1685:# CONFIG_USB_SERIAL_SAFE_PADDED is not set
   1686:CONFIG_USB_SERIAL_CYBERJACK=m
   1687:CONFIG_USB_SERIAL_XIRCOM=m
   1688:CONFIG_USB_SERIAL_OMNINET=m
   1689:CONFIG_USB_EZUSB=y
   1692:# USB Miscellaneous drivers
   1694:# CONFIG_USB_EMI26 is not set
   1695:CONFIG_USB_TIGL=m
   1696:CONFIG_USB_AUERSWALD=m
   1697:CONFIG_USB_RIO500=m
   1698:CONFIG_USB_BRLVGER=m
   1699:CONFIG_USB_LCD=m
   1700:# CONFIG_USB_SPEEDTOUCH is not set
   1701:CONFIG_USB_TEST=m
   1702:CONFIG_USB_GADGET=y
   1703:# CONFIG_USB_NET2280 is not set
   1704:# CONFIG_USB_ZERO is not set
   1705:# CONFIG_USB_ETH is not set
   1706:# CONFIG_USB_GADGETFS is not set




-------------------------------------------------------
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to