On Sat, Aug 14, 2010 at 1:48 AM, Olof Tångrot <olof.tang...@telia.com> wrote: > Xiaofan Chen wrote: >> I am using the original OpenOCD binaries from Freddie Chopin >> under 32bit Vista. The driver is the original Amontec driver >> (WHQL, based on FTDI's 2.06.00 version) and libusb-win32 >> filter driver 1.2.1.0. The two config files are also unmodified. >> > I also started to doubt that openocd actually could work with the > LPC2148 since Macraigor OCDCommander seems to be working at least with > the wiggler clone. > And it is strange that proprietary drivers seems to > be the involved your setup.
Ah, I just got the Amontec Amontec JTAGkey2 so I installed Amontec's driver first which is based on FTDI driver. To use libftdi, you need libusb-win32 driver, either device driver mode (recommended) or filter driver (which is not recommended for normal users, only for power users and developers). It is just that I am one of the admins of libusb-win32 and my responsibility includes testing the filter driver to improve its stability (it is much more stable now, but could still cause BSODs in certain cases). So I used the filter driver. If the filter driver works, normally the device driver will work. To prove that, I just used libusb-win32 device driver to replace the Amontec driver for Channel A using Zadig. And openocd works fine as well. This is under Windows 7 with no filter driver enabled. The inf file generated by Zadig is also attached. In fact, it can generate inf file for libusb0.sys and winusb.sys. So I can switch between using libftdi (with Freddie Chopin's binary) and libftdi-1.0 (with the binary I built). Zadig can also install the driver for you or just generate the binary package. http://www.libusb.org/wiki/windows_backend OpenOCD has long worked with LPC-2148. Last time I was using a J-Link (V6, V7 and V3, it took some time to get V3 working). D:\Program Files\OpenOCD\0.4.0\bin> openocd -f interface/jtagkey2.cfg -f board/olimex_lpc_h2148.cfg Open On-Chip Debugger 0.4.0 (2010-02-22-19:05) Licensed under GNU GPL v2 For bug reports, read http://openocd.berlios.de/doc/doxygen/bugs.html RCLK - adaptive jtag_nsrst_delay: 200 jtag_ntrst_delay: 200 trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain Info : max TCK change to: 30000 kHz Info : RCLK (adaptive clock speed) Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf 1f0, ver: 0x4) Info : Embedded ICE version 4 Info : lpc2148.cpu: hardware has 2 breakpoint/watchpoint units ; Amontec_JTAGkey-2_(Interface_0).inf ; Copyright (c) 2010 libusb-win32 (GNU LGPL) [Strings] DeviceName = "Amontec JTAGkey-2 (Interface 0)" VendorName = "Future Technology Devices International, Ltd" SourceName = "Amontec JTAGkey-2 (Interface 0) Install Disk" DeviceID = "VID_0403&PID_CFF8&MI_00" DeviceGUID = "{248C2A0C-51D8-4AC3-B588-2DFA42B58D34}" [Version] Signature = "$Windows NT$" Class = "libusb-win32 devices" ClassGuid = {EB781AAF-9C70-4523-A5DF-642A87ECA567} Provider = "libusb-win32" CatalogFile = Amontec_JTAGkey-2_(Interface_0).cat DriverVer = 08/05/2010, 1.2.1.0 [ClassInstall32] Addreg = libusb_class_install_add_reg [libusb_class_install_add_reg] HKR,,,0,"libusb-win32 devices" HKR,,Icon,,-20 [Manufacturer] %VendorName% = Devices, NT, NTAMD64, NTIA64 ;-------------------------------------------------------------------------- ; libusb-win32 files ;-------------------------------------------------------------------------- [SourceDisksNames] 1 = %SourceName% [SourceDisksFiles.x86] libusb0.sys = 1,x86 libusb0_x86.dll = 1,x86 [SourceDisksFiles.amd64] libusb0.sys = 1,amd64 libusb0.dll = 1,amd64 libusb0_x86.dll = 1,x86 [SourceDisksFiles.ia64] libusb0.sys = 1,ia64 libusb0.dll = 1,ia64 libusb0_x86.dll = 1,x86 [DestinationDirs] libusb_files_sys = 10,system32\drivers libusb_files_dll = 10,system32 libusb_files_dll_wow64 = 10,syswow64 libusb_files_dll_x86 = 10,system32 [libusb_files_sys] libusb0.sys [libusb_files_dll] libusb0.dll [libusb_files_dll_x86] libusb0.dll, libusb0_x86.dll [libusb_files_dll_wow64] libusb0.dll, libusb0_x86.dll ;-------------------------------------------------------------------------- ; libusb-win32 device driver ;-------------------------------------------------------------------------- [LIBUSB_WIN32_DEV.NT] CopyFiles = libusb_files_sys, libusb_files_dll_x86 [LIBUSB_WIN32_DEV.NTAMD64] CopyFiles = libusb_files_sys, libusb_files_dll, libusb_files_dll_wow64 [LIBUSB_WIN32_DEV.NTIA64] CopyFiles = libusb_files_sys, libusb_files_dll, libusb_files_dll_wow64 [LIBUSB_WIN32_DEV.NT.HW] DelReg = libusb_del_reg_hw AddReg = libusb_add_reg_hw [LIBUSB_WIN32_DEV.NTAMD64.HW] DelReg = libusb_del_reg_hw AddReg = libusb_add_reg_hw [LIBUSB_WIN32_DEV.NTIA64.HW] DelReg = libusb_del_reg_hw AddReg = libusb_add_reg_hw [LIBUSB_WIN32_DEV.NT.Services] AddService = libusb0, 0x00000002, libusb_add_service [LIBUSB_WIN32_DEV.NTAMD64.Services] AddService = libusb0, 0x00000002, libusb_add_service [LIBUSB_WIN32_DEV.NTIA64.Services] AddService = libusb0, 0x00000002, libusb_add_service ; 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 ; libusb-win32 device properties [libusb_add_reg_hw] HKR,,SurpriseRemovalOK,0x00010001,1 ; (Optional) the usb configuration value to select when this device ; is started. If this key does not exist the first config is selected. ;HKR,,InitialConfigValue,0x00010001,<your config value> ;-------------------------------------------------------------------------- ; libusb-win32 service ;-------------------------------------------------------------------------- [libusb_add_service] DisplayName = "libusb-win32 - Kernel Driver 08/05/2010 1.2.1.0" ServiceType = 1 StartType = 3 ErrorControl = 0 ServiceBinary = %12%\libusb0.sys ;-------------------------------------------------------------------------- ; libusb-win32 devices ;-------------------------------------------------------------------------- ; Hardware IDs in a 'Devices' section can be installed by libusb-win32 ; using usb_install_driver_np(), usb_install_driver_np_rundll(), or the ; inf-wizard utility. ; [Devices] %DeviceName% = LIBUSB_WIN32_DEV, USB\%DeviceID% [Devices.NT] %DeviceName% = LIBUSB_WIN32_DEV.NT, USB\%DeviceID% [Devices.NTAMD64] %DeviceName% = LIBUSB_WIN32_DEV.NTAMD64, USB\%DeviceID% [Devices.NTIA64] %DeviceName% = LIBUSB_WIN32_DEV.NTIA64, USB\%DeviceID% -- Xiaofan _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development