# --- SDE-COPYRIGHT-NOTE-BEGIN --- # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: package/.../lirc/kernel-usb-hotfix.patch # Copyright (C) 2006 The T2 SDE Project # # More information can be found in the files COPYING and README. # # This patch file is dual-licensed. It is available under the license the # patched project is licensed under, as long as it is an OpenSource license # as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms # of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the License, or (at your option) any later # version. # --- SDE-COPYRIGHT-NOTE-END --- Kernel 2.6.16 changed struct usb_driver, now has the .owner field removed Patch is taken from lirc CVS Index: drivers/kcompat.h =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/kcompat.h,v retrieving revision 5.24 retrieving revision 5.26 diff -u -r5.24 -r5.26 --- ./drivers/kcompat.h 7 Jan 2006 20:51:31 -0000 5.24 +++ ./drivers/kcompat.h 4 Mar 2006 23:16:02 -0000 5.26 @@ -1,10 +1,16 @@ -/* $Id: kcompat.h,v 5.24 2006/01/07 20:51:31 lirc Exp $ */ +/* $Id: kcompat.h,v 5.26 2006/03/04 23:16:02 lirc Exp $ */ #ifndef _KCOMPAT_H #define _KCOMPAT_H #include +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) +#define LIRC_THIS_MODULE(x) x, +#else /* >= 2.6.16 */ +#define LIRC_THIS_MODULE(x) +#endif + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) #include @@ -245,6 +251,11 @@ # define I2C_ALGO_BIT 0 #endif +/* removed in 2.6.16 */ +#ifndef I2C_DRIVERID_EXP3 +# define I2C_DRIVERID_EXP3 0xf003 +#endif + /*************************** USB specific *****************************/ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 0) #include Index: drivers/lirc_atiusb/lirc_atiusb.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_atiusb/lirc_atiusb.c,v retrieving revision 1.51 retrieving revision 1.53 diff -u -r1.51 -r1.53 --- ./drivers/lirc_atiusb/lirc_atiusb.c 29 Oct 2005 14:18:53 -0000 1.51 +++ ./drivers/lirc_atiusb/lirc_atiusb.c 4 Mar 2006 22:36:38 -0000 1.53 @@ -12,7 +12,7 @@ * Artur Lipowski 's 2002 * "lirc_dev" and "lirc_gpio" LIRC modules * - * $Id: lirc_atiusb.c,v 1.51 2005/10/29 14:18:53 lirc Exp $ + * $Id: lirc_atiusb.c,v 1.53 2006/03/04 22:36:38 lirc Exp $ */ /* @@ -408,13 +408,13 @@ dprintk(DRIVER_NAME "[%d]: accept channel %d\n", ir->devnum, chan+1); if (ir->remote_type == ATI1_COMPATIBLE) { + for (i = len; i < CODE_LENGTH; i++) iep->buf[i] = 0; /* check for repeats */ if (memcmp(iep->old, iep->buf, len) == 0) { if (iep->old_jiffies + repeat_jiffies > jiffies) { return -1; } } else { - for (i = len; i < CODE_LENGTH; i++) iep->buf[i] = 0; memcpy(iep->old, iep->buf, CODE_LENGTH); } iep->old_jiffies = jiffies; @@ -1180,7 +1180,7 @@ } static struct usb_driver usb_remote_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = DRIVER_NAME, .probe = usb_remote_probe, .disconnect = usb_remote_disconnect, @@ -1195,7 +1195,7 @@ printk("\n" DRIVER_NAME ": " DRIVER_DESC " v" DRIVER_VERSION "\n"); printk(DRIVER_NAME ": " DRIVER_AUTHOR "\n"); - dprintk(DRIVER_NAME ": debug mode enabled: $Id: lirc_atiusb.c,v 1.51 2005/10/29 14:18:53 lirc Exp $\n"); + dprintk(DRIVER_NAME ": debug mode enabled: $Id: lirc_atiusb.c,v 1.53 2006/03/04 22:36:38 lirc Exp $\n"); request_module("lirc_dev"); Index: drivers/lirc_i2c/lirc_i2c.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_i2c/lirc_i2c.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- ./drivers/lirc_i2c/lirc_i2c.c 20 Oct 2005 18:25:58 -0000 1.35 +++ ./drivers/lirc_i2c/lirc_i2c.c 4 Mar 2006 23:16:03 -0000 1.36 @@ -1,4 +1,4 @@ -/* $Id: lirc_i2c.c,v 1.35 2005/10/20 18:25:58 lirc Exp $ */ +/* $Id: lirc_i2c.c,v 1.36 2006/03/04 23:16:03 lirc Exp $ */ /* * i2c IR lirc plugin for Hauppauge and Pixelview cards - new 2.3.x i2c stack @@ -360,9 +360,16 @@ static int ir_command(struct i2c_client *client, unsigned int cmd, void *arg); static struct i2c_driver driver = { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 16) name: "i2c ir driver", - id: I2C_DRIVERID_EXP3, /* FIXME */ flags: I2C_DF_NOTIFY, +#else + .driver = { + owner: THIS_MODULE, + name: "i2c ir driver", + }, +#endif + id: I2C_DRIVERID_EXP3, /* FIXME */ attach_adapter: ir_probe, detach_client: ir_detach, command: ir_command, Index: drivers/lirc_igorplugusb/lirc_igorplugusb.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_igorplugusb/lirc_igorplugusb.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- ./drivers/lirc_igorplugusb/lirc_igorplugusb.c 21 Mar 2005 14:39:38 -0000 1.7 +++ ./drivers/lirc_igorplugusb/lirc_igorplugusb.c 4 Mar 2006 22:36:38 -0000 1.8 @@ -615,7 +615,7 @@ }; static struct usb_driver usb_remote_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = DRIVER_NAME, .probe = usb_remote_probe, .disconnect = usb_remote_disconnect, Index: drivers/lirc_imon/lirc_imon.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_imon/lirc_imon.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- ./drivers/lirc_imon/lirc_imon.c 3 Dec 2005 15:18:07 -0000 1.9 +++ ./drivers/lirc_imon/lirc_imon.c 4 Mar 2006 22:36:38 -0000 1.10 @@ -1,7 +1,7 @@ /* * lirc_imon.c: LIRC plugin/VFD driver for Ahanix/Soundgraph IMON IR/VFD * - * $Id: lirc_imon.c,v 1.9 2005/12/03 15:18:07 lirc Exp $ + * $Id: lirc_imon.c,v 1.10 2006/03/04 22:36:38 lirc Exp $ * * Version 0.3 * Supports newer iMON models that send decoded IR signals. @@ -201,7 +201,7 @@ /* USB Device data */ static struct usb_driver imon_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = MOD_NAME, .probe = imon_probe, .disconnect = imon_disconnect, Index: drivers/lirc_it87/lirc_it87.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_it87/lirc_it87.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- ./drivers/lirc_it87/lirc_it87.c 4 Oct 2005 20:10:04 -0000 1.17 +++ ./drivers/lirc_it87/lirc_it87.c 21 Jan 2006 17:43:36 -0000 1.18 @@ -58,7 +58,7 @@ #include #include #include -#include +#include #include #include #include Index: drivers/lirc_mceusb/lirc_mceusb.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_mceusb/lirc_mceusb.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ./drivers/lirc_mceusb/lirc_mceusb.c 29 Oct 2005 14:18:53 -0000 1.10 +++ ./drivers/lirc_mceusb/lirc_mceusb.c 4 Mar 2006 22:36:39 -0000 1.11 @@ -222,7 +222,7 @@ /* usb specific object needed to register this driver with the usb subsystem */ static struct usb_driver mceusb_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = DRIVER_NAME, .probe = mceusb_probe, .disconnect = mceusb_disconnect, Index: drivers/lirc_mceusb2/lirc_mceusb2.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_mceusb2/lirc_mceusb2.c,v retrieving revision 1.2 retrieving revision 1.4 diff -u -r1.2 -r1.4 --- ./drivers/lirc_mceusb2/lirc_mceusb2.c 29 Oct 2005 14:18:53 -0000 1.2 +++ ./drivers/lirc_mceusb2/lirc_mceusb2.c 24 Mar 2006 21:01:22 -0000 1.4 @@ -98,11 +98,13 @@ #define VENDOR_PHILIPS 0x0471 #define VENDOR_SMK 0x0609 #define VENDOR_TATUNG 0x1460 +#define VENDOR_GATEWAY 0x107b static struct usb_device_id usb_remote_table [] = { { USB_DEVICE(VENDOR_PHILIPS, 0x0815) }, /* Philips eHome Infrared Transciever */ { USB_DEVICE(VENDOR_SMK, 0x031d) }, /* SMK/Toshiba G83C0004D410 */ { USB_DEVICE(VENDOR_TATUNG, 0x9150) }, /* Tatung eHome Infrared Transceiver */ + { USB_DEVICE(VENDOR_GATEWAY, 0x3009) }, /* Gateway eHome Infrared Transceiver */ { } /* Terminating entry */ }; @@ -585,7 +587,7 @@ } static struct usb_driver usb_remote_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = DRIVER_NAME, .probe = usb_remote_probe, .disconnect = usb_remote_disconnect, Index: drivers/lirc_sasem/lirc_sasem.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_sasem/lirc_sasem.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- ./drivers/lirc_sasem/lirc_sasem.c 3 Dec 2005 15:18:07 -0000 1.12 +++ ./drivers/lirc_sasem/lirc_sasem.c 4 Mar 2006 22:36:39 -0000 1.13 @@ -1,4 +1,4 @@ -/* $Id: lirc_sasem.c,v 1.12 2005/12/03 15:18:07 lirc Exp $ */ +/* $Id: lirc_sasem.c,v 1.13 2006/03/04 22:36:39 lirc Exp $ */ /* lirc_sasem.c - USB remote support for LIRC * Version 0.5 @@ -189,7 +189,7 @@ /* USB Device data */ static struct usb_driver sasem_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = MOD_NAME, .probe = sasem_probe, .disconnect = sasem_disconnect, Index: drivers/lirc_serial/lirc_serial.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_serial/lirc_serial.c,v retrieving revision 5.69 retrieving revision 5.70 diff -u -r5.69 -r5.70 --- ./drivers/lirc_serial/lirc_serial.c 17 Dec 2005 13:56:57 -0000 5.69 +++ ./drivers/lirc_serial/lirc_serial.c 21 Jan 2006 17:43:36 -0000 5.70 @@ -1,4 +1,4 @@ -/* $Id: lirc_serial.c,v 5.69 2005/12/17 13:56:57 lirc Exp $ */ +/* $Id: lirc_serial.c,v 5.70 2006/01/21 17:43:36 lirc Exp $ */ /**************************************************************************** ** lirc_serial.c *********************************************************** @@ -91,7 +91,7 @@ #include #include -#include +#include #include #include #include Index: drivers/lirc_sir/lirc_sir.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_sir/lirc_sir.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- ./drivers/lirc_sir/lirc_sir.c 14 Jan 2006 13:57:24 -0000 1.42 +++ ./drivers/lirc_sir/lirc_sir.c 21 Jan 2006 17:43:36 -0000 1.43 @@ -75,7 +75,7 @@ #include #include #include -#include +#include #include #include #include Index: drivers/lirc_streamzap/lirc_streamzap.c =================================================================== RCS file: /cvsroot/lirc/lirc/drivers/lirc_streamzap/lirc_streamzap.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- ./drivers/lirc_streamzap/lirc_streamzap.c 6 Jan 2006 07:18:03 -0000 1.15 +++ ./drivers/lirc_streamzap/lirc_streamzap.c 4 Mar 2006 22:36:39 -0000 1.16 @@ -1,4 +1,4 @@ -/* $Id: lirc_streamzap.c,v 1.15 2006/01/06 07:18:03 lirc Exp $ */ +/* $Id: lirc_streamzap.c,v 1.16 2006/03/04 22:36:39 lirc Exp $ */ /* * Streamzap Remote Control driver @@ -53,7 +53,7 @@ #include "drivers/kcompat.h" #include "drivers/lirc_dev/lirc_dev.h" -#define DRIVER_VERSION "$Revision: 1.15 $" +#define DRIVER_VERSION "$Revision: 1.16 $" #define DRIVER_NAME "lirc_streamzap" #define DRIVER_DESC "Streamzap Remote Control driver" @@ -177,7 +177,7 @@ /* usb specific object needed to register this driver with the usb subsystem */ static struct usb_driver streamzap_driver = { - .owner = THIS_MODULE, + LIRC_THIS_MODULE(.owner = THIS_MODULE) .name = DRIVER_NAME, .probe = streamzap_probe, .disconnect = streamzap_disconnect,