[oe] [PATCH 1/2] udev-141: added support for buglabs's bug device
Denis 'Gnutoo' Carikli
GNUtoo at no-log.org
Thu Dec 17 23:08:42 UTC 2009
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
Signed-off-by: Denis 'Gnutoo' Carikli <GNUtoo at no-log.org>
---
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(-)
create mode 100644 recipes/udev/udev-141/bug/10-mx31.rules
create mode 100644 recipes/udev/udev-141/bug/30-BUG.rules
create mode 100644 recipes/udev/udev-141/bug/bmi_eventpipe.sh
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"
--
1.6.4.4
More information about the Openembedded-devel
mailing list