The Freeescale support was very gently, so they are provided a free replacement for my dead USB-TAP. Of course I have disassembled it to check that did they added ESD protection to the USB lines.
Yes they did:
Yes they did:
The Freeescale support was very gently, so they are provided a free replacement for my dead USB-TAP. Of course I have disassembled it to check that did they added ESD protection to the USB lines.
Yes they did: I have tried to use the Lattice ispVM under Ubuntu 11.04, with the Lattice USB download cable, but I have to run it as root, even after adding the udev rules mentioned in the FAQ.
After some strace analyzing I have figured out that it is trying to open the /dev/bus/usb/{roothub}/{devide} nodes. Since then the download cable's node was read only it failed. I have written the following udev rule to the /etc/udev/rules.d/51-lattice.rules file inspired by my AVR doper's rule:
The UrJTAG uses a libtool wrapper for starting, so debugging with GDB is a bit tricky.
You should debug the src/apps/jtag/.libs/lt-jtag binary. But it does not appears right after building it, the wrapper script creates it if not exists. So ran ./src/apps/jtag/jtag first. Figuring out taken me some time, I hope it will helps someone. So execute
in the trunk and enjoy debugging . Preface: I will call new bus "foo" in this example, so replace the foo with your bus name in the examples case sensitive.
1. Write the bus code. (Implement the necessary functions, and members for the URJ_BUS_DRIVER structure. see. include/urjtag/bus_driver.h) 2. Add the bus to the URJ_DRIVER_SET([bus], []) array in the urjtag/configure.ac 3. Add the following code the urjtag/src/bus/buses_list.h: #ifdef ENABLE_BUS_FOO _URJ_BUS(foo) #endif Please keep this list sorted alphabetically as it noted in the header. 4. Add the following snipplet to the urjtag/src/bus/Makefile.am: if ENABLE_BUS_FOO libbus_la_SOURCES += foo.c endif 5. Now you are ready to make the UrJTAG with the new bus. Run ./autogen.sh && make in the source directory. |