diff options
Diffstat (limited to 'recipes-navigation')
-rw-r--r-- | recipes-navigation/gpsd/gpsd/sw-device-hook | 23 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd_%.bbappend | 9 |
2 files changed, 32 insertions, 0 deletions
diff --git a/recipes-navigation/gpsd/gpsd/sw-device-hook b/recipes-navigation/gpsd/gpsd/sw-device-hook new file mode 100644 index 0000000..e1e6f7a --- /dev/null +++ b/recipes-navigation/gpsd/gpsd/sw-device-hook @@ -0,0 +1,23 @@ +#!/bin/sh + +# Figure out the parent usb device +USBDEV=`ls -l "$1" |sed -ne 's!^c[^ ]* [0-9]* [^ ]* [^ ]* \([0-9]*\), \([0-9]*\) .*!/sys/dev/char/\1:\2/device/../..!p'` + +# Silently ignore any non-USB ports +if [ ! -r "$USBDEV/idVendor" ] || [ ! -r "$USBDEV/idProduct" ]; then + exit 0 +fi + +VID=`cat "$USBDEV/idVendor"` +PID=`cat "$USBDEV/idProduct"` +case "$2" in + ACTIVATE) CMD=START ;; + *) CMD=STOP ;; +esac + +case "$VID:$PID" in + "1199:9071"|"1199:9079") echo \$GPS_$CMD >"$1" ;; + *) ;; +esac + +exit 0 diff --git a/recipes-navigation/gpsd/gpsd_%.bbappend b/recipes-navigation/gpsd/gpsd_%.bbappend new file mode 100644 index 0000000..80e91f0 --- /dev/null +++ b/recipes-navigation/gpsd/gpsd_%.bbappend @@ -0,0 +1,9 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +SRC_URI += "file://sw-device-hook" + +do_install_append() { + # Install device-hook script for starting NMEA output on Sierra Wireless modems + install -d ${D}${sysconfdir}/gpsd + install -m 0755 ${WORKDIR}/sw-device-hook ${D}${sysconfdir}/gpsd/device-hook +} |