[oe-commits] Denis 'Gnutoo' Carikli : udev-141: added support for buglabs's bug device

git version control git at git.openembedded.org
Fri Dec 25 19:58:01 UTC 2009


Module: openembedded.git
Branch: refs/remotes/origin/org.openembedded.dev
Commit: 7e15a70457ea2f1327162d0a3050c7e6eb95975c
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=7e15a70457ea2f1327162d0a3050c7e6eb95975c

Author: Denis 'Gnutoo' Carikli <GNUtoo at no-log.org>
Date:   Thu Dec 17 18:37:22 2009 +0100

udev-141: added support for buglabs's bug device

The udev configurations files are needed for Xorg configuration
  for buglabs's bug device that will be commited later,
  in order to find the right device nodes for the touchscreens

Note that the script creating the bmi(Bug module interface)
  event pipe has not been commented out,because it will be needed
  when the java bindings for the bug device will be in openembedded

The udev rules were took from buglabs svn:
 svn://svn.buglabs.net/bug/branches/hrw/oe-stable-2009/
 inside they are in meta-bug/packages/udev-rules/bug-udev/

---

 recipes/udev/udev-141/bug/10-mx31.rules    |   49 ++++++++++++++++++++++++++++
 recipes/udev/udev-141/bug/30-BUG.rules     |   26 +++++++++++++++
 recipes/udev/udev-141/bug/bmi_eventpipe.sh |    8 ++++
 recipes/udev/udev_141.bb                   |   16 ++++++++-
 4 files changed, 98 insertions(+), 1 deletions(-)

diff --git a/recipes/udev/udev-141/bug/10-mx31.rules b/recipes/udev/udev-141/bug/10-mx31.rules
new file mode 100644
index 0000000..de427fc
--- /dev/null
+++ b/recipes/udev/udev-141/bug/10-mx31.rules
@@ -0,0 +1,49 @@
+KERNEL=="ttyS[0-9]",	NAME="tts/%n",		SYMLINK+="tts%n"
+KERNEL=="ttymxc[0-9]",	NAME="ttymxc/%n",	SYMLINK+="ttymxc%n"
+
+KERNEL=="mxc_mu[0-9]",	NAME="mxc_mu/%n",	SYMLINK+="mxc_mu%n"
+KERNEL=="fb*",		NAME="fb/%n",		SYMLINK+="fb%n"
+KERNEL=="i2c*",		NAME="i2c/%n"
+KERNEL=="mxc_ipc*",	NAME="mxc_ipc/%n"
+KERNEL=="video*",	NAME="v4l/video%n"
+
+KERNEL=="rtc",		NAME="misc/rtc"
+KERNEL=="watchdog",	NAME="misc/watchdog"
+
+KERNEL=="mc13783_adc",	NAME="mc13783_adc",	SYMLINK+="ts"
+KERNEL=="pmic_adc",	NAME="pmic_adc",	SYMLINK+="ts"
+
+# The long class name gets cut off to be mc13783_connectiv in 
+# /sys/class/mc13783_connectivity/mc13783_connectivit
+KERNEL=="mc13783_connectiv*",	NAME="mc13783_connectivity"
+
+KERNEL=="mxc_ssi[0-9]*",	NAME="mxc_ssi/%n",	SYMLINK+="mxc_ssi%n"
+KERNEL=="spi[0-9]*",	NAME="spi/%n",		SYMLINK+="spi%n"
+
+KERNEL=="mtdblock*",	NAME="mtdblock/%n"	SYMLINK+="mtdblock%n"
+KERNEL=="mtd[0-9]",	NAME="mtd/%n"
+
+# A more elegant way of doing this must exist...
+KERNEL=="mtd0ro",	NAME="mtd/0ro"
+KERNEL=="mtd1ro",	NAME="mtd/1ro"
+KERNEL=="mtd2ro",	NAME="mtd/2ro"
+KERNEL=="mtd3ro",	NAME="mtd/3ro"
+KERNEL=="mtd4ro",	NAME="mtd/4ro"
+KERNEL=="mtd5ro",	NAME="mtd/5ro"
+KERNEL=="mtd6ro",	NAME="mtd/6ro"
+KERNEL=="mtd7ro",	NAME="mtd/7ro"
+KERNEL=="mtd8ro",	NAME="mtd/8ro"
+KERNEL=="mtd9ro",	NAME="mtd/9ro"
+
+# Note that we want /dev/dsp linked to /dev/sound/dsp1...
+KERNEL=="dsp",		NAME="sound/dsp"
+KERNEL=="dspW",		NAME="sound/dspW"
+KERNEL=="dsp1",		NAME="sound/dsp1",	SYMLINK+="dsp"
+KERNEL=="mixer",		NAME="sound/mixer",	SYMLINK+="mixer"
+KERNEL=="sequencer",	NAME="sound/sequencer"
+KERNEL=="sequencer2",	NAME="sound/sequencer2"
+
+KERNEL=="ram[0-9]*",	NAME="ram/%n",		SYMLINK+="ram%n"
+
+KERNEL=="dvfs_dptc",	NAME="dvfs_dptc",	SYMLINK+="dptc dvfs"
+
diff --git a/recipes/udev/udev-141/bug/30-BUG.rules b/recipes/udev/udev-141/bug/30-BUG.rules
new file mode 100644
index 0000000..06faa6b
--- /dev/null
+++ b/recipes/udev/udev-141/bug/30-BUG.rules
@@ -0,0 +1,26 @@
+##
+## BUG/BMI specific
+##
+KERNEL=="event*", ATTRS{name}=="bugnav", SYMLINK+="input/bugnav"
+KERNEL=="event*", ATTRS{name}=="bmi_motion", SYMLINK+="input/bmi_motion"
+KERNEL=="event*", ATTRS{name}=="bug_cam", SYMLINK+="input/bmi_cam"
+KERNEL=="event*", ATTRS{name}=="bmi_audio_status_m1", SYMLINK+="input/bmi_audio_m1"
+KERNEL=="event*", ATTRS{name}=="bmi_audio_status_m2", SYMLINK+="input/bmi_audio_m2"
+KERNEL=="event*", ATTRS{name}=="bmi_audio_status_m3", SYMLINK+="input/bmi_audio_m3"
+KERNEL=="event*", ATTRS{name}=="bmi_audio_status_m4", SYMLINK+="input/bmi_audio_m4"
+DEVPATH=="/devices/platform/bugfb.0", SYMLINK+="bugfb"
+KERNEL=="rtc0", SYMLINK+="rtc"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts0", SYMLINK+="input/bmi_lcd_ts0"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts1", SYMLINK+="input/bmi_lcd_ts1"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts2", SYMLINK+="input/bmi_lcd_ts2"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts3", SYMLINK+="input/bmi_lcd_ts3"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts4", SYMLINK+="input/bmi_lcd_ts4"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts5", SYMLINK+="input/bmi_lcd_ts5"
+KERNEL=="event*", ATTRS{name}=="bmi_lcd_ts6", SYMLINK+="input/bmi_lcd_ts6"
+ACTION=="add", DEVPATH=="/devices/conn*", RUN+="/bin/sh /etc/udev/scripts/bmi_eventpipe.sh"
+ACTION=="remove", DEVPATH=="/devices/conn*", RUN+="/bin/sh /etc/udev/scripts/bmi_eventpipe.sh"
+#
+# For USB PBPSD, which we've arbitrarily decided will be module F001
+#
+ACTION=="remove", SUBSYSTEM=="usb", DRIVERS=="psd_driver", ENV{BMIBUS_PRODUCT}="F001", ENV{BMIBUS_SLOT}="%n", RUN+="/bin/sh /etc/udev/scripts/bmi_eventpipe.sh"
+ACTION=="add", SUBSYSTEM=="usb", DRIVERS=="psd_driver", ENV{BMIBUS_PRODUCT}="F001", ENV{BMIBUS_SLOT}="%n", RUN+="/bin/sh /etc/udev/scripts/bmi_eventpipe.sh"
diff --git a/recipes/udev/udev-141/bug/bmi_eventpipe.sh b/recipes/udev/udev-141/bug/bmi_eventpipe.sh
new file mode 100644
index 0000000..acbae56
--- /dev/null
+++ b/recipes/udev/udev-141/bug/bmi_eventpipe.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+# This script passes BMI state variables to the running JVM.
+#
+if [ ${BMIBUS_PRODUCT} != "" ] && [ ${BMIBUS_SLOT} != "" ] && [ ${ACTION} != "" ];
+then                                                                            
+        echo $BMIBUS_PRODUCT 0 $BMIBUS_SLOT $ACTION > /tmp/eventpipe            
+fi
diff --git a/recipes/udev/udev_141.bb b/recipes/udev/udev_141.bb
index e07150d..00ba971 100644
--- a/recipes/udev/udev_141.bb
+++ b/recipes/udev/udev_141.bb
@@ -6,7 +6,7 @@ LICENSE = "GPL"
 # Untested
 DEFAULT_PREFERENCE = "-1"
 
-PR = "r18"
+PR = "r19"
 
 # needed for init.d script
 RDEPENDS_${PN} += "udev-utils"
@@ -29,6 +29,14 @@ SRC_URI += " \
 SRC_URI_append_h2200 = " file://50-hostap_cs.rules "
 PACKAGE_ARCH_h2200 = "h2200"
 
+#buglabs's bug device
+SRC_URI_append_bug = " \
+       file://30-BUG.rules \
+       file://10-mx31.rules \
+       file://bmi_eventpipe.sh "
+
+PACKAGE_ARCH_bug = "bug"
+
 inherit update-rc.d autotools_stage
 
 # Put stuff in /lib and /sbin
@@ -98,6 +106,12 @@ do_install_append_h2200() {
 	install -m 0644 ${WORKDIR}/50-hostap_cs.rules         ${D}${sysconfdir}/udev/rules.d/50-hostap_cs.rules
 }
 
+do_install_append_bug() {
+	install -m 0644 ${WORKDIR}/30-BUG.rules ${D}${sysconfdir}/udev/rules.d/30-BUG.rules
+	install -m 0644 ${WORKDIR}/10-mx31.rules ${D}${sysconfdir}/udev/rules.d/10-mx31.rules
+	install -m 0644 ${WORKDIR}/bmi_eventpipe.sh ${D}${sysconfdir}/udev/scripts/bmi_eventpipe.sh
+}
+
 pkg_postinst_${PN}_append() {
 if [ -d $D/lib/udev/rules.d ] ; then
 	echo "$D/lib/udev/rules.d is not a symlink, fixing that"





More information about the Openembedded-commits mailing list