MM wrote:
> Thanks a lot Ken!
>> Depending what version of Kubuntu you're running, you may have other
>> troubles. For example, if you get errors referencing GLIBC you need
>> to set the environment variable LD_ASSUME_KERNEL=2.4.7 (this is not a
>> problem in recent releases of ISE/EDK).
> I am running Kubuntu 7.04, 32-bit version and the 9.1 version of the Xilinx
> tools. I don't recall seeing this error...
Good, that combination should be fine (one of my systems is Ubuntu 6.10,
I had no trouble).
>> Getting a download cable to work is also a treat. I recommend ignoring
>> the Xilinx drivers and use the userspace driver from:
>> http://www.rmdir.de/~michael/xilinx/
> That's really a great advice! I was just in the middle of the process of
> trying to install Xilinx drivers :) Hopefully I haven't broken anything yet
> by half-working scripts :)
You'll still need the bit of the installation that handles usb firmware
loading (fxload) and permissions settings, but a variant of it.
At the moment, the only Xilinx-related stuff in my system directories
is a file /etc/udev/rules.d/xusbdfwu.rules containing the following:
----VVV
SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", NAME="windrvr6"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I
/usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I
/usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="000b", RUN+="/sbin/fxload -v -t fx2 -I
/usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I
/usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I
/usr/share/xusbdfwu.hex -D $TEMPNODE"
ACTION=="add", BUS=="usb", SYSFS{idVendor}=="03fd",
SYSFS{idProduct}=="0008", MODE="0666"
----^^^
Since the above is almost certainly mangled by my mailer, I separated
what should be single lines in the file with blank lines. In other
words, there is one line that starts with SYSFS{idVendor} and
ends with "windrvr6" (I think that line is actually not necessary,
but it's harmless), the next line starts with BUS=="usb" and ends
with $TEMPNODE, four more similar lines with different product IDs,
then a line that starts with ACTION and ends with "0666".
Note that the name of the file seems to be relavent - udev processes
rule files in order of filename, and getting the Xilinx stuff too early
seems to not work (i.e. I initially had this in a file "10-custom.rules"
but it didn't work there). I don't understand udev well enough to
know why that makes it break.
Anyway, since you're just starting to install the cable drivers I'll
follow up my own post with a description of how I got the userspace
shim to work transparently..
>> I have it working for impact, chipscope analyzer, and XMD, at least
>> in all modes I actually use. I can elaborate further all the fun I
>> had getting it to work on a 64-bit system, if that's something you'll
>> need (post here but CC my email to be sure I see it; I don't check
>> every day).
> It's interesting. I was told in the past by Xilinx that EDK wasn't working
> on 64-bit systems... Have they fixed it in 9.1 or have you found a
> workaround?
EDK does not work with a 64-bit ISE installation. I have both ISE and
EDK installed as 32-bit applications. The OS is the x86_64 version of
SuSE 9.3; the fact that all of the system binaries are 64 bit caused me
some pain getting it installed and getting the userspace cable driver to
work (to force the 32-bit ISE install, don't run setup at the top of the
installation directory; cd to bin/lin and run it from there. That is
also needed for all the service packs and IP updates). I have a 64-bit
ISE installation standing by should I need it, but I haven't yet had a
design big enough where it matters. [Note that running 32 bit will be a
bit faster, measurably so for long runs, due to the smaller pointer
sizes getting fetched more efficiently by the CPU].
>> In any case, it works great on my Linux boxen which is a relief since
>> EDK does not get along with my laptop at all (multiple applications
>> built on top of Cygwin are not playing nice at all).
>> Good luck, and drop me a note if you need more help.
> Thanks again,
> /Mikhail