From e2bbd05483795f82106dd43a577037fd3bda8ee6 Mon Sep 17 00:00:00 2001
From: Greg Frost <gregfrost1@bigpond.com>
Date: Sun, 19 Jul 2009 08:59:29 +0930
Subject: lirc: prelim dvico dual4 rev 2 remote work

---
 abs/core-testing/lirc/PKGBUILD      | 13 +++++++++----
 abs/core-testing/lirc/dvicoIR.rules | 14 ++++++++++++--
 abs/core-testing/lirc/lirc.fdi      | 11 +++++++++++
 3 files changed, 32 insertions(+), 6 deletions(-)
 create mode 100644 abs/core-testing/lirc/lirc.fdi

diff --git a/abs/core-testing/lirc/PKGBUILD b/abs/core-testing/lirc/PKGBUILD
index 30c5052..6c5cbf6 100644
--- a/abs/core-testing/lirc/PKGBUILD
+++ b/abs/core-testing/lirc/PKGBUILD
@@ -3,7 +3,7 @@
 
 pkgname=lirc
 pkgver=0.8.5CVS
-pkgrel=12
+pkgrel=14
 _kernver=2.6.28-LinHES
 pkgdesc="Linux Infrared Remote Control kernel modules for stock arch kernel"
 arch=(i686 x86_64)
@@ -22,7 +22,8 @@ source=(http://www.blushingpenguin.com/mark/lmilk/lirc-0.8.5-CVS-pvr150.tar.bz2
 	lirc_mod_mce.patch
 	hw_commandir.c
 	hw_commandir.h
-	dvicoIR.rules)
+	dvicoIR.rules
+        lirc.fdi)
 
 build() {
 	# configure
@@ -67,8 +68,11 @@ build() {
 	rm $startdir/pkg/lib/modules/$_kernver/kernel/drivers/misc/commandir.ko
 
 	# Add a udev rule for the DVICO remote so that if there is more than 
-	# one hiddev device, the systm cant get confused.
+	# one hiddev device, the system cant get confused.
 	install -D -m644 $srcdir/dvicoIR.rules $pkgdir/etc/udev/rules.d/dvicoIR.rules
+
+	# Add the fdi file to prevent the Dvico dual 4 remotes from screwing up keyboard interaction.
+	install -D -m644 $srcdir/lirc.fdi $pkgdir/usr/share/hal/fdi/preprobe/20thirdparty/lirc.fdi
 }
 md5sums=('b96dae91b566143b3af433fa2714ec9a'
          '1753acd774f50b638e6173d364de53fd'
@@ -78,4 +82,5 @@ md5sums=('b96dae91b566143b3af433fa2714ec9a'
          'd299b696b007fc9b663a73cc1758a1ef'
          'f059f4030afc682c9539a03bf837c1cf'
          '4e698654cc44fc6c4163814acda5a7ee'
-         'd79400e2e3069b14039ca07d3317965c')
+         '9a3a6dc03647ee6674a166dfb884ddd6'
+         '664fb04b51396628300daf8befd0db77')
diff --git a/abs/core-testing/lirc/dvicoIR.rules b/abs/core-testing/lirc/dvicoIR.rules
index 5d6d066..ada5466 100644
--- a/abs/core-testing/lirc/dvicoIR.rules
+++ b/abs/core-testing/lirc/dvicoIR.rules
@@ -1,5 +1,15 @@
-# Added to get DVICO remote to be consistant device
+# This rule is for the Dvico Dual Digital 4 Rev 2. It has 2 IR modules 
+# identified, only the first of which is connected to the receiver.
+# The KERNELS=="*-1" part of this rule makes sure that the first 
+# device is the one that gets the symlink.
+KERNEL=="event*", \
+    KERNELS=="*-1", \
+    ATTRS{manufacturer}=="Dvico", \
+    ATTRS{idVendor}=="0fe9", \
+    ATTRS{idProduct}=="db98", \
+    SYMLINK="input/irremote"
+
+# This rule is for the older style USB DVICO remote dongles.
 SUBSYSTEMS=="usb", KERNEL=="hiddev*", \
     ATTRS{product}=="DVICO USB HID Remocon V1.00", \
     SYMLINK+="usb/dvicoIR"
-
diff --git a/abs/core-testing/lirc/lirc.fdi b/abs/core-testing/lirc/lirc.fdi
new file mode 100644
index 0000000..7a8c8ad
--- /dev/null
+++ b/abs/core-testing/lirc/lirc.fdi
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deviceinfo version="0.2">
+  <device>
+     <!-- This rule prevents the Dvico dual digital4 rev 2
+          remote input device from making your keyboard act wierd>
+     <match key="info.product" contains_ncase="IR-receiver inside an USB DVB receiver">
+        <merge key="info.ignore" type="bool">true</merge>
+     </match>
+  </device>
+</deviceinfo>
-- 
cgit v0.12

