Add setup script for USB cable which works on modern distributions
This completely rewritten version of setup_pcusb works on modern distributions with newer udev versions which have a different rules-format and are not detected by the xilinx-version of the script. It only has the name in common with the xilinx-version.
This commit is contained in:
parent
7c932f66e1
commit
36f8b271f2
9
README
9
README
@ -66,6 +66,15 @@ the initial firmware has not been loaded (loading it changes the
|
||||
product-ID from another value to 8). To load the firmware follow
|
||||
these steps:
|
||||
|
||||
1. Run ./setup_pcusb in this directory, this should set up everything
|
||||
correctly:
|
||||
- When $XILINX is set correctly:
|
||||
$ ./setup_pcusb
|
||||
- When $XILINX is not set, and ISE is installed in /opt/Xilinx/13.1:
|
||||
$ ./setup_pcusb /opt/Xilinx/13.1/ISE_DS/ISE
|
||||
|
||||
Old instructions, use only when the above script did not work:
|
||||
|
||||
1. If you have no /etc/udev/rules.d/xusbdfwu.rules file, copy it from
|
||||
/path/to/ISE/bin/lin/xusbdfwu.rules to /etc/udev/rules.d/xusbdfwu.rules
|
||||
|
||||
|
45
setup_pcusb
Executable file
45
setup_pcusb
Executable file
@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ "${XILINX}" = "" ]; then
|
||||
if [ "${1}" = "" ]; then
|
||||
echo "Syntax: ${0} /path/to/ISE"
|
||||
exit 1
|
||||
fi
|
||||
root="${1}"
|
||||
else
|
||||
root="${XILINX}"
|
||||
fi
|
||||
|
||||
if [ "`id -u`" != "0" ]; then
|
||||
echo "You are not root, trying sudo..."
|
||||
ASROOT="sudo"
|
||||
else
|
||||
ASROOT=""
|
||||
fi
|
||||
|
||||
echo -n "Looking for USB cable files: "
|
||||
|
||||
dir=""
|
||||
|
||||
for check in "${root}/bin/lin64" "${root}/bin/lin"; do
|
||||
if [ -e "${check}/xusbdfwu.rules" ]; then
|
||||
dir="${check}"
|
||||
break;
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "${dir}" != "" ]; then
|
||||
echo "${dir}"
|
||||
else
|
||||
echo "NOT FOUND!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Copying formware to /usr/share:"
|
||||
for fw in "${dir}/"xusb*.hex; do
|
||||
$ASROOT cp -v "${fw}" "/usr/share/"
|
||||
done
|
||||
|
||||
echo "Installing udev rules:"
|
||||
$ASROOT bash -c "sed -e 's/TEMPNODE/tempnode/' -e 's/SYSFS/ATTRS/g' -e 's/BUS/SUBSYSTEMS/' \"${dir}/xusbdfwu.rules\" >/etc/udev/rules.d/xusbdfwu.rules"
|
||||
echo "done"
|
Reference in New Issue
Block a user