From 1e4ef029d3646f3e86bc2a725cbed7ac1e3e6613 Mon Sep 17 00:00:00 2001
From: Greg Frost <gregfrost1@bigpond.com>
Date: Sun, 22 Nov 2009 19:03:33 +1030
Subject: lirc: lirc_mod_mce fix

---
 abs/core-testing/lirc/PKGBUILD           |  4 ++--
 abs/core-testing/lirc/lirc_mod_mce.patch | 11 +++++++----
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/abs/core-testing/lirc/PKGBUILD b/abs/core-testing/lirc/PKGBUILD
index df8e22a..12dc3b4 100644
--- a/abs/core-testing/lirc/PKGBUILD
+++ b/abs/core-testing/lirc/PKGBUILD
@@ -3,7 +3,7 @@
 
 pkgname=lirc
 pkgver=0.8.5CVS
-pkgrel=16
+pkgrel=17
 _kernver=2.6.28-LinHES
 pkgdesc="Linux Infrared Remote Control kernel modules for stock arch kernel"
 arch=(i686 x86_64)
@@ -79,7 +79,7 @@ md5sums=('b96dae91b566143b3af433fa2714ec9a'
          '6f151eb4e81fc7776a06c9063e6ad9a5'
          '7eccd7826ab99e5cf1b9154171c8b927'
          '21ce358809105f005e888e3b138c59e6'
-         '2d64683eba51960a76b80e303df07a5a'
+         'b5d52566a9dae8d76e24e8753f33abef'
          'f059f4030afc682c9539a03bf837c1cf'
          '4e698654cc44fc6c4163814acda5a7ee'
          '9a3a6dc03647ee6674a166dfb884ddd6'
diff --git a/abs/core-testing/lirc/lirc_mod_mce.patch b/abs/core-testing/lirc/lirc_mod_mce.patch
index 2147ec5..1dc6644 100644
--- a/abs/core-testing/lirc/lirc_mod_mce.patch
+++ b/abs/core-testing/lirc/lirc_mod_mce.patch
@@ -1,6 +1,6 @@
 diff -Naru lirc_mod_mce/lirc_mod_mce.c lirc_mod_mce_new/lirc_mod_mce.c
 --- lirc_mod_mce/lirc_mod_mce.c	2008-04-18 02:12:28.000000000 +0930
-+++ lirc_mod_mce_new/lirc_mod_mce.c	2009-11-22 16:22:41.000000000 +1030
++++ lirc_mod_mce_new/lirc_mod_mce.c	2009-11-22 18:45:24.000000000 +1030
 @@ -171,17 +171,76 @@
  #define VENDOR_TATUNG           0x1460
  #define VENDOR_GATEWAY          0x107b
@@ -147,11 +147,14 @@ diff -Naru lirc_mod_mce/lirc_mod_mce.c lirc_mod_mce_new/lirc_mod_mce.c
  static int input_open(struct input_dev *id)
  {
      return 0;
-@@ -945,6 +1051,15 @@
+@@ -945,6 +1051,18 @@
          if(lvalue!=(LIRC_MODE_PULSE&LIRC_CAN_SEND_MASK)) return -EINVAL;
          break;
  
 +    case LIRC_SET_SEND_CARRIER:
++        /* Retrieve lirc_plugin data for the device */
++        ir=lirc_get_pdata(filep);
++        if (!ir && !ir->usb_ep_out) return -EFAULT;
 +
 +	result = get_user(ivalue, (unsigned int *) arg);
 +	if (result)
@@ -163,7 +166,7 @@ diff -Naru lirc_mod_mce/lirc_mod_mce.c lirc_mod_mce_new/lirc_mod_mce.c
      default:
          return -ENOIOCTLCMD;
      }
-@@ -1047,7 +1162,8 @@
+@@ -1047,7 +1165,8 @@
              plugin->minor = -1;
              plugin->features = LIRC_CAN_SEND_PULSE |
                                  LIRC_CAN_SET_TRANSMITTER_MASK |
@@ -173,7 +176,7 @@ diff -Naru lirc_mod_mce/lirc_mod_mce.c lirc_mod_mce_new/lirc_mod_mce.c
              plugin->data = ir;
              plugin->rbuf = rbuf;
              plugin->set_use_inc = &set_use_inc;
-@@ -1108,7 +1224,7 @@
+@@ -1108,7 +1227,7 @@
      input_dev->name = ir->name;
      input_dev->phys = ir->phys;
      usb_to_input_id(dev, &input_dev->id);
-- 
cgit v0.12

