diff options
author | Rob Austein <sra@hactrn.net> | 2015-07-05 19:43:38 -0400 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2015-07-05 19:43:38 -0400 |
commit | e8f1bf514c1819cb9942d77bb624db4f6703fa8b (patch) | |
tree | d6b19edf237f3e85d4063881a83c849bfd4260d8 /core/debian | |
parent | 3f25e1bf5509f584f455e0e3ce369bc51b763f85 (diff) |
Add Debian packaging and startup scripts to load Novena FPGA automatically.
Diffstat (limited to 'core/debian')
-rw-r--r-- | core/debian/control | 2 | ||||
-rw-r--r-- | core/debian/cryptech-novena-rtl.default | 3 | ||||
-rw-r--r-- | core/debian/cryptech-novena-rtl.init | 36 | ||||
-rw-r--r-- | core/debian/cryptech-novena-rtl.postinst | 47 |
4 files changed, 87 insertions, 1 deletions
diff --git a/core/debian/control b/core/debian/control index 84a4e91..3a3de4c 100644 --- a/core/debian/control +++ b/core/debian/control @@ -8,7 +8,7 @@ Homepage: http://trac.cryptech.is/wiki Package: cryptech-novena-rtl Architecture: all -Depends: libc6 (>= 2.13), ${misc:Depends} +Depends: libc6 (>= 2.13), ${misc:Depends} cryptech-novena-sw (= ${binary:Version}) Description: Cryptech open-source crypto hardware "cryptech-novena-rtl" contains FGPA configuration (RTL bitstream) for the Cryptech project on the Novena PVT-1 development board. diff --git a/core/debian/cryptech-novena-rtl.default b/core/debian/cryptech-novena-rtl.default new file mode 100644 index 0000000..1261cef --- /dev/null +++ b/core/debian/cryptech-novena-rtl.default @@ -0,0 +1,3 @@ +# Configuration parameters for cryptech-novena-rtl package. + +fpga_bitstream=/usr/share/cryptech/novena_eim.bit diff --git a/core/debian/cryptech-novena-rtl.init b/core/debian/cryptech-novena-rtl.init new file mode 100644 index 0000000..68f5c8c --- /dev/null +++ b/core/debian/cryptech-novena-rtl.init @@ -0,0 +1,36 @@ +#!/bin/sh - +### BEGIN INIT INFO +# Provides: cryptech-novena-rtl +# Required-Start: $remote_fs +# Required-Stop: +# Should-Start: +# Default-Start: S +# Default-Stop: +# Short-Description: Reload Novena FPGA on boot. +# Description: Reload Novena FPGA on boot. +### END INIT INFO + +PATH=/sbin:/usr/sbin:/bin:/usr/bin + +. /lib/lsb/init-functions +. /etc/default/cryptech-novena-rtl + +do_start () { + log_daemon_msg "Loading Novena FPGA from ${fpga_bitstream}" + load_novena_fpga "${fpga_bitstream}" +} + +case "$1" in + start|restart|reload|force-reload|"") + do_start + ;; + stop) + # No-op + ;; + *) + echo "Usage: bootmisc.sh [start|stop]" >&2 + exit 3 + ;; +esac + +: diff --git a/core/debian/cryptech-novena-rtl.postinst b/core/debian/cryptech-novena-rtl.postinst new file mode 100644 index 0000000..d36653a --- /dev/null +++ b/core/debian/cryptech-novena-rtl.postinst @@ -0,0 +1,47 @@ +#!/bin/sh - +# postinst script for cryptech-novena-rtl +# +# see: dh_installdeb(1) + +set -e + +# Perhaps this should run our /etc/init.d script in order to localize +# the voodoo? + +load_fpga() { + load_novena_fpga /usr/share/cryptech/novena_eim.bit +} + +# summary of how this script can be called: +# * <postinst> `configure' <most-recently-configured-version> +# * <old-postinst> `abort-upgrade' <new version> +# * <conflictor's-postinst> `abort-remove' `in-favour' <package> +# <new-version> +# * <postinst> `abort-remove' +# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' +# <failed-install-package> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + configure) + load_fpga + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 |