summaryrefslogtreecommitdiff
path: root/xpp/xpp_fxloader
diff options
context:
space:
mode:
Diffstat (limited to 'xpp/xpp_fxloader')
-rw-r--r--xpp/xpp_fxloader24
1 files changed, 24 insertions, 0 deletions
diff --git a/xpp/xpp_fxloader b/xpp/xpp_fxloader
new file mode 100644
index 0000000..a46c156
--- /dev/null
+++ b/xpp/xpp_fxloader
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+FIRMWARE="/etc/xortel/FPGA_XPD.hex"
+me=`basename $0`
+
+# to run manually, pass the parameter 'xppdetect'
+V_ID=04b4
+P_ID=8613
+if [ "$1" = 'xppdetect' ]; then
+ DEVICES=`lsusb | tr -d : | awk "/ ID $V_ID$P_ID /{printf \"/proc/bus/usb/%s/%s \",\\$2,\\$4}"`
+ echo "Loading firmware for $DEVICES"
+ for dev in $DEVICES
+ do
+ fxload -t fx2 -D $dev -I $FIRMWARE
+ done
+ exit 0
+fi
+
+if [ "$ACTION" = "add" ] && [ -f "$DEVICE" ]
+then
+ logger -i -t "$me" "Loading firmware '$FIRMWARE' into '$DEVICE'"
+ fxload -t fx2 -D "$DEVICE" -I "$FIRMWARE" || exit 1
+fi
+