[meta-ti] [PATCH v2 3/7] beaglebone-capes: userspace support for capes

Koen Kooi koen at dominion.thruhere.net
Tue Apr 17 05:47:42 PDT 2012


Not everything can be done inside the kernel yet, so have a script that does the userspace portion.
Only the LCD3 cape is supported currently, more will follow later.

Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
---
 recipes-ti/beagleboard/beaglebone-capes.bb         |   23 ++++++++++++++++++++
 .../beagleboard/beaglebone-capes/cape.service      |    8 +++++++
 recipes-ti/beagleboard/beaglebone-capes/cape.sh    |   12 ++++++++++
 3 files changed, 43 insertions(+), 0 deletions(-)
 create mode 100644 recipes-ti/beagleboard/beaglebone-capes.bb
 create mode 100644 recipes-ti/beagleboard/beaglebone-capes/cape.service
 create mode 100755 recipes-ti/beagleboard/beaglebone-capes/cape.sh

diff --git a/recipes-ti/beagleboard/beaglebone-capes.bb b/recipes-ti/beagleboard/beaglebone-capes.bb
new file mode 100644
index 0000000..88d4a17
--- /dev/null
+++ b/recipes-ti/beagleboard/beaglebone-capes.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Userspace setup for beaglebone capes"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58"
+
+inherit allarch
+
+SRC_URI = "file://cape.service \
+           file://cape.sh \
+          "
+
+do_install() {
+	install -d ${D}${base_libdir}/systemd/system/
+	install -m 0644 ${WORKDIR}/cape.service ${D}${base_libdir}/systemd/system
+
+	install -d ${D}${base_libdir}/systemd/system/basic.target.wants
+	ln -sf ../cape.service ${D}${base_libdir}/systemd/system/basic.target.wants/
+
+	install -d ${D}${bindir}
+	install -m 0755 ${WORKDIR}/cape.sh ${D}${bindir}
+}
+
+FILES_${PN} += "${base_libdir}/systemd/system"
diff --git a/recipes-ti/beagleboard/beaglebone-capes/cape.service b/recipes-ti/beagleboard/beaglebone-capes/cape.service
new file mode 100644
index 0000000..44a2a38
--- /dev/null
+++ b/recipes-ti/beagleboard/beaglebone-capes/cape.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Beaglebone cape support
+
+[Service]
+ExecStart=/usr/bin/cape.sh
+
+[Install]
+WantedBy=basic.target
diff --git a/recipes-ti/beagleboard/beaglebone-capes/cape.sh b/recipes-ti/beagleboard/beaglebone-capes/cape.sh
new file mode 100755
index 0000000..69accff
--- /dev/null
+++ b/recipes-ti/beagleboard/beaglebone-capes/cape.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+for eeprom in /sys/bus/i2c/devices/3-005*/eeprom ; do
+	PARTNUMBER=$(hexdump -e '8/1 "%c"' $eeprom -s 58 -n16)
+	case $PARTNUMBER in
+		"BB-BONE-LCD3-01.")
+				echo "Turning on backlight for LCD3 cape"
+				i2cset -f -y 1 0x24 0x07 0x09
+				i2cset -f -y 1 0x24 0x08 0x60;;
+		*)
+				echo "unknown cape: $PARTNUMBER";;
+	esac
+done
-- 
1.7.2.5




More information about the meta-ti mailing list