/u1/reg/package/xilinx
./afs/slac/g/reseng/xilinx
.
xmd
ISE_DS/common/bin/lin64/install_script/install_drivers
root
fxload
installed
yum install fxload
' should do it, but need internet accesssourceforge
, but compilation is requiredrdusr108
/sbin/fxload
/usr/share/man/man8/fxload.8.gz
/usr/share/usb/a3load.hex
root:root
and read/execute privilege as neededcd
to installation directory and do './install_drivers
"2.4"
in the line 'TP_VERSION_2_4=`uname -r | grep -c "2.4"`
with "2\.4"
3D
instances; fix wrapped lines to be single lines; be sure to introduce spaces where they were deleted by the line wrapxusbdfwu.rules
should look like:
# version 0003 ATTR{idVendor}=="03fd", ATTR{idProduct}=="0008", MODE="666" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode" SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="03fd", ATTR{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode" |
sudo -s
)libusb
, libusb1
, fxload
installed (see above)
yum install libusb libusb1 fxload |
cp -r $XILINX/bin/lin64 /tmp/xilinx |
cp -r $XILINX/bin/lin /tmp/xilinx
/tmp/xilinx/lin64/setup_pcusb
:
udev
by changing the lines:
TP_USE_UDEV="0" TP_UDEV_ENABLED=`ps -e | grep -c udevd` |
TP_USE_UDEV="1" TP_UDEV_ENABLED="1" |
chmod +x setup_pcusb
)./setup_pcusb
)--File /usr/share/xusbdfwu.hex does not exist. --Error getting file version for /usr/share/xusbdfwu.hex. --Updating xusbdfwu.hex file. --File /usr/share/xusb_xlp.hex does not exist. --Error getting file version for /usr/share/xusb_xlp.hex. --Updating xusb_xlp.hex file. --File /usr/share/xusb_emb.hex does not exist. --Error getting file version for /usr/share/xusb_emb.hex. --Updating xusb_emb.hex file. --File /usr/share/xusb_xpr.hex does not exist. --Error getting file version for /usr/share/xusb_xpr.hex. --Updating xusb_xpr.hex file. --File /usr/share/xusb_xup.hex does not exist. --Error getting file version for /usr/share/xusb_xup.hex. --Updating xusb_xup.hex file. --File /usr/share/xusb_xp2.hex does not exist. --Error getting file version for /usr/share/xusb_xp2.hex. --Updating xusb_xp2.hex file. --File /usr/share/xusb_xse.hex does not exist. --Error getting file version for /usr/share/xusb_xse.hex. --Updating xusb_xse.hex file. --File /etc/udev/rules.d/xusbdfwu.rules exists. --File /etc/udev/rules.d/xusbdfwu.rules version = 0003 --File xusbdfwu.rules exists. --File xusbdfwu.rules version = 0003 --File xusbdfwu.rules is already updated. |
/usr/share
$ ls -l /usr/share/*.hex -rw-r--r-- 1 root root 21708 Feb 9 13:30 /usr/share/xusb_emb.hex -rw-r--r-- 1 root root 21708 Feb 9 13:30 /usr/share/xusb_xlp.hex -rw-r--r-- 1 root root 22956 Feb 9 13:30 /usr/share/xusb_xp2.hex -rw-r--r-- 1 root root 20740 Feb 9 13:30 /usr/share/xusb_xpr.hex -rw-r--r-- 1 root root 22956 Feb 9 13:30 /usr/share/xusb_xse.hex -rw-r--r-- 1 root root 21666 Feb 9 13:30 /usr/share/xusb_xup.hex -rw-r--r-- 1 root root 21666 Feb 9 13:30 /usr/share/xusbdfwu.hex |
/etc/udev/rules.d
$ ls -l /etc/udev/rules.d/xusbdfwu.rules -rw-r--r-- 1 root root 987 Feb 9 15:04 xusbdfwu.rules |
lsusb
to see whether a line like Bus 002 Device 013: ID 03fd:0008 Xilinx, Inc.
appears. You should find a file called /proc/bus/usb/<Bus>/<Device>
.dmesg
to look for errors. When it's working properly, you'll see something like:
usb 2-1: new high speed USB device using ehci_hcd and address 13 usb 2-1: New USB device found, idVendor=03fd, idProduct=0008 usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 2-1: Product: XILINX usb 2-1: Manufacturer: XILINX usb 2-1: configuration #2 chosen from 1 choice |
fxload
command found in /etc/udev/rules.d/xusbdfwu.rules
by hand. Use the one that has the same idVendor
and idProduct
given in the dmesg
output. Use /proc/bus/usb/<Bus>/<Device>
for $tempnode
.xmd
sessionsxmd
sessions can nominally run on one computer. See this and this.
-cable type xilinx_platformusb port usb2[#]
to your xmd.ini
or .xmdrc
file, where #
is the USB2 port number (from 1 to some large number) you wish to use./sbin/lsusb
lists USB devicesxrcableesn
xmd
command. This will list the ESN (Electronic Serial Number) for each cable and which usb2# port it is on. If you already know the ESN for the cable you want to connect to, you can replace the above "port usb2#" argument with "esn #####".xmd
process was aborted, it may have left the cable resources in an unclean state, preventing reconnecting to that cable. To clean these up, issue the xclean
xmd
command.
Doing this affects all JTAG dongles connected to the machine it is executed from! |