[yocto] [meta-raspberrypi][PATCH 1/1] pi-blaster: Added recipe

Alex J Lennon ajlennon at dynamicdevices.co.uk
Tue May 20 07:41:00 PDT 2014


This project enables PWM on the GPIO pins you request of a Raspberry Pi. The technique used is extremely efficient: does not use the CPU and gives very stable pulses.

Signed-off-by: Alex J Lennon <ajlennon at dynamicdevices.co.uk>
---
 recipes-devtools/pi-blaster/files/initscript.patch | 71 ++++++++++++++++++++++
 recipes-devtools/pi-blaster/pi-blaster.inc         | 36 +++++++++++
 recipes-devtools/pi-blaster/pi-blaster_git.bb      |  3 +
 3 files changed, 110 insertions(+)
 create mode 100644 recipes-devtools/pi-blaster/files/initscript.patch
 create mode 100644 recipes-devtools/pi-blaster/pi-blaster.inc
 create mode 100644 recipes-devtools/pi-blaster/pi-blaster_git.bb

diff --git a/recipes-devtools/pi-blaster/files/initscript.patch b/recipes-devtools/pi-blaster/files/initscript.patch
new file mode 100644
index 0000000..8545546
--- /dev/null
+++ b/recipes-devtools/pi-blaster/files/initscript.patch
@@ -0,0 +1,71 @@
+diff -ur git.org/pi-blaster.boot.sh git/pi-blaster.boot.sh
+--- git.org/pi-blaster.boot.sh	2014-05-20 14:49:44.378582168 +0100
++++ git/pi-blaster.boot.sh	2014-05-20 14:51:08.330582386 +0100
+@@ -28,12 +28,12 @@
+ [ -r /etc/default/$NAME ] && . /etc/default/$NAME
+ 
+ # Load the VERBOSE setting and other rcS variables
+-. /lib/init/vars.sh
++#. /lib/init/vars.sh
+ 
+ # Define LSB log_* functions.
+ # Depend on lsb-base (>= 3.2-14) to ensure that this file is present
+ # and status_of_proc is working.
+-. /lib/lsb/init-functions
++#. /lib/lsb/init-functions
+ 
+ #
+ # Function that starts the daemon/service
+@@ -77,48 +77,23 @@
+ 
+ case "$1" in
+   start)
+-	[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
++	[ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME"
+ 	do_start
+-	case "$?" in
+-		0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+-		2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+-	esac
+ 	;;
+   stop)
+-	[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
++	[ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME"
+ 	do_stop
+-	case "$?" in
+-		0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+-		2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+-	esac
+-	;;
+-  status)
+-	status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ 	;;
+   restart|force-reload)
+ 	#
+ 	# If the "reload" option is implemented then remove the
+ 	# 'force-reload' alias
+ 	#
+-	log_daemon_msg "Restarting $DESC" "$NAME"
+ 	do_stop
+-	case "$?" in
+-	  0|1)
+-		do_start
+-		case "$?" in
+-			0) log_end_msg 0 ;;
+-			1) log_end_msg 1 ;; # Old process is still running
+-			*) log_end_msg 1 ;; # Failed to start
+-		esac
+-		;;
+-	  *)
+-		# Failed to stop
+-		log_end_msg 1
+-		;;
+-	esac
++	do_start
+ 	;;
+   *)
+-	echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
++	echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2
+ 	exit 3
+ 	;;
+ esac
diff --git a/recipes-devtools/pi-blaster/pi-blaster.inc b/recipes-devtools/pi-blaster/pi-blaster.inc
new file mode 100644
index 0000000..85a6a4d
--- /dev/null
+++ b/recipes-devtools/pi-blaster/pi-blaster.inc
@@ -0,0 +1,36 @@
+DESCRIPTION = "This project enables PWM on the GPIO pins you request of a Raspberry Pi."
+HOMEPAGE = "https://github.com/sarfata/pi-blaster/"
+SECTION = "devel/libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://README.md;beginline=138;endline=151;md5=e0f0f92050a87a160939707c60940307"
+
+SRC_URI = "git://github.com/sarfata/pi-blaster \
+	   file://initscript.patch \
+"
+
+
+S = "${WORKDIR}/git"
+
+COMPATIBLE_MACHINE = "raspberrypi"
+
+inherit update-rc.d
+
+INITSCRIPT_PACKAGES = "${PN}"
+INITSCRIPT_NAME_${PN} = "pi-blaster.boot.sh"
+INITSCRIPT_PARAMS_${PN} = "defaults 15 85"
+
+do_configure() {
+  sed -e "s|gcc|${CC}|g" -i Makefile
+}
+
+do_compile() {
+  oe_runmake 
+}
+
+do_install() {
+  install -d ${D}${sbindir}
+  install -m 0755 ${S}/pi-blaster ${D}${sbindir}
+  install -d ${D}${sysconfdir}
+  install -d ${D}${sysconfdir}/init.d
+  install -m 0755 ${S}/pi-blaster.boot.sh ${D}${sysconfdir}/init.d
+}
diff --git a/recipes-devtools/pi-blaster/pi-blaster_git.bb b/recipes-devtools/pi-blaster/pi-blaster_git.bb
new file mode 100644
index 0000000..25eb382
--- /dev/null
+++ b/recipes-devtools/pi-blaster/pi-blaster_git.bb
@@ -0,0 +1,3 @@
+require pi-blaster.inc
+
+SRCREV = "177cef81774d6df5c6284c198ff818515281db14"
-- 
1.9.3




More information about the yocto mailing list