lirc: move XBOX driver to kernel

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2013-05-30 19:55:16 +02:00
parent 83c56c937d
commit 3a85558798
22 changed files with 3149 additions and 192 deletions

View File

@ -1,67 +1,28 @@
diff -Naur lirc-0.9.0-old/configure.ac lirc-0.9.0-new/configure.ac diff -Naur linux-3.9.4/drivers/staging/media/lirc/Kconfig linux-3.9.4.patch/drivers/staging/media/lirc/Kconfig
--- lirc-0.9.0-old/configure.ac 2012-02-29 21:46:37.000000000 -0800 --- linux-3.9.4/drivers/staging/media/lirc/Kconfig 2013-05-24 20:45:59.000000000 +0200
+++ lirc-0.9.0-new/configure.ac 2012-02-29 21:54:01.000000000 -0800 +++ linux-3.9.4.patch/drivers/staging/media/lirc/Kconfig 2013-05-30 18:18:57.238957100 +0200
@@ -172,7 +172,8 @@ @@ -63,10 +63,17 @@
(lirc_dev lirc_sasem) \ help
(lirc_dev lirc_serial) \ Driver for the SIR IrDA port
(lirc_dev lirc_sir) \
- (lirc_dev lirc_wpc8769l)"
+ (lirc_dev lirc_wpc8769l) \
+ (lirc_dev lirc_xbox)"
fi
AH_TEMPLATE([DAEMONIZE], +config LIRC_XBOX
@@ -445,7 +446,7 @@ + tristate "XBOX USB IR Remote"
srm7500libusb, tekram, + depends on LIRC && USB
tekram_bt829, tira, tira_raw, ttusbir, + help
tuxbox, tvbox, udp, uirt2, uirt2_raw, + Driver for the Microsoft XBOX USB IR Remote
- usb_uirt_raw, usbx, wpc8769l], +
+ usb_uirt_raw, usbx, wpc8769l, xbox], config LIRC_ZILOG
driver=${withval}, tristate "Zilog/Hauppauge IR Transmitter"
driver="unset" depends on LIRC && I2C
) help
@@ -610,6 +611,8 @@ Driver for the Zilog/Hauppauge IR Transmitter, found on
;; PVR-150/500, HVR-1200/1250/1700/1800, HD-PVR and other cards
lirc_dev-lirc_wpc8769l) +
;; endif
+ lirc_dev-lirc_xbox) diff -Naur linux-3.9.4/drivers/staging/media/lirc/lirc_xbox.c linux-3.9.4.patch/drivers/staging/media/lirc/lirc_xbox.c
+ ;; --- linux-3.9.4/drivers/staging/media/lirc/lirc_xbox.c 1970-01-01 01:00:00.000000000 +0100
lirc_flyvideo) +++ linux-3.9.4.patch/drivers/staging/media/lirc/lirc_xbox.c 2013-05-30 18:40:22.523775446 +0200
;; @@ -0,0 +1,995 @@
livedrive_midi)
@@ -1407,6 +1410,10 @@
lircd_conf="acer/lircd.conf.Aspire_6530G"
fi
+if test "$driver" = "xbox"; then
+ lirc_driver="lirc_dev lirc_xbox"
+ lircd_conf="xbox/lircd.conf.xbox"
+fi
#END HARDWARE HEURISTIC
@@ -1513,7 +1520,8 @@
lirc_serial \
lirc_sir \
lirc_ttusbir \
- lirc_wpc8769l"
+ lirc_wpc8769l \
+ lirc_xbox"
fi
if kernel_module=$(expr "$lirc_driver" : 'lirc_dev \(.*\)'); then
:
@@ -1780,6 +1788,7 @@
drivers/lirc_serial/Makefile
drivers/lirc_sir/Makefile
drivers/lirc_wpc8769l/Makefile
+ drivers/lirc_xbox/Makefile
daemons/Makefile
tools/Makefile
doc/Makefile
diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/lirc_xbox/lirc_xbox.c
--- lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c 1969-12-31 16:00:00.000000000 -0800
+++ lirc-0.9.0-new/drivers/lirc_xbox/lirc_xbox.c 2012-02-29 21:54:01.000000000 -0800
@@ -0,0 +1,992 @@
+/* +/*
+ * lirc_xbox - USB remote support for LIRC + * lirc_xbox - USB remote support for LIRC
+ * (supports Microsoft XBOX DVD Dongle) + * (supports Microsoft XBOX DVD Dongle)
@ -102,9 +63,9 @@ diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/l
+ +
+#include <linux/version.h> +#include <linux/version.h>
+ +
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33) +//#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 33)
+#include <linux/autoconf.h> +//#include <linux/autoconf.h>
+#endif +//#endif
+ +
+#include <linux/kernel.h> +#include <linux/kernel.h>
+#include <linux/errno.h> +#include <linux/errno.h>
@ -119,14 +80,14 @@ diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/l
+#include <linux/wait.h> +#include <linux/wait.h>
+#include <linux/list.h> +#include <linux/list.h>
+ +
+#include "drivers/kcompat.h" +//#include "drivers/kcompat.h"
+#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 35) +//#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 35)
+#include <media/lirc.h> +#include <media/lirc.h>
+#include <media/lirc_dev.h> +#include <media/lirc_dev.h>
+#else +//#else
+#include "drivers/lirc.h" +//#include "drivers/lirc.h"
+#include "drivers/lirc_dev/lirc_dev.h" +//#include "drivers/lirc_dev/lirc_dev.h"
+#endif +//#endif
+ +
+#define DRIVER_VERSION "$Revision: 0.01 $" +#define DRIVER_VERSION "$Revision: 0.01 $"
+#define DRIVER_AUTHOR "Jason Martin <austinspartan@users.sourceforge.net>" +#define DRIVER_AUTHOR "Jason Martin <austinspartan@users.sourceforge.net>"
@ -137,6 +98,10 @@ diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/l
+#define CODE_MIN_LENGTH 6 +#define CODE_MIN_LENGTH 6
+#define DECODE_LENGTH 1 +#define DECODE_LENGTH 1
+ +
+#ifndef URB_ASYNC_UNLINK
+#define URB_ASYNC_UNLINK 0
+#endif
+
+/* module parameters */ +/* module parameters */
+#ifdef CONFIG_USB_DEBUG +#ifdef CONFIG_USB_DEBUG
+static int debug = 1; +static int debug = 1;
@ -1000,7 +965,6 @@ diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/l
+} +}
+ +
+static struct usb_driver usb_remote_driver = { +static struct usb_driver usb_remote_driver = {
+ LIRC_THIS_MODULE(.owner = THIS_MODULE)
+ .name = DRIVER_NAME, + .name = DRIVER_NAME,
+ .probe = usb_remote_probe, + .probe = usb_remote_probe,
+ .disconnect = usb_remote_disconnect, + .disconnect = usb_remote_disconnect,
@ -1054,116 +1018,12 @@ diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/lirc_xbox.c lirc-0.9.0-new/drivers/l
+ +
+module_param(repeat, int, S_IRUGO | S_IWUSR); +module_param(repeat, int, S_IRUGO | S_IWUSR);
+MODULE_PARM_DESC(repeat, "Repeat timeout (1/100 sec) (default: 10)"); +MODULE_PARM_DESC(repeat, "Repeat timeout (1/100 sec) (default: 10)");
diff -Naur lirc-0.9.0-old/drivers/lirc_xbox/Makefile.am lirc-0.9.0-new/drivers/lirc_xbox/Makefile.am diff -Naur linux-3.9.4/drivers/staging/media/lirc/Makefile linux-3.9.4.patch/drivers/staging/media/lirc/Makefile
--- lirc-0.9.0-old/drivers/lirc_xbox/Makefile.am 1969-12-31 16:00:00.000000000 -0800 --- linux-3.9.4/drivers/staging/media/lirc/Makefile 2013-05-24 20:45:59.000000000 +0200
+++ lirc-0.9.0-new/drivers/lirc_xbox/Makefile.am 2012-02-29 21:54:01.000000000 -0800 +++ linux-3.9.4.patch/drivers/staging/media/lirc/Makefile 2013-05-30 18:17:39.163634834 +0200
@@ -0,0 +1,13 @@ @@ -10,4 +10,5 @@
+## $Id: Makefile.am,v 1.3 2004/04/25 16:29:24 lirc Exp $ obj-$(CONFIG_LIRC_SASEM) += lirc_sasem.o
+ obj-$(CONFIG_LIRC_SERIAL) += lirc_serial.o
+## Process this file with automake to produce Makefile.in obj-$(CONFIG_LIRC_SIR) += lirc_sir.o
+ +obj-$(CONFIG_LIRC_XBOX) += lirc_xbox.o
+## this is so that Automake includes the C compiling definitions, and obj-$(CONFIG_LIRC_ZILOG) += lirc_zilog.o
+## includes the source files in the distribution.
+EXTRA_PROGRAMS = automake_dummy
+automake_dummy_SOURCES = lirc_xbox.c
+
+## there is no *just* object file support in automake. This is close enough
+module_DATA = lirc_xbox.o
+
+include ../Makefile.common
\ No newline at end of file
diff -Naur lirc-0.9.0-old/remotes/xbox/lircd.conf.xbox lirc-0.9.0-new/remotes/xbox/lircd.conf.xbox
--- lirc-0.9.0-old/remotes/xbox/lircd.conf.xbox 1969-12-31 16:00:00.000000000 -0800
+++ lirc-0.9.0-new/remotes/xbox/lircd.conf.xbox 2012-02-29 21:54:01.000000000 -0800
@@ -0,0 +1,58 @@
+#lirc.conf.xbox
+# Please make this file available to others
+# by sending it to <lirc@bartelmus.de>
+#
+# this config file was automatically generated
+# using lirc-0.8.2-CVS(default) on Mon Aug 25 09:04:22 2008
+#
+# contributed by
+#
+# brand: xbox.conf
+# model no. of remote control:
+# devices being controlled by this remote:
+#
+
+begin remote
+
+ name xbox.conf
+ bits 8
+ eps 30
+ aeps 100
+
+ one 0 0
+ zero 0 0
+ gap 163983
+ min_repeat 15
+ toggle_bit_mask 0x0
+
+ begin codes
+ MENU 0xF7
+ DISPLAY 0xD5
+ TITLE 0xE5
+ INFO 0xC3
+ EXIT 0xD8
+ UP 0xA6
+ DOWN 0xA7
+ LEFT 0xA9
+ RIGHT 0xA8
+ SELECT 0x0B
+ SKIP- 0xDD
+ SKIP+ 0xDF
+ REW 0xE2
+ FF 0xE3
+ STOP 0xE0
+ 1 0xCE
+ 2 0xCD
+ PAUSE 0xE6
+ PLAY 0xEA
+ 3 0xCC
+ 4 0xCB
+ 5 0xCA
+ 6 0xC9
+ 7 0xC8
+ 8 0xC7
+ 9 0xC6
+ 0 0xCF
+ end codes
+
+end remote
diff -Naur lirc-0.9.0-old/setup.data lirc-0.9.0-new/setup.data
--- lirc-0.9.0-old/setup.data 2012-02-29 21:44:15.000000000 -0800
+++ lirc-0.9.0-new/setup.data 2012-02-29 21:54:01.000000000 -0800
@@ -146,7 +146,8 @@
usb_uirt_raw: "USB-UIRT"
mplay: "VLSystem MPlay Blast"
mplay: "VLSystem MPlay Mini"
-
+ xbox: "XBOX DVD Dongle"
+
param_type: \
act200l \
act220l \
@@ -260,7 +261,8 @@
ttusbir \
tvbox \
udp \
- wpc8769l
+ wpc8769l \
+ xbox
none:
default_param: \
@@ -331,7 +333,8 @@
ttusbir \
tvbox \
udp \
- wpc8769l
+ wpc8769l \
+ xbox
none:
default_param: \

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -45,7 +45,6 @@ mkdir -p m4 && do_autoreconf
--with-gnu-ld \ --with-gnu-ld \
--without-x \ --without-x \
--with-driver=userspace \ --with-driver=userspace \
--with-driver=xbox \
--with-syslog=LOG_DAEMON \ --with-syslog=LOG_DAEMON \
--with-kerneldir=$(kernel_path) \ --with-kerneldir=$(kernel_path) \
$DEBUG_CONFIG $DEBUG_CONFIG

View File

@ -24,10 +24,6 @@
VER=`ls $BUILD/linux*/modules/lib/modules` VER=`ls $BUILD/linux*/modules/lib/modules`
# LIRC kernel driver
mkdir -p $INSTALL/lib/modules/$VER/lirc
cp $PKG_BUILD/drivers/lirc_*/*.ko $INSTALL/lib/modules/$VER/lirc
mkdir -p $INSTALL/usr/sbin mkdir -p $INSTALL/usr/sbin
cp $PKG_BUILD/daemons/lircd $INSTALL/usr/sbin cp $PKG_BUILD/daemons/lircd $INSTALL/usr/sbin
cp $PKG_BUILD/daemons/lircmd $INSTALL/usr/sbin # do we need this? cp $PKG_BUILD/daemons/lircmd $INSTALL/usr/sbin # do we need this?

View File

@ -47,7 +47,7 @@ diff -Naur lirc-0.9.0-old/configure.ac lirc-0.9.0-new/configure.ac
tekram_bt829, tira, tira_raw, ttusbir, tekram_bt829, tira, tira_raw, ttusbir,
- tuxbox, tvbox, udp, uirt2, uirt2_raw, - tuxbox, tvbox, udp, uirt2, uirt2_raw,
+ tuxbox, udp, uirt2, uirt2_raw, + tuxbox, udp, uirt2, uirt2_raw,
usb_uirt_raw, usbx, wpc8769l, xbox], usb_uirt_raw, usbx, wpc8769l],
driver=${withval}, driver=${withval},
driver="unset" driver="unset"
@@ -592,9 +590,6 @@ @@ -592,9 +590,6 @@

View File

@ -2936,6 +2936,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
# CONFIG_LIRC_SASEM is not set # CONFIG_LIRC_SASEM is not set
# CONFIG_LIRC_SERIAL is not set # CONFIG_LIRC_SERIAL is not set
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -2808,6 +2808,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
# CONFIG_LIRC_SASEM is not set # CONFIG_LIRC_SASEM is not set
# CONFIG_LIRC_SERIAL is not set # CONFIG_LIRC_SERIAL is not set
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3126,6 +3126,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3073,6 +3073,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3304,6 +3304,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3255,6 +3255,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3307,6 +3307,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3180,6 +3180,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3107,6 +3107,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3232,6 +3232,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3160,6 +3160,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -2236,6 +2236,7 @@ CONFIG_LIRC_RPI=m
# CONFIG_LIRC_SASEM is not set # CONFIG_LIRC_SASEM is not set
# CONFIG_LIRC_SERIAL is not set # CONFIG_LIRC_SERIAL is not set
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -2876,6 +2876,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
# CONFIG_LIRC_SASEM is not set # CONFIG_LIRC_SASEM is not set
# CONFIG_LIRC_SERIAL is not set # CONFIG_LIRC_SERIAL is not set
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3307,6 +3307,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #

View File

@ -3258,6 +3258,7 @@ CONFIG_LIRC_IGORPLUGUSB=m
CONFIG_LIRC_SERIAL=m CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y CONFIG_LIRC_SERIAL_TRANSMITTER=y
# CONFIG_LIRC_SIR is not set # CONFIG_LIRC_SIR is not set
CONFIG_LIRC_XBOX=m
# CONFIG_LIRC_ZILOG is not set # CONFIG_LIRC_ZILOG is not set
# #