aboutsummaryrefslogtreecommitdiff
path: root/system/lirc
diff options
context:
space:
mode:
Diffstat (limited to 'system/lirc')
-rw-r--r--system/lirc/lirc.SlackBuild18
-rw-r--r--system/lirc/lirc.info8
-rw-r--r--system/lirc/patches/2.6.33.patch269
-rw-r--r--system/lirc/patches/autoconf.patch194
-rw-r--r--system/lirc/patches/lirc_i2c.patch77
5 files changed, 7 insertions, 559 deletions
diff --git a/system/lirc/lirc.SlackBuild b/system/lirc/lirc.SlackBuild
index b187fbc4adfe9..a572d5c39fe99 100644
--- a/system/lirc/lirc.SlackBuild
+++ b/system/lirc/lirc.SlackBuild
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=lirc
-VERSION=${VERSION:-0.8.6}
+VERSION=${VERSION:-0.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -74,19 +74,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Disabling lirc_gpio driver as it does no longer work with kernel 2.6.22+
-sed -i -e "s:lirc_gpio\.o::" drivers/lirc_gpio/Makefile.am || exit 1
-
-# Fix building lirc_i2c - thanks to the Gentoo guys
-patch -p1 < $CWD/patches/lirc_i2c.patch
-
-# Fix building on 2.6.33.x kernels - thanks to the Gentoo guys
-patch -p1 < $CWD/patches/2.6.33.patch
-patch -p1 < $CWD/patches/autoconf.patch
-
-autoreconf
-libtoolize
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -120,10 +107,11 @@ cat contrib/lircmd.conf > $PKG/etc/lircmd.conf.new
cat contrib/lircrc > $PKG/etc/lircrc.new
cat $CWD/lirc.logrotate > $PKG/etc/logrotate.d/lirc.new
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a ANNOUNCE AUTHORS COPYING ChangeLog INSTALL NEWS README TODO \
diff --git a/system/lirc/lirc.info b/system/lirc/lirc.info
index 0c76a5cae28e6..5aaa027baea0d 100644
--- a/system/lirc/lirc.info
+++ b/system/lirc/lirc.info
@@ -1,10 +1,10 @@
PRGNAM="lirc"
-VERSION="0.8.6"
+VERSION="0.9.0"
HOMEPAGE="http://www.lirc.org/"
-DOWNLOAD="http://prdownloads.sourceforge.net/lirc/lirc-0.8.6.tar.bz2"
-MD5SUM="4ca24da6f5e7c2dcea74878c27a4a3f7"
+DOWNLOAD="http://downloads.sourceforge.net/project/lirc/LIRC/0.9.0/lirc-0.9.0.tar.bz2"
+MD5SUM="b232aef26f23fe33ea8305d276637086"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Murat D. Kadirov"
EMAIL="banderols@gmail.com"
-APPROVED="rworkman"
+APPROVED="dsomero"
diff --git a/system/lirc/patches/2.6.33.patch b/system/lirc/patches/2.6.33.patch
deleted file mode 100644
index 92e50beb51137..0000000000000
--- a/system/lirc/patches/2.6.33.patch
+++ /dev/null
@@ -1,269 +0,0 @@
---- lirc-0.8.6.orig/drivers/lirc_dev/lirc_dev.h 2009/03/15 09:34:00 1.37
-+++ lirc-0.8.6/drivers/lirc_dev/lirc_dev.h 2010/01/23 16:28:07 1.39
-@@ -4,7 +4,7 @@
- * (L) by Artur Lipowski <alipowski@interia.pl>
- * This code is licensed under GNU GPL
- *
-- * $Id: lirc_dev.h,v 1.37 2009/03/15 09:34:00 lirc Exp $
-+ * $Id: lirc_dev.h,v 1.39 2010/01/23 16:28:07 lirc Exp $
- *
- */
-
-@@ -30,14 +30,19 @@
-
- struct lirc_buffer {
- wait_queue_head_t wait_poll;
-- spinlock_t lock;
-+ spinlock_t fifo_lock;
- unsigned int chunk_size;
- unsigned int size; /* in chunks */
- /* Using chunks instead of bytes pretends to simplify boundary checking
- * And should allow for some performance fine tunning later */
- #ifdef LIRC_HAVE_KFIFO
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- struct kfifo *fifo;
- #else
-+ struct kfifo fifo;
-+ u8 fifo_initialized;
-+#endif
-+#else
- unsigned int fill; /* in chunks */
- int head, tail; /* in chunks */
- unsigned char *data;
-@@ -47,12 +52,12 @@
- static inline void lirc_buffer_lock(struct lirc_buffer *buf,
- unsigned long *flags)
- {
-- spin_lock_irqsave(&buf->lock, *flags);
-+ spin_lock_irqsave(&buf->fifo_lock, *flags);
- }
- static inline void lirc_buffer_unlock(struct lirc_buffer *buf,
- unsigned long *flags)
- {
-- spin_unlock_irqrestore(&buf->lock, *flags);
-+ spin_unlock_irqrestore(&buf->fifo_lock, *flags);
- }
- static inline void _lirc_buffer_clear(struct lirc_buffer *buf)
- {
-@@ -64,10 +69,21 @@
- static inline void lirc_buffer_clear(struct lirc_buffer *buf)
- {
- #ifdef LIRC_HAVE_KFIFO
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- if (buf->fifo)
- kfifo_reset(buf->fifo);
- #else
- unsigned long flags;
-+
-+ if (buf->fifo_initialized) {
-+ spin_lock_irqsave(&buf->fifo_lock, flags);
-+ kfifo_reset(&buf->fifo);
-+ spin_unlock_irqrestore(&buf->fifo_lock, flags);
-+ }
-+#endif
-+#else
-+ unsigned long flags;
-+
- lirc_buffer_lock(buf, &flags);
- _lirc_buffer_clear(buf);
- lirc_buffer_unlock(buf, &flags);
-@@ -77,31 +93,47 @@
- unsigned int chunk_size,
- unsigned int size)
- {
-+ int ret = 0;
-+
- init_waitqueue_head(&buf->wait_poll);
-- spin_lock_init(&buf->lock);
-+ spin_lock_init(&buf->fifo_lock);
- #ifndef LIRC_HAVE_KFIFO
- _lirc_buffer_clear(buf);
- #endif
- buf->chunk_size = chunk_size;
- buf->size = size;
- #ifdef LIRC_HAVE_KFIFO
-- buf->fifo = kfifo_alloc(size*chunk_size, GFP_KERNEL, &buf->lock);
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
-+ buf->fifo = kfifo_alloc(size*chunk_size, GFP_KERNEL, &buf->fifo_lock);
- if (!buf->fifo)
- return -ENOMEM;
- #else
-+ ret = kfifo_alloc(&buf->fifo, size * chunk_size, GFP_KERNEL);
-+ if (ret == 0)
-+ buf->fifo_initialized = 1;
-+#endif
-+#else
- buf->data = kmalloc(size*chunk_size, GFP_KERNEL);
- if (buf->data == NULL)
- return -ENOMEM;
- memset(buf->data, 0, size*chunk_size);
- #endif
-- return 0;
-+
-+ return ret;
- }
- static inline void lirc_buffer_free(struct lirc_buffer *buf)
- {
- #ifdef LIRC_HAVE_KFIFO
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- if (buf->fifo)
- kfifo_free(buf->fifo);
- #else
-+ if (buf->fifo_initialized) {
-+ kfifo_free(&buf->fifo);
-+ buf->fifo_initialized = 0;
-+ }
-+#endif
-+#else
- kfree(buf->data);
- buf->data = NULL;
- buf->head = 0;
-@@ -111,6 +143,25 @@
- buf->size = 0;
- #endif
- }
-+
-+#ifdef LIRC_HAVE_KFIFO
-+static inline int lirc_buffer_len(struct lirc_buffer *buf)
-+{
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
-+ return kfifo_len(buf->fifo);
-+#else
-+ int len;
-+ unsigned long flags;
-+
-+ spin_lock_irqsave(&buf->fifo_lock, flags);
-+ len = kfifo_len(&buf->fifo);
-+ spin_unlock_irqrestore(&buf->fifo_lock, flags);
-+
-+ return len;
-+#endif
-+}
-+#endif
-+
- #ifndef LIRC_HAVE_KFIFO
- static inline int _lirc_buffer_full(struct lirc_buffer *buf)
- {
-@@ -120,7 +171,7 @@
- static inline int lirc_buffer_full(struct lirc_buffer *buf)
- {
- #ifdef LIRC_HAVE_KFIFO
-- return kfifo_len(buf->fifo) == buf->size * buf->chunk_size;
-+ return lirc_buffer_len(buf) == buf->size * buf->chunk_size;
- #else
- unsigned long flags;
- int ret;
-@@ -139,7 +190,7 @@
- static inline int lirc_buffer_empty(struct lirc_buffer *buf)
- {
- #ifdef LIRC_HAVE_KFIFO
-- return !kfifo_len(buf->fifo);
-+ return !lirc_buffer_len(buf);
- #else
- unsigned long flags;
- int ret;
-@@ -158,7 +209,7 @@
- static inline int lirc_buffer_available(struct lirc_buffer *buf)
- {
- #ifdef LIRC_HAVE_KFIFO
-- return buf->size - (kfifo_len(buf->fifo) / buf->chunk_size);
-+ return buf->size - (lirc_buffer_len(buf) / buf->chunk_size);
- #else
- unsigned long flags;
- int ret;
-@@ -177,21 +228,30 @@
- buf->fill -= 1;
- }
- #endif
--static inline void lirc_buffer_read(struct lirc_buffer *buf,
-- unsigned char *dest)
-+static inline unsigned int lirc_buffer_read(struct lirc_buffer *buf,
-+ unsigned char *dest)
- {
-+ unsigned int ret = 0;
-+
- #ifdef LIRC_HAVE_KFIFO
-- if (kfifo_len(buf->fifo) >= buf->chunk_size)
-- kfifo_get(buf->fifo, dest, buf->chunk_size);
-+ if (lirc_buffer_len(buf) >= buf->chunk_size)
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
-+ ret = kfifo_get(buf->fifo, dest, buf->chunk_size);
-+#else
-+ ret = kfifo_out_locked(&buf->fifo, dest, buf->chunk_size,
-+ &buf->fifo_lock);
-+#endif
- #else
- unsigned long flags;
- lirc_buffer_lock(buf, &flags);
- _lirc_buffer_read_1(buf, dest);
- lirc_buffer_unlock(buf, &flags);
- #endif
-+
-+ return ret;
- }
- #ifndef LIRC_HAVE_KFIFO
--static inline void _lirc_buffer_write_1(struct lirc_buffer *buf,
-+static inline _lirc_buffer_write_1(struct lirc_buffer *buf,
- unsigned char *orig)
- {
- memcpy(&buf->data[buf->tail*buf->chunk_size], orig, buf->chunk_size);
-@@ -199,17 +259,26 @@
- buf->fill++;
- }
- #endif
--static inline void lirc_buffer_write(struct lirc_buffer *buf,
-- unsigned char *orig)
-+static inline unsigned int lirc_buffer_write(struct lirc_buffer *buf,
-+ unsigned char *orig)
- {
-+ unsigned int ret = 0;
-+
- #ifdef LIRC_HAVE_KFIFO
-- kfifo_put(buf->fifo, orig, buf->chunk_size);
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
-+ ret = kfifo_put(buf->fifo, orig, buf->chunk_size);
-+#else
-+ ret = kfifo_in_locked(&buf->fifo, orig, buf->chunk_size,
-+ &buf->fifo_lock);
-+#endif
- #else
- unsigned long flags;
- lirc_buffer_lock(buf, &flags);
- _lirc_buffer_write_1(buf, orig);
- lirc_buffer_unlock(buf, &flags);
- #endif
-+
-+ return ret;
- }
- #ifndef LIRC_HAVE_KFIFO
- static inline void _lirc_buffer_write_n(struct lirc_buffer *buf,
-@@ -234,17 +303,26 @@
- buf->fill += count;
- }
- #endif
--static inline void lirc_buffer_write_n(struct lirc_buffer *buf,
-- unsigned char *orig, int count)
-+static inline unsigned int lirc_buffer_write_n(struct lirc_buffer *buf,
-+ unsigned char *orig, int count)
- {
-+ unsigned int ret = 0;
-+
- #ifdef LIRC_HAVE_KFIFO
-- kfifo_put(buf->fifo, orig, count * buf->chunk_size);
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
-+ ret = kfifo_put(buf->fifo, orig, count * buf->chunk_size);
-+#else
-+ ret = kfifo_in_locked(&buf->fifo, orig, count * buf->chunk_size,
-+ &buf->fifo_lock);
-+#endif
- #else
- unsigned long flags;
- lirc_buffer_lock(buf, &flags);
- _lirc_buffer_write_n(buf, orig, count);
- lirc_buffer_unlock(buf, &flags);
- #endif
-+
-+ return ret;
- }
-
- struct lirc_driver {
diff --git a/system/lirc/patches/autoconf.patch b/system/lirc/patches/autoconf.patch
deleted file mode 100644
index 6e4fd50e50e91..0000000000000
--- a/system/lirc/patches/autoconf.patch
+++ /dev/null
@@ -1,194 +0,0 @@
---- lirc-0.8.6/drivers/lirc_dev/lirc_dev.c.old 2009-08-31 12:57:55.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_dev/lirc_dev.c 2010-03-07 01:40:17.000000000 -0500
-@@ -32,7 +32,11 @@
- #error "**********************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/module.h>
- #include <linux/kernel.h>
- #include <linux/sched.h>
---- lirc-0.8.6/drivers/lirc_sir/lirc_sir.c.old 2009-07-09 18:24:23.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_sir/lirc_sir.c 2010-03-07 01:40:17.000000000 -0500
-@@ -45,7 +45,11 @@
- # include <config.h>
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #if !defined(CONFIG_SERIAL_MODULE)
- #if !defined(LIRC_ON_SA1100)
- #warning "******************************************"
---- lirc-0.8.6/drivers/lirc_serial/lirc_serial.c.old 2009-03-15 05:34:00.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_serial/lirc_serial.c 2010-03-07 01:40:17.000000000 -0500
-@@ -60,7 +60,11 @@
- #error "**********************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
-
- #if defined(CONFIG_SERIAL) || defined(CONFIG_SERIAL_8250)
- #warning "******************************************"
---- lirc-0.8.6/drivers/lirc_bt829/lirc_bt829.c.old 2009-03-09 14:54:17.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_bt829/lirc_bt829.c 2010-03-07 01:40:17.000000000 -0500
-@@ -22,7 +22,11 @@
- #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 0)
- #error "This driver needs kernel version 2.4.0 or higher"
- #endif
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/kernel.h>
- #include <linux/module.h>
- #include <linux/threads.h>
---- lirc-0.8.6/drivers/lirc_sasem/lirc_sasem.c.old 2009-02-28 05:27:10.000000000 -0500
-+++ lirc-0.8.6/drivers/lirc_sasem/lirc_sasem.c 2010-03-07 01:40:17.000000000 -0500
-@@ -41,7 +41,11 @@
- #error "*** Sorry, this driver requires kernel version 2.4.22 or higher"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
-
- #include <linux/errno.h>
- #include <linux/init.h>
---- lirc-0.8.6/drivers/lirc_igorplugusb/lirc_igorplugusb.c.old 2009-08-02 05:54:10.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_igorplugusb/lirc_igorplugusb.c 2010-03-07 01:40:17.000000000 -0500
-@@ -47,7 +47,11 @@
- #error "*******************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/module.h>
- #include <linux/kernel.h>
- #include <linux/kmod.h>
---- lirc-0.8.6/drivers/lirc_imon/lirc_imon.c.old 2009-09-11 00:56:18.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_imon/lirc_imon.c 2010-03-07 01:40:17.000000000 -0500
-@@ -30,7 +30,11 @@
- #error "*** Sorry, this driver requires a 2.6 kernel"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
-
- #include <linux/errno.h>
- #include <linux/init.h>
---- lirc-0.8.6/drivers/lirc_it87/lirc_it87.c.old 2009-06-01 08:21:31.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_it87/lirc_it87.c 2010-03-07 01:40:17.000000000 -0500
-@@ -36,7 +36,11 @@
-
- #include <linux/version.h>
- #include <linux/module.h>
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/sched.h>
- #include <linux/errno.h>
- #include <linux/signal.h>
---- lirc-0.8.6/drivers/lirc_streamzap/lirc_streamzap.c.old 2009-03-15 05:34:00.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_streamzap/lirc_streamzap.c 2010-03-07 01:40:17.000000000 -0500
-@@ -35,7 +35,11 @@
- #error "Sorry, this driver needs kernel version 2.4.0 or higher"
- #error "*******************************************************"
- #endif
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/kernel.h>
- #include <linux/errno.h>
- #include <linux/init.h>
---- lirc-0.8.6/drivers/lirc_atiusb/lirc_atiusb.c.old 2009-03-10 20:21:46.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_atiusb/lirc_atiusb.c 2010-03-07 01:40:17.000000000 -0500
-@@ -43,7 +43,11 @@
- #error "*******************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
-
- #include <linux/kernel.h>
- #include <linux/errno.h>
---- lirc-0.8.6/drivers/lirc_parallel/lirc_parallel.c.old 2009-03-08 15:22:28.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_parallel/lirc_parallel.c 2010-03-07 01:40:17.000000000 -0500
-@@ -34,7 +34,11 @@
- #error "**********************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #ifdef CONFIG_SMP
- #error "--- Sorry, this driver is not SMP safe. ---"
- #endif
-@@ -43,7 +47,11 @@
- #include <linux/sched.h>
- #include <linux/errno.h>
- #include <linux/signal.h>
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/fs.h>
- #include <linux/kernel.h>
- #include <linux/ioport.h>
---- lirc-0.8.6/drivers/lirc_wpc8769l/lirc_wpc8769l.c.old 2009-03-15 05:34:01.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_wpc8769l/lirc_wpc8769l.c 2010-03-07 01:40:17.000000000 -0500
-@@ -37,7 +37,11 @@
- #error "**********************************************************"
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
-
- #include <linux/module.h>
- #include <linux/errno.h>
---- lirc-0.8.6/drivers/lirc_mceusb/lirc_mceusb.c.old 2009-09-02 10:04:02.000000000 -0400
-+++ lirc-0.8.6/drivers/lirc_mceusb/lirc_mceusb.c 2010-03-07 01:40:17.000000000 -0500
-@@ -52,7 +52,11 @@
- #error "Sorry, this driver needs kernel version 2.6.5 or higher"
- #error "*******************************************************"
- #endif
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
- #include <linux/autoconf.h>
-+#else
-+#include <generated/autoconf.h>
-+#endif
- #include <linux/kernel.h>
- #include <linux/errno.h>
- #include <linux/init.h>
diff --git a/system/lirc/patches/lirc_i2c.patch b/system/lirc/patches/lirc_i2c.patch
deleted file mode 100644
index 7ff89a671ca29..0000000000000
--- a/system/lirc/patches/lirc_i2c.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-diff -Nur lirc-0.8.6.orig//drivers/lirc_i2c/lirc_i2c.c lirc-0.8.6/drivers/lirc_i2c/lirc_i2c.c
---- lirc-0.8.6.orig//drivers/lirc_i2c/lirc_i2c.c 2009-08-30 11:59:53.000000000 -0500
-+++ lirc-0.8.6/drivers/lirc_i2c/lirc_i2c.c 2010-05-21 12:14:43.701436402 -0500
-@@ -1,4 +1,4 @@
--/* $Id: lirc_i2c.c,v 1.70 2009/08/30 16:59:53 jarodwilson Exp $ */
-+/* $Id: lirc_i2c.c,v 1.72 2009/12/28 15:29:03 jarodwilson Exp $ */
-
- /*
- * lirc_i2c.c
-@@ -399,8 +399,8 @@
- .name = "i2c ir driver",
- },
- #endif
-- .id = I2C_DRIVERID_EXP3, /* FIXME */
- #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31)
-+ .id = I2C_DRIVERID_EXP3, /* FIXME */
- .attach_adapter = ir_probe,
- .detach_client = ir_remove,
- #else
-@@ -492,20 +492,23 @@
- ir->l.add_to_buf = add_to_buf_pv951;
- break;
- case 0x71:
--#ifdef I2C_HW_B_CX2341X
-- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848) ||
-- adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2341X)) {
--#else
-- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) {
-+
-+
-+
-+#ifdef I2C_HW_B_CX2388x
-+ /* Leadtek Winfast PVR2000 or Hauppauge HVR-1300 */
-+ if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2388x))
-+ strlcpy(ir->c.name, "Hauppauge HVR1300", I2C_NAME_SIZE);
-+ else
- #endif
-+ {
- /*
- * The PVR150 IR receiver uses the same protocol as
- * other Hauppauge cards, but the data flow is
- * different, so we need to deal with it by its own.
- */
- strlcpy(ir->c.name, "Hauppauge PVR150", I2C_NAME_SIZE);
-- } else /* I2C_HW_B_CX2388x */
-- strlcpy(ir->c.name, "Hauppauge HVR1300", I2C_NAME_SIZE);
-+ }
- ir->l.code_length = 13;
- ir->l.add_to_buf = add_to_buf_haup_pvr150;
- break;
-@@ -516,19 +519,18 @@
- break;
- case 0x18:
- case 0x1a:
--#ifdef I2C_HW_B_CX2341X
-- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848) ||
-- adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2341X)) {
-+#ifdef I2C_HW_B_CX2388x
-+ if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2388x)) {
-+ strlcpy(ir->c.name, "Leadtek IR", I2C_NAME_SIZE);
-+ ir->l.code_length = 8;
-+ ir->l.add_to_buf = add_to_buf_pvr2000;
-+ } else {
- #else
-- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) {
-+ {
- #endif
- strlcpy(ir->c.name, "Hauppauge IR", I2C_NAME_SIZE);
- ir->l.code_length = 13;
- ir->l.add_to_buf = add_to_buf_haup;
-- } else { /* I2C_HW_B_CX2388x */
-- strlcpy(ir->c.name, "Leadtek IR", I2C_NAME_SIZE);
-- ir->l.code_length = 8;
-- ir->l.add_to_buf = add_to_buf_pvr2000;
- }
- break;
- case 0x30: