You can include any valid TCL commands in the config files. So, you can do an if-else block. Then, on the command line, you can pass a -c argument before the -f. The -c would set a variable and then the -f would include your config file.

Rick


On Feb 1, 2009, at 11:45 PM, Rob Barris wrote:

I did some searching of the mailing list archives and was not able to find the answer on this - how can one arrange to explicitly address more than one FT2232 based JTAG interface device on USB ? (OK, this is solved below, but leads to another question.)

Specifically, I have an AMontec JTAGKey ( http://www.amontec.com/jtagkey.shtml ) and also a JTAGKey Tiny: ( http://www.amontec.com/jtagkey-tiny.shtml ) and would like to be able to run two instances of OpenOCD in order to be able to communicate with both of them.

Is there a more precise way to specify in the config file which physical interface to bind to ? With the JTAGKey Tiny I currently use these lines:

#############################################################################
# Interface configuration
#############################################################################
interface ft2232
ft2232_device_desc "Amontec JTAGkey"
ft2232_layout jtagkey
ft2232_vid_pid 0x0403 0xCFF8

but plainly this would match up against any such device on the USB bus.

OK, some googling indicates that there is a unique serial number per JTAGKey device:

        
http://forum.sparkfun.com/viewtopic.php?p=31625&sid=2fdb8f7dfe577c1cc4ff0f2b21e0e69f

        
http://forum.sparkfun.com/viewtopic.php?t=9273&sid=2571180fc8627d9034536f195a7cb354

Aha, running USB Prober on OS X shows me the SN/info of my two interfaces ("abcdef" injected in case those are supposed to be secret):

        Descriptor Version Number:   0x0200
        Device Class:   0   (Composite)
        Device Subclass:   0
        Device Protocol:   0
        Device MaxPacketSize:   8
Device VendorID/ProductID: 0x0403/0xCFF8 (Future Technology Devices International Limited)
        Device Version Number:   0x0500
        Number of Configurations:   1
        Manufacturer String:   1 "Amontec"
        Product String:   2 "Amontec JTAGkey"
        Serial Number String:   3 "32abcdef"

        Descriptor Version Number:   0x0200
        Device Class:   0   (Composite)
        Device Subclass:   0
        Device Protocol:   0
        Device MaxPacketSize:   8
Device VendorID/ProductID: 0x0403/0xCFF8 (Future Technology Devices International Limited)
        Device Version Number:   0x0500
        Number of Configurations:   1
        Manufacturer String:   1 "Amontec"
        Product String:   2 "Amontec JTAGkey"
        Serial Number String:   3 "T1abcdef"

OK so now I can make it work - made two config files, made sure to pick a separate set of port numbers for each instance, and put the right serial number into each one. This works with two instances and I can address a device on both ports easily.

Is there any way to conditionalize the setup script so I could just have one master script, but have it invoked with an additional command line argument which would then guide it to select an interface and a set of port numbers to bind to ?

Rob

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

--
Rick Altherr
kc8...@kc8apf.net

"He said he hadn't had a byte in three days. I had a short, so I split it with him."
 -- Unsigned



Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to