The problem is occurring **before** libusb_claim_interface is called. It is 
happening on the open attempt. If I run xusb:

        $ xusb 1cbe:00fd
        Using libusb v1.0.19.10905

        Opening device 1CBE:00FD...
          Failed.

Now, if I am "uninstalling" (using device manager) the serial port device 
(*usb\vid_1cbe&pid_00fd&mi_00*) I am getting this:

        $ xusb 1cbe:00fd
        Using libusb v1.0.19.10905
        
        Opening device 1CBE:00FD...
        
        Reading device descriptor:
                    length: 18
              device class: 239
                       S/N: 3
                   VID:PID: 1CBE:00FD
                 bcdDevice: 0100
           iMan:iProd:iSer: 1:2:3
                  nb confs: 1
        
        Reading BOS descriptor: no descriptor
        
        Reading first configuration descriptor:
                     nb interfaces: 4
                      interface[0]: id = 0
        interface[0].altsetting[0]: num endpoints = 1
           Class.SubClass.Protocol: 02.02.01
               endpoint[0].address: 81
                   max packet size: 0010
                  polling interval: 01
                      interface[1]: id = 1
        interface[1].altsetting[0]: num endpoints = 2
           Class.SubClass.Protocol: 0A.00.00
               endpoint[0].address: 82
                   max packet size: 0040
                  polling interval: 00
               endpoint[1].address: 01
                   max packet size: 0040
                  polling interval: 00
                      interface[2]: id = 2
        interface[2].altsetting[0]: num endpoints = 2
           Class.SubClass.Protocol: FF.00.00
               endpoint[0].address: 83
                   max packet size: 0040
                  polling interval: 00
               endpoint[1].address: 02
                   max packet size: 0040
                  polling interval: 00
                      interface[3]: id = 3
        interface[3].altsetting[0]: num endpoints = 0
           Class.SubClass.Protocol: FE.01.01
        
        Claiming interface 0...
           Failed.
        
        Claiming interface 1...
           Failed.
        
        Claiming interface 2...
        
        Claiming interface 3...
        
        Reading string descriptors:
           String (0x01): "Texas Instruments"
           String (0x02): "In-Circuit Debug Interface"
           String (0x03): "0E20CDA0"
        
        Releasing interface 0...
        Releasing interface 1...
        Releasing interface 2...
        Releasing interface 3...
        Closing device...

Note the "Claiming interface lines here".  The openocd is failing now with 

        Debug: 221 715 ti_icdi_usb.c:692 icdi_usb_open(): transport: 2 vid: 
0x1cbe pid:
        0x00fd
        Debug: 222 3004 ti_icdi_usb.c:706 icdi_usb_open(): claim interface 
failed
        Debug: 223 3011 hla_layout.c:49 hl_layout_open(): failed

See the attached Device Manager screenshot for reference. You will see three 
devices installed:
        Stellaris Virtual Serial Port
        Stellaris ICDI DFU Device
        Stellaris ICDI JTAG/SWD Interface
 
Hope it helps.


Attachment: devman.png (35.1 kB; image/png) 


---

** [tickets:#96] ti_icdi_usb not choosing the right interface on Windows 8.1**

**Status:** new
**Milestone:** 0.9.0
**Created:** Tue Apr 28, 2015 10:10 PM UTC by Eugene Sh.
**Last Updated:** Wed Apr 29, 2015 02:55 PM UTC
**Owner:** nobody

The Tiva C launchpad with onboard TI ICDI is creating 3 different devices under 
the same VID:PID. Using the `listdevs` example util from libusb-1.0 bundle:

1cbe:00fd (bus 3, device 3) path: 1.1
1cbe:00fd (bus 3, device 3) path: 1.1

And "Stellaris Virtual serial port" in addition. The ti_icdi_usb.c is using the 
"libusb_open_device_with_vid_pid" function to find the FIRST device with the 
given VID:PID and 
attempt to open it, which is failing on Windows 8.1 (it worked on Windows 7). 
It appears that the enumeration order have changed between the win versions. 
[This patch](http://openocd.zylin.com/#/c/2527/) appears to address this issue 
partially.



---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/openocd/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/openocd/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to