Zach Welch pisze:
By all means, post the new info.txt file, as it
should probably be integrated into the main distribution tarball.
You won't like it (; , but ... it's attached. The file is a part of a
.zip archive with libusb-win32 drivers.
If the .inf file was changed from the repository version, post it too.
Actually, the .inf file is not in the repository - I've suggested adding
it a while ago, but there was no interest. I attach that too.
The only JTAG from the /interface/ folder I did not include was the one
from axm0432.cfg - Axiom axm0432. I just couldn't find any info about
that in the internet, so I don't know whether it's a JTAG-only or JTAG +
UART/RS-232 device. That's probably pretty unique device anyway. There
is a slight chance that I've guessed that wrong for a few other devices
(like SheevaPlug and the developement boards with embedded JTAG) - so
that can be checked. Some names can also be changed, including that
stupid "(Channel A/B)" <:
I hope that there are no drastic mistakes, as I don't like the idea of
another "service release" - the executable is not changed and there are
inconsistent packages flying around the net. If 0.3.0 will be done some
time soon any minor corrections can be done then.
BTW - if anyone wishes to do any changes, the style can be changed for
sure - I know that I'm no English poet <:
4\/3!!
[Version]
Signature = "$Chicago$"
provider = %manufacturer%
DriverVer = 07/07/2009,0.1.12.2
CatalogFile = libusb-win32_ft2232_driver.cat
CatalogFile.NT = libusb-win32_ft2232_driver.cat
Class = LibUsbDevices
ClassGUID = {EB781AAF-9C70-4523-A5DF-642A87ECA567}
[ClassInstall]
AddReg=libusb_class_install_add_reg
[ClassInstall32]
AddReg=libusb_class_install_add_reg
[libusb_class_install_add_reg]
HKR,,,,"LibUSB-Win32 Devices"
HKR,,Icon,,"-20"
[Manufacturer]
%manufacturer%=Devices,NT
;--------------------------------------------------------------------------
; Files
;--------------------------------------------------------------------------
[SourceDisksNames]
1 = "Libusb-Win32 Driver Installation Disk",,
[SourceDisksFiles]
libusb0.sys = 1,,
libusb0.dll = 1,,
[DestinationDirs]
libusb_files_sys = 10,system32\drivers
libusb_files_dll = 10,system32
[libusb_files_sys]
libusb0.sys
[libusb_files_dll]
libusb0.dll
;--------------------------------------------------------------------------
; Device driver
;--------------------------------------------------------------------------
[LIBUSB_DEV]
CopyFiles = libusb_files_sys, libusb_files_dll
AddReg = libusb_add_reg
[LIBUSB_DEV.NT]
CopyFiles = libusb_files_sys, libusb_files_dll
[LIBUSB_DEV.HW]
DelReg = libusb_del_reg_hw
AddReg = libusb_add_reg_hw
[LIBUSB_DEV.NT.HW]
DelReg = libusb_del_reg_hw
AddReg = libusb_add_reg_hw
[LIBUSB_DEV.NT.Services]
AddService = libusb0, 0x00000002, libusb_add_service
[libusb_add_reg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,libusb0.sys
; Older versions of this .inf file installed filter drivers. They are not
; needed any more and must be removed
[libusb_del_reg_hw]
HKR,,LowerFilters
HKR,,UpperFilters
; Device properties
[libusb_add_reg_hw]
HKR,,SurpriseRemovalOK, 0x00010001, 1
;--------------------------------------------------------------------------
; Services
;--------------------------------------------------------------------------
[libusb_add_service]
DisplayName = "LibUsb-Win32 - Kernel Driver 07/07/2009,0.1.12.2"
ServiceType = 1
StartType = 3
ErrorControl = 0
ServiceBinary = %12%\libusb0.sys
;--------------------------------------------------------------------------
; Devices
;--------------------------------------------------------------------------
; Devices which have USB<=>UART converter on the second channel should have
; only ONE entry - the second channel is handled by the ft2232 driver from
; FTDI. egnite Turtelizer2 is an example.
; Devices which use only the first channel (JTAG only) should have TWO entries
; for BOTH channels. Amontec JTAGkey is an example.
[Devices]
"Amontec JTAGkey (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_cff8&MI_00
"Amontec JTAGkey (Channel B)"=LIBUSB_DEV, USB\VID_0403&PID_cff8&MI_01
"CALAO Systems USB-A9260-C01 (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_6010&MI_00
"CALAO Systems USB-A9260-C02 (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_6001&MI_00
"egnite Turtelizer 2 (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_bdc8&MI_00
"Hitex Cortino (Channel A)"=LIBUSB_DEV, USB\VID_0640&PID_0032&MI_00
"Hitex Cortino (Channel B)"=LIBUSB_DEV, USB\VID_0640&PID_0032&MI_01
"Hitex STM32-PerformanceStick (Channel A)"=LIBUSB_DEV,
USB\VID_0640&PID_002d&MI_00
"Hitex STR9-comStick (Channel A)"=LIBUSB_DEV, USB\VID_0640&PID_002c&MI_00
"Hubert Hoegl's USB to JTAG (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_6010&MI_00
"Joern Kaipf's OOCDLink (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_baf8&MI_00
"Luminary Micro BD-ICDI In-Circuit Debug Interface Board (Channel
A)"=LIBUSB_DEV, USB\VID_0403&PID_bcda&MI_00
"Luminary Micro Stellaris LM3S811 Evaluation Kit (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_bcd9&MI_00
"Marvel SheevaPlug Development Kit (Channel A)"=LIBUSB_DEV,
USB\VID_9e88&PID_9e8f&MI_00`
"Olimex ARM-USB-OCD (Channel A)"=LIBUSB_DEV, USB\VID_15ba&PID_0003&MI_00
"Olimex ARM-USB-TINY (Channel A)"=LIBUSB_DEV, USB\VID_15ba&PID_0x0004&MI_00
"Olimex ARM-USB-TINY (Channel B)"=LIBUSB_DEV, USB\VID_15ba&PID_0x0004&MI_01
"Section5 ICEBear (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_c140&MI_00
"Section5 ICEBear (Channel B)"=LIBUSB_DEV, USB\VID_0403&PID_c140&MI_01
"TinCanTools Flyswatter (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_6010&MI_00
"Xverve Signalyzer (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_bca0&MI_00
[Devices.NT]
"Amontec JTAGkey (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_cff8&MI_00
"Amontec JTAGkey (Channel B)"=LIBUSB_DEV, USB\VID_0403&PID_cff8&MI_01
"CALAO Systems USB-A9260-C01 (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_6010&MI_00
"CALAO Systems USB-A9260-C02 (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_6001&MI_00
"egnite Turtelizer 2 (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_bdc8&MI_00
"Hitex Cortino (Channel A)"=LIBUSB_DEV, USB\VID_0640&PID_0032&MI_00
"Hitex Cortino (Channel B)"=LIBUSB_DEV, USB\VID_0640&PID_0032&MI_01
"Hitex STM32-PerformanceStick (Channel A)"=LIBUSB_DEV,
USB\VID_0640&PID_002d&MI_00
"Hitex STR9-comStick (Channel A)"=LIBUSB_DEV, USB\VID_0640&PID_002c&MI_00
"Hubert Hoegl's USB to JTAG (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_6010&MI_00
"Joern Kaipf's OOCDLink (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_baf8&MI_00
"Luminary Micro BD-ICDI In-Circuit Debug Interface Board (Channel
A)"=LIBUSB_DEV, USB\VID_0403&PID_bcda&MI_00
"Luminary Micro Stellaris LM3S811 Evaluation Kit (Channel A)"=LIBUSB_DEV,
USB\VID_0403&PID_bcd9&MI_00
"Marvel SheevaPlug Development Kit (Channel A)"=LIBUSB_DEV,
USB\VID_9e88&PID_9e8f&MI_00`
"Olimex ARM-USB-OCD (Channel A)"=LIBUSB_DEV, USB\VID_15ba&PID_0003&MI_00
"Olimex ARM-USB-TINY (Channel A)"=LIBUSB_DEV, USB\VID_15ba&PID_0x0004&MI_00
"Olimex ARM-USB-TINY (Channel B)"=LIBUSB_DEV, USB\VID_15ba&PID_0x0004&MI_01
"Section5 ICEBear (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_c140&MI_00
"Section5 ICEBear (Channel B)"=LIBUSB_DEV, USB\VID_0403&PID_c140&MI_01
"TinCanTools Flyswatter (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_6010&MI_00
"Xverve Signalyzer (Channel A)"=LIBUSB_DEV, USB\VID_0403&PID_bca0&MI_00
;--------------------------------------------------------------------------
; Strings
;--------------------------------------------------------------------------
[Strings]
manufacturer = "FTDI"
WHY LIBUSB-WIN32 DRIVERS?
_________________________
Since June/July of 2009 due to alleged GPL license violation OpenOCD cannot be
distributed with support for ftd2xx.dll library. That's why FT2232 JTAGs have to
be used via libusb-win32 drivers, and OpenOCD will be linked with libftdi
library. Because of that OpenOCD users have to use different JTAG drivers. This
small document provides a basic "how to" of libusb-win32 drivers for FT2232
based JTAGs. Users who need OpenOCD linked with ftd2xx.dll can build the
software from sources.
DEVICES SUPPORTED BY THIS DRIVER PACKAGE
________________________________________
The .inf file provided with the driver in that package has entries for most of
existing FT2232 JTAGs. These devices are:
- Amontec JTAGkey
- CALAO Systems USB-A9260-C01
- CALAO Systems USB-A9260-C02
- egnite Turtelizer 2
- Hitex Cortino
- Hitex STM32-PerformanceStick
- Hitex STR9-comStick
- Hubert Hoegl's USB to JTAG
- Joern Kaipf's OOCDLink
- Luminary Micro BD-ICDI In-Circuit Debug Interface Board
- Luminary Micro Stellaris LM3S811 Evaluation Kit
- Marvel SheevaPlug Development Kit
- Olimex ARM-USB-OCD
- Olimex ARM-USB-TINY
- Section5 ICEBear
- TinCanTools Flyswatter
- Xverve Signalyzer
If your device isn't listed above, check the contents of the .inf file for info
about adding new entries.
USAGE INFO
__________
FT2232 is an USB Composite Device, so from the system's point of view it is seen
as two completely separate devices which can have two completely
separate drivers.
Devices which have only JTAG (Amontec JTAGkey, Olimex ARM-USB-TINY, etc.) should
use libusb-win32 drivers for BOTH FT2232 sub-devices - no additional drivers are
required. In those devices the second channel is unused.
Devices which have JTAG and UART/RS-232 on board (egnite Turtelizer 2, Olimex
ARM-USB-OCD, etc.) should use libusb-win32 drivers only for the JTAG channel.
The UART/RS-232 port needs drivers from FTDI, most likely with modified VID/PID
combination - such drivers should be provided by the JTAG vendor.
DRIVER INSTALLATION
___________________
If there were FTDI drivers installed in the system, they have to be manually
removed (via system's Device Manager) and then libusb-win32 drivers have to be
installed manually. In case of "JTAG + UART/RS-232" devices only the driver for
the JTAG channel needs to be removed. In case of "JTAG-only" devices the driver
for the second (unused) channel also can (but doesn't have to) be replaced.
Uninstallation of ftd2xx.dll driver:
When the device is plugged, open the Device Manager (Control Panel > System >
Hardware > Device Manager), right click on the JTAG device (in "Universal Serial
Bus controllers" group) and Uninstall it. Now unplug the JTAG and wait a few
moments.
Installation of libusb-win32 driver:
Plug the device to the USB port of your PC. The system should discover a new
device and the installation wizard should be started. Don't use automatic
methods (as this will probably install the drivers you just removed) - use
"Don't search. I will choose the driver to install" (fully manual mode) instead.
Succesfully installed driver(s) will be displayed in the "LibUSB-Win32 Devices"
group in the Device Manager.
ADDITIONAL SOURCES OF INFORMATION
_________________________________
http://www.google.com/
http://libusb-win32.sourceforge.net/
http://www.intra2net.com/en/developer/libftdi/
http://forum.sparkfun.com/viewforum.php?f=18
http://openocd.berlios.de/ (the mailing list)
In future a tutorial on those matters will be provided on
http://www.freddiechopin.info/ webpage.
_______________
version: 090829_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development