rpms/kernel/F-10 linux-2.6.29-lirc.patch,1.3,1.4

Chuck Ebbert cebbert at fedoraproject.org
Wed Mar 4 06:57:35 UTC 2009


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv9771

Modified Files:
	linux-2.6.29-lirc.patch 
Log Message:
copy latest lirc update from rawhide

linux-2.6.29-lirc.patch:

Index: linux-2.6.29-lirc.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-10/linux-2.6.29-lirc.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- linux-2.6.29-lirc.patch	1 Mar 2009 02:52:38 -0000	1.3
+++ linux-2.6.29-lirc.patch	4 Mar 2009 06:57:35 -0000	1.4
@@ -1,4 +1,6 @@
-Linux Infrared Remote Control drivers (http://www.lirc.org/)
+Linux Infrared Remote Control drivers -- http://www.lirc.org
+
+From http://git.wilsonet.com/linux-2.6-lirc.git/
 
 Signed-off-by: Jarod Wilson <jarod at redhat.com>
 
@@ -9,26 +11,26 @@
  drivers/input/lirc/Kconfig            |  118 +++
  drivers/input/lirc/Makefile           |   21 +
  drivers/input/lirc/lirc.h             |  100 +++
- drivers/input/lirc/lirc_bt829.c       |  381 +++++++++
+ drivers/input/lirc/lirc_bt829.c       |  383 +++++++++
  drivers/input/lirc/lirc_dev.c         |  853 +++++++++++++++++++
  drivers/input/lirc/lirc_dev.h         |  180 ++++
- drivers/input/lirc/lirc_i2c.c         |  649 +++++++++++++++
- drivers/input/lirc/lirc_igorplugusb.c |  555 +++++++++++++
- drivers/input/lirc/lirc_imon.c        | 1459 +++++++++++++++++++++++++++++++++
+ drivers/input/lirc/lirc_i2c.c         |  649 ++++++++++++++
+ drivers/input/lirc/lirc_igorplugusb.c |  556 ++++++++++++
+ drivers/input/lirc/lirc_imon.c        | 1487 +++++++++++++++++++++++++++++++++
  drivers/input/lirc/lirc_it87.c        |  984 ++++++++++++++++++++++
  drivers/input/lirc/lirc_it87.h        |  116 +++
  drivers/input/lirc/lirc_ite8709.c     |  539 ++++++++++++
  drivers/input/lirc/lirc_mceusb.c      |  747 +++++++++++++++++
- drivers/input/lirc/lirc_mceusb2.c     | 1097 +++++++++++++++++++++++++
+ drivers/input/lirc/lirc_mceusb2.c     | 1099 ++++++++++++++++++++++++
  drivers/input/lirc/lirc_parallel.c    |  709 ++++++++++++++++
  drivers/input/lirc/lirc_parallel.h    |   26 +
- drivers/input/lirc/lirc_sasem.c       |  933 +++++++++++++++++++++
+ drivers/input/lirc/lirc_sasem.c       |  931 +++++++++++++++++++++
  drivers/input/lirc/lirc_serial.c      | 1321 +++++++++++++++++++++++++++++
- drivers/input/lirc/lirc_sir.c         | 1294 +++++++++++++++++++++++++++++
- drivers/input/lirc/lirc_streamzap.c   |  773 +++++++++++++++++
+ drivers/input/lirc/lirc_sir.c         | 1294 ++++++++++++++++++++++++++++
+ drivers/input/lirc/lirc_streamzap.c   |  775 +++++++++++++++++
  drivers/input/lirc/lirc_ttusbir.c     |  398 +++++++++
- drivers/input/lirc/lirc_zilog.c       | 1382 +++++++++++++++++++++++++++++++
- 25 files changed, 14648 insertions(+), 0 deletions(-)
+ drivers/input/lirc/lirc_zilog.c       | 1382 ++++++++++++++++++++++++++++++
+ 25 files changed, 14681 insertions(+), 0 deletions(-)
 
 diff --git a/MAINTAINERS b/MAINTAINERS
 index 59fd2d1..ad1b16c 100644
@@ -332,10 +334,10 @@
 +#endif
 diff --git a/drivers/input/lirc/lirc_bt829.c b/drivers/input/lirc/lirc_bt829.c
 new file mode 100644
-index 0000000..7981849
+index 0000000..c3852f2
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_bt829.c
-@@ -0,0 +1,381 @@
+@@ -0,0 +1,383 @@
 +/*
 + * Remote control driver for the TV-card based on bt829
 + *
@@ -389,11 +391,13 @@
 +#define DATA_PCI_OFF 0x7FFC00
 +#define WAIT_CYCLE   20
 +
++#define DRIVER_NAME "lirc_bt829"
++
 +static int debug;
-+#define dprintk(fmt, args...)					\
-+	do {							\
-+		if (debug)					\
-+			printk(KERN_DEBUG fmt, ## args);	\
++#define dprintk(fmt, args...)						 \
++	do {								 \
++		if (debug)						 \
++			printk(KERN_DEBUG DRIVER_NAME ": "fmt, ## args); \
 +	} while (0)
 +
 +static int atir_minor;
@@ -408,20 +412,20 @@
 +	my_dev = pci_get_device(PCI_VENDOR_ID_ATI,
 +				PCI_DEVICE_ID_ATI_264VT, NULL);
 +	if (my_dev) {
-+		printk(KERN_ERR "ATIR: Using device: %s\n",
++		printk(KERN_ERR DRIVER_NAME "Using device: %s\n",
 +		       pci_name(my_dev));
 +		pci_addr_phys = 0;
 +		if (my_dev->resource[0].flags & IORESOURCE_MEM) {
 +			pci_addr_phys = my_dev->resource[0].start;
-+			printk(KERN_INFO "ATIR memory at 0x%08X \n",
++			printk(KERN_INFO DRIVER_NAME "memory at 0x%08X \n",
 +			       (unsigned int)pci_addr_phys);
 +		}
 +		if (pci_addr_phys == 0) {
-+			printk(KERN_ERR "ATIR no memory resource ?\n");
++			printk(KERN_ERR DRIVER_NAME "no memory resource ?\n");
 +			return NULL;
 +		}
 +	} else {
-+		printk(KERN_ERR "ATIR: pci_prob failed\n");
++		printk(KERN_ERR DRIVER_NAME "pci_probe failed\n");
 +		return NULL;
 +	}
 +	return my_dev;
@@ -434,7 +438,7 @@
 +	status = poll_main();
 +	key = (status >> 8) & 0xFF;
 +	if (status & 0xFF) {
-+		dprintk("ATIR reading key %02X\n", key);
++		dprintk("reading key %02X\n", key);
 +		lirc_buffer_write(buf, &key);
 +		return 0;
 +	}
@@ -443,13 +447,13 @@
 +
 +static int atir_set_use_inc(void *data)
 +{
-+	dprintk("ATIR driver is opened\n");
++	dprintk("driver is opened\n");
 +	return 0;
 +}
 +
 +static void atir_set_use_dec(void *data)
 +{
-+	dprintk("ATIR driver is closed\n");
++	dprintk("driver is closed\n");
 +}
 +
 +int init_module(void)
@@ -476,10 +480,10 @@
 +
 +	atir_minor = lirc_register_driver(&atir_driver);
 +	if (atir_minor < 0) {
-+		printk(KERN_ERR "lirc_bt829: failed to register driver!\n");
++		printk(KERN_ERR DRIVER_NAME "failed to register driver!\n");
 +		return atir_minor;
 +	}
-+	dprintk("ATIR driver is registered on minor %d\n", atir_minor);
++	dprintk("driver is registered on minor %d\n", atir_minor);
 +
 +	return 0;
 +}
@@ -495,7 +499,7 @@
 +{
 +	pci_addr_lin = ioremap(pci_addr_phys + DATA_PCI_OFF, 0x400);
 +	if (pci_addr_lin == 0) {
-+		printk(KERN_INFO "atir: pci mem must be mapped\n");
++		printk(KERN_INFO DRIVER_NAME "pci mem must be mapped\n");
 +		return 0;
 +	}
 +	return 1;
@@ -2419,10 +2423,10 @@
 +module_exit(lirc_i2c_exit);
 diff --git a/drivers/input/lirc/lirc_igorplugusb.c b/drivers/input/lirc/lirc_igorplugusb.c
 new file mode 100644
-index 0000000..51ccd1c
+index 0000000..ff49bdd
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_igorplugusb.c
-@@ -0,0 +1,555 @@
+@@ -0,0 +1,556 @@
 +/*
 + * lirc_igorplugusb - USB remote support for LIRC
 + *
@@ -2885,10 +2889,11 @@
 +	do_gettimeofday(&ir->last_time);
 +
 +	if (dev->descriptor.iManufacturer
-+		&& usb_string(dev, dev->descriptor.iManufacturer, buf, 63) > 0)
++	    && usb_string(dev, dev->descriptor.iManufacturer,
++			  buf, sizeof(buf)) > 0)
 +		strlcpy(name, buf, sizeof(name));
 +	if (dev->descriptor.iProduct
-+		&& usb_string(dev, dev->descriptor.iProduct, buf, 63) > 0)
++	    && usb_string(dev, dev->descriptor.iProduct, buf, sizeof(buf)) > 0)
 +		snprintf(name + strlen(name), sizeof(name) - strlen(name),
 +			 " %s", buf);
 +	printk(DRIVER_NAME "[%d]: %s on usb%d:%d\n", devnum, name,
@@ -2980,12 +2985,12 @@
 +
 diff --git a/drivers/input/lirc/lirc_imon.c b/drivers/input/lirc/lirc_imon.c
 new file mode 100644
-index 0000000..5655a0d
+index 0000000..05cb293
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_imon.c
-@@ -0,0 +1,1459 @@
+@@ -0,0 +1,1487 @@
 +/*
-+ *   lirc_imon.c:  LIRC/VFD/LCD driver for Ahanix/Soundgraph IMON IR/VFD/LCD
++ *   lirc_imon.c:  LIRC/VFD/LCD driver for Ahanix/Soundgraph iMON IR/VFD/LCD
 + *		   including the iMON PAD model
 + *
 + *   Copyright(C) 2004  Venky Raju(dev at venky.ws)
@@ -3040,6 +3045,10 @@
 +static void usb_rx_callback(struct urb *urb);
 +static void usb_tx_callback(struct urb *urb);
 +
++/* suspend/resume support */
++static int imon_resume(struct usb_interface *intf);
++static int imon_suspend(struct usb_interface *intf, pm_message_t message);
++
 +/* display file_operations function prototypes */
 +static int display_open(struct inode *inode, struct file *file);
 +static int display_close(struct inode *inode, struct file *file);
@@ -3113,7 +3122,7 @@
 +	IMON_DISPLAY_TYPE_NONE,
 +};
 +
-+/* USB Device ID for IMON USB Control Board */
++/* USB Device ID for iMON USB Control Board */
 +static struct usb_device_id imon_usb_id_table[] = {
 +	/* iMON USB Control Board (IR & VFD) */
 +	{ USB_DEVICE(0x0aa8, 0xffda) },
@@ -3220,6 +3229,8 @@
 +	.name		= MOD_NAME,
 +	.probe		= imon_probe,
 +	.disconnect	= imon_disconnect,
++	.suspend	= imon_suspend,
++	.resume		= imon_resume,
 +	.id_table	= imon_usb_id_table,
 +};
 +
@@ -3554,7 +3565,7 @@
 +
 +
 +/**
-+ * Writes data to the VFD.  The IMON VFD is 2x16 characters
++ * Writes data to the VFD.  The iMON VFD is 2x16 characters
 + * and requires data in 5 consecutive USB interrupt packets,
 + * each packet but the last carrying 7 bytes.
 + *
@@ -4120,7 +4131,7 @@
 +	struct imon_context *context = NULL;
 +	int i;
 +
-+	printk(KERN_INFO "%s: found IMON device\n", __func__);
++	printk(KERN_INFO "%s: found iMON device\n", __func__);
 +
 +	/*
 +	 * If it's the LCD, as opposed to the VFD, we just need to replace
@@ -4420,6 +4431,27 @@
 +	printk(KERN_INFO "%s: iMON device disconnected\n", __func__);
 +}
 +
++static int imon_suspend(struct usb_interface *intf, pm_message_t message)
++{
++	struct imon_context *context = usb_get_intfdata(intf);
++
++	if (context->ir_isopen)
++		usb_kill_urb(context->rx_urb);
++
++	return 0;
++}
++
++static int imon_resume(struct usb_interface *intf)
++{
++	int rc = 0;
++	struct imon_context *context = usb_get_intfdata(intf);
++
++	if (context->ir_isopen)
++		rc = usb_submit_urb(context->rx_urb, GFP_ATOMIC);
++
++	return rc;
++}
++
 +static int __init imon_init(void)
 +{
 +	int rc;
@@ -4432,6 +4464,7 @@
 +		err("%s: usb register failed(%d)", __func__, rc);
 +		return -ENODEV;
 +	}
++
 +	return 0;
 +}
 +
@@ -6855,10 +6888,10 @@
 +MODULE_PARM_DESC(debug, "Debug enabled or not");
 diff --git a/drivers/input/lirc/lirc_mceusb2.c b/drivers/input/lirc/lirc_mceusb2.c
 new file mode 100644
-index 0000000..089ee21
+index 0000000..0551adf
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_mceusb2.c
-@@ -0,0 +1,1097 @@
+@@ -0,0 +1,1099 @@
 +/*
 + * LIRC driver for Philips eHome USB Infrared Transceiver
 + * and the Microsoft MCE 2005 Remote Control
@@ -7804,10 +7837,12 @@
 +	ir->usb_ep_out = ep_out;
 +
 +	if (dev->descriptor.iManufacturer
-+		&& usb_string(dev, dev->descriptor.iManufacturer, buf, 63) > 0)
++	    && usb_string(dev, dev->descriptor.iManufacturer,
++			  buf, sizeof(buf)) > 0)
 +		strlcpy(name, buf, sizeof(name));
 +	if (dev->descriptor.iProduct
-+		&& usb_string(dev, dev->descriptor.iProduct, buf, 63) > 0)
++	    && usb_string(dev, dev->descriptor.iProduct,
++			  buf, sizeof(buf)) > 0)
 +		snprintf(name + strlen(name), sizeof(name) - strlen(name),
 +			 " %s", buf);
 +	printk(DRIVER_NAME "[%d]: %s on usb%d:%d\n", devnum, name,
@@ -8705,10 +8740,10 @@
 +#endif
 diff --git a/drivers/input/lirc/lirc_sasem.c b/drivers/input/lirc/lirc_sasem.c
 new file mode 100644
-index 0000000..3b79372
+index 0000000..270f8ff
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_sasem.c
-@@ -0,0 +1,933 @@
+@@ -0,0 +1,931 @@
 +/*
 + * lirc_sasem.c - USB remote support for LIRC
 + * Version 0.5
@@ -8836,8 +8871,6 @@
 +	.write		= &vfd_write,
 +	.ioctl		= &vfd_ioctl,
 +	.release	= &vfd_close,
-+	.read		= lirc_dev_fop_read,
-+	.poll		= lirc_dev_fop_poll,
 +};
 +
 +/* USB Device ID for Sasem USB Control Board */
@@ -9644,7 +9677,7 @@
 +module_exit(sasem_exit);
 diff --git a/drivers/input/lirc/lirc_serial.c b/drivers/input/lirc/lirc_serial.c
 new file mode 100644
-index 0000000..692634f
+index 0000000..3e9292e
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_serial.c
 @@ -0,0 +1,1321 @@
@@ -10545,10 +10578,10 @@
 +			msleep(jiffies_to_msecs(HZ/25));
 +		}
 +		sense = (nlow >= nhigh ? 1 : 0);
-+		printk(KERN_INFO  LIRC_DRIVER_NAME  ": auto-detected active "
++		printk(KERN_INFO LIRC_DRIVER_NAME  ": auto-detected active "
 +		       "%s receiver\n", sense ? "low" : "high");
 +	} else
-+		printk(KERN_INFO  LIRC_DRIVER_NAME  ": Manually using active "
++		printk(KERN_INFO LIRC_DRIVER_NAME  ": Manually using active "
 +		       "%s receiver\n", sense ? "low" : "high");
 +
 +	return 0;
@@ -12271,10 +12304,10 @@
 +MODULE_PARM_DESC(debug, "Enable debugging messages");
 diff --git a/drivers/input/lirc/lirc_streamzap.c b/drivers/input/lirc/lirc_streamzap.c
 new file mode 100644
-index 0000000..f91c1e3
+index 0000000..6db4310
 --- /dev/null
 +++ b/drivers/input/lirc/lirc_streamzap.c
-@@ -0,0 +1,773 @@
+@@ -0,0 +1,775 @@
 +/*
 + * Streamzap Remote Control driver
 + *
@@ -12516,7 +12549,7 @@
 +			lirc_buffer_write(&sz->lirc_buf,
 +					    (unsigned char *) &data);
 +		} else {
-+			dprintk("buffer overflow\n", sz->driver.minor);
++			dprintk("buffer overflow", sz->driver.minor);
 +		}
 +	}
 +	if (!empty)
@@ -12553,7 +12586,7 @@
 +}
 +
 +static void push_full_pulse(struct usb_streamzap *sz,
-+				   unsigned char value)
++			    unsigned char value)
 +{
 +	int pulse;
 +
@@ -12580,23 +12613,23 @@
 +		sz->sum = 0;
 +	}
 +
-+	pulse = ((int) value)*STREAMZAP_RESOLUTION;
-+	pulse += STREAMZAP_RESOLUTION/2;
++	pulse = ((int) value) * STREAMZAP_RESOLUTION;
++	pulse += STREAMZAP_RESOLUTION / 2;
 +	sz->sum += pulse;
 +	pulse |= PULSE_BIT;
 +
-+	dprintk("p %u", sz->driver.minor, pulse&PULSE_MASK);
++	dprintk("p %u", sz->driver.minor, pulse & PULSE_MASK);
 +	push(sz, (char *)&pulse);
 +}
 +
 +static void push_half_pulse(struct usb_streamzap *sz,
-+				   unsigned char value)
++			    unsigned char value)
 +{
 +	push_full_pulse(sz, (value & STREAMZAP_PULSE_MASK)>>4);
 +}
 +
 +static void push_full_space(struct usb_streamzap *sz,
-+				   unsigned char value)
++			    unsigned char value)
 +{
 +	int space;
 +
@@ -12608,7 +12641,7 @@
 +}
 +
 +static void push_half_space(struct usb_streamzap *sz,
-+				   unsigned char value)
++			    unsigned char value)
 +{
 +	push_full_space(sz, value & STREAMZAP_SPACE_MASK);
 +}
@@ -12821,11 +12854,13 @@
 +		sz->endpoint->bInterval);
 +
 +	if (udev->descriptor.iManufacturer
-+	    && usb_string(udev, udev->descriptor.iManufacturer, buf, 63) > 0)
++	    && usb_string(udev, udev->descriptor.iManufacturer,
++			  buf, sizeof(buf)) > 0)
 +		strlcpy(name, buf, sizeof(name));
 +
 +	if (udev->descriptor.iProduct
-+	    && usb_string(udev,  udev->descriptor.iProduct, buf, 63) > 0)
++	    && usb_string(udev, udev->descriptor.iProduct,
++			  buf, sizeof(buf)) > 0)
 +		snprintf(name + strlen(name), sizeof(name) - strlen(name),
 +			 " %s", buf);
 +
@@ -12974,7 +13009,7 @@
 +{
 +	struct usb_streamzap *sz = usb_get_intfdata(intf);
 +
-+	printk(DRIVER_NAME "[%d]: suspend\n", sz->driver.minor);
++	printk(KERN_INFO DRIVER_NAME "[%d]: suspend\n", sz->driver.minor);
 +	if (sz->in_use) {
 +		if (sz->flush) {
 +			sz->flush = 0;




More information about the fedora-extras-commits mailing list