diff options
Diffstat (limited to 'packages/gsm')
-rw-r--r-- | packages/gsm/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/gsm/files/fic-gta01/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/gsm/files/fic-gta01/gsmd | 109 | ||||
-rw-r--r-- | packages/gsm/libgsmd_svn.bb | 17 |
4 files changed, 122 insertions, 4 deletions
diff --git a/packages/gsm/files/.mtn2git_empty b/packages/gsm/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gsm/files/.mtn2git_empty diff --git a/packages/gsm/files/fic-gta01/.mtn2git_empty b/packages/gsm/files/fic-gta01/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gsm/files/fic-gta01/.mtn2git_empty diff --git a/packages/gsm/files/fic-gta01/gsmd b/packages/gsm/files/fic-gta01/gsmd new file mode 100644 index 0000000000..f5e54dc06d --- /dev/null +++ b/packages/gsm/files/fic-gta01/gsmd @@ -0,0 +1,109 @@ +#!/bin/sh +# +# gsmd This shell script starts and stops gsmd. +# +# chkconfig: 345 90 40 +# description: Gsmd manages access to a serial- or USB-connected GSM +# processname: gsmd + +# If you must specify special options, uncomment and modify the next line +GSMD_OPTS="-s 115200 -F" +# If your GSM device needs to be powered up, uncommend and modify the next line +GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on" +GSM_DEV="/dev/ttySAC0" + +# Source function library. +#. /etc/rc.d/init.d/functions + +RETVAL=0 +prog="gsmd" + +start() { + # FIXME add check whether GSM_POW is set at all, otherwise don't try to power on + # Power on GSM device + if [ -e "${GSM_POW} ] + then + echo -n "Powering up GSM device..." + echo "1" > ${GSM_POW} + sleep 1 + echo "done" + else + echo "GSM device not found. Aborting startup" + return false + fi + # Start daemons. + echo -n "Starting $prog: " + # We don't use the daemon function here because of a known bug + # in initlog -- it spuriously returns a nonzero status when + # starting daemons that fork themselves. See + # http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=130629 + # for discussion. Fortunately: + # + # 1. gsmd startup can't fail, or at least not in the absence of + # much larger resource-exhaustion problems that would be very obvious. + # + # 2. We don't need all the logging crud that daemon/initlog sets + # up -- gsmd does its own syslog calls. + # + if [ -e "${GPS_DEV}" ] + then + chown uucp.uucp ${GSM_DEV} + mkdir -fp /usr/spool/uucp + chown uucp.uucp /usr/spool/uucp + stty -F /dev/ttySAC0 crtscts + gsmd -p ${GPS_DEV} ${GPSD_OPTS} + echo "success" + else + # User needs to symlink ${GPS_DEV} to the right thing + echo "No ${GPS_DEV} device, aborting gsmd startup." + fi + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/gsmd + return $RETVAL +} + +stop() { + # Stop daemons. + echo -n "Shutting down $prog: " + killall gsmd +# killproc gsmd + RETVAL=$? + echo + if [ $RETVAL -eq 0 ] + then + rm -f /var/lock/subsys/gsmd; + fi + return $RETVAL +} + +# See how we were called. +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + RETVAL=$? + ;; + condrestart) + if [ -f /var/lock/subsys/gsmd ]; then + stop + start + RETVAL=$? + fi + ;; + status) +# status gsmd +# RETVAL=$? + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|status}" + exit 1 +esac + +exit $RETVAL diff --git a/packages/gsm/libgsmd_svn.bb b/packages/gsm/libgsmd_svn.bb index 860adf3b0a..99a08436ed 100644 --- a/packages/gsm/libgsmd_svn.bb +++ b/packages/gsm/libgsmd_svn.bb @@ -4,21 +4,30 @@ LICENSE = "GPL" SECTION = "libs/gsm" PROVIDES += "gsmd" PV = "0.0+svn${SRCDATE}" -PR = "r2" +PR = "r3" -SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http" +SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http \ + file://gsmd" S = "${WORKDIR}/gsm" -inherit autotools pkgconfig +inherit autotools pkgconfig update-rc.d + +INITSCRIPT_NAME = "gsmd" +INITSCRIPT_PARAMS = "defaults 35" do_stage() { autotools_stage_all } +do_install_append() { + install -d ${D}/${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/gsmd ${D}/${sysconfdir}/init.d/ +} + PACKAGES =+ "${PN}-tools gsmd" RDEPENDS_${PN} = "gsmd" FILES_${PN}-tools = "${bindir}/*" -FILES_gsmd = "${sbindir}/gsmd" +FILES_gsmd = "${sbindir}/gsmd ${sysconfdir}" PACKAGES_DYNAMIC = "libgsmd* gsmd" |