accelges_svn.bb: move to openmoko-3rdparty and make it work again
authorDenis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Fri, 4 Mar 2011 15:00:07 +0000 (16:00 +0100)
committerDenis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Fri, 4 Mar 2011 15:06:38 +0000 (16:06 +0100)
On recent kernels,the openmoko accelerometers input node moved:
  /dev/input/event2 -> /dev/input/event3
  /dev/input/event3 -> /dev/input/event4
And the reporting format went from relative to absolute.

Thanks a lot elisa42 from #openmoko-cdevel on Freenode on irc:
  <elisa42> GNUtoo|laptop: accelges is probably not working because they use event2/3 which is now event3/4. i think we should report this upstream
  [...]
  <elisa42> GNUtoo|laptop: read http://wiki.openmoko.org/wiki/Accelerometer_data_retrieval#Data_structure to understand what rel means

Note that upstream doesn't exist anymore: accelges was developped as
  a google summer of code by someone that now works at Microsoft
  ( http://www.borza.ro/ for more details) .

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
recipes/openmoko-3rdparty/accelges/support_newer_kernels.patch [new file with mode: 0644]
recipes/openmoko-3rdparty/accelges_svn.bb [moved from recipes/accelges/accelges_svn.bb with 95% similarity]

diff --git a/recipes/openmoko-3rdparty/accelges/support_newer_kernels.patch b/recipes/openmoko-3rdparty/accelges/support_newer_kernels.patch
new file mode 100644 (file)
index 0000000..9c6fa2a
--- /dev/null
@@ -0,0 +1,25 @@
+Index: trunk/accelneo/src/accelneo.c
+===================================================================
+--- trunk.orig/accelneo/src/accelneo.c 2011-03-04 15:46:24.924494001 +0100
++++ trunk/accelneo/src/accelneo.c      2011-03-04 15:46:47.554494001 +0100
+@@ -35,9 +35,9 @@
+ {
+       /* open one of the two accelerometers (top or bottom) */
+       if (w_accel == neo_accel2) {
+-              neo->accel_desc = open("/dev/input/event2", O_RDONLY);
+-      } else if (w_accel == neo_accel3) {
+               neo->accel_desc = open("/dev/input/event3", O_RDONLY);
++      } else if (w_accel == neo_accel3) {
++              neo->accel_desc = open("/dev/input/event4", O_RDONLY);
+       } else {
+               neo->accel_desc = -1;
+       }
+@@ -91,7 +91,7 @@
+                * Neo sends three reports on X, Y, and Z with rel = 2
+                * and another one (as a separator) with rel = 0 
+                */
+-              if (rel == 2)
++              if (rel == 3)
+               {
+                       unsigned short int axis_ind = *(short int *)(report + 10);
+                       /* receives signed acceleration in milli-G */
similarity index 95%
rename from recipes/accelges/accelges_svn.bb
rename to recipes/openmoko-3rdparty/accelges_svn.bb
index 3afc166..12416b3 100644 (file)
@@ -5,14 +5,15 @@ LICENSE = "GPL"
 SECTION = "openmoko/utilities"
 
 PV = "0.2+svnr${SRCPV}"
-PR = "r4"
+PR = "r5"
 PE = "1"
 SRCREV = "206"
 
 DEPENDS = "curl dbus dbus-glib gtk+ libglade libnotify libxrandr notification-daemon"
 RDEPENDS_${PN} = "notification-daemon"
 
-SRC_URI = "svn://accelges.googlecode.com/svn/;module=trunk;proto=http"
+SRC_URI = "svn://accelges.googlecode.com/svn/;module=trunk;proto=http \
+           file://support_newer_kernels.patch;apply=yes"
 S = "${WORKDIR}/trunk"
 
 inherit autotools update-rc.d