summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/usbvideo
AgeCommit message (Collapse)Author
2006-11-20Handle errors from input_register_device()Mauro Carvalho Chehab
From: Dmitry Torokhov <dtor@insightbb.com> Also sprinkled some input_sync() throughout the code. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Ricardo Cerqueira <v4l@cerqueira.org> Acked-by: Oliver Endriss <o.endriss@gmx.de> Acked-by: Andrew de Quincey <adq_dvb@lidskialf.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-21IRQ: Maintain regs pointer globally rather than passing to IRQ handlersMauro Carvalho Chehab
Kernel-sync: This patch is required to allow compilation of the tree with kernel 2.6.19. This is the original description of the original patch, signed by David Howells <dhowells@redhat.com>: Maintain a per-CPU global "struct pt_regs *" variable which can be used instead of passing regs around manually through all ~1800 interrupt handlers in the Linux kernel. The regs pointer is used in few places, but it potentially costs both stack space and code to pass it around. On the FRV arch, removing the regs parameter from all the genirq function results in a 20% speed up of the IRQ exit path (ie: from leaving timer_interrupt() to leaving do_IRQ()). Where appropriate, an arch may override the generic storage facility and do something different with the variable. On FRV, for instance, the address is maintained in GR28 at all times inside the kernel as part of general exception handling. Having looked over the code, it appears that the parameter may be handed down through up to twenty or so layers of functions. Consider a USB character device attached to a USB hub, attached to a USB controller that posts its interrupts through a cascaded auxiliary interrupt controller. A character device driver may want to pass regs to the sysrq handler through the input layer which adds another few layers of parameter passing. I've build this code with allyesconfig for x86_64 and i386. I've runtested the main part of the code on FRV and i386, though I can't test most of the drivers. I've also done partial conversion for powerpc and MIPS - these at least compile with minimal configurations. This will affect all archs. Mostly the changes should be relatively easy. Take do_IRQ(), store the regs pointer at the beginning, saving the old one: struct pt_regs *old_regs = set_irq_regs(regs); And put the old one back at the end: set_irq_regs(old_regs); Don't pass regs through to generic_handle_irq() or __do_IRQ(). In timer_interrupt(), this sort of change will be necessary: - update_process_times(user_mode(regs)); - profile_tick(CPU_PROFILING, regs); + update_process_times(user_mode(get_irq_regs())); + profile_tick(CPU_PROFILING); I'd like to move update_process_times()'s use of get_irq_regs() into itself, except that i386, alone of the archs, uses something other than user_mode(). Some notes on the interrupt handling in the drivers: (*) input_dev() is now gone entirely. The regs pointer is no longer stored in the input_dev struct. (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does something different depending on whether it's been supplied with a regs pointer or not. (*) Various IRQ handler function pointers have been moved to type irq_handler_t. Signed-Off-By: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-09-03Adds Compro PS39U USB ID to Vicam driverMauro Carvalho Chehab
From: Bas Bloemsaat <bas.bloemsaat@gmail.com> Trivial patch to make Compro PS39U WebCam work with linux by using the vicam driver. The camera is just a vicam with another USB ID, so I added that ID to the driver, and it works now. Signed-off-by: Bas Bloemsaat <bas.bloemsaat@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-08-02Fix a typo on the previous patchMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-08-02Konicawc - handle errors from input_register_device()Mauro Carvalho Chehab
From: Dmitry Torokhov <dtor@insightbb.com> Compile-tested only (no hardware) Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-07-23Fix broken dependencies on media Kconfig Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-07-19Several other backports from kernel to v4l/dvb treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-06-26Include compat.h header fileMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-06-25Update this driver for recent header file movement.Mauro Carvalho Chehab
From: Andrew Morton <akpm@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-06-25usb input headers changed to 2.6.18Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-06-05Removed all references to kernel stuff from videodev.h and videodev2.hMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> The videodev.h and videodev2.h describe the public API for V4L and V4L2. It shouldn't have there any kernel-specific stuff. Those were moved to v4l2-dev.h. This patch removes some uneeded headers and include v4l2-common.h on all V4L driver. This header includes device implementation of V4L2 API provided on v4l2-dev.h as well as V4L2 internal ioctls that provides connections between master driver and its i2c devices. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-05-19Fix some compilation warningsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-05-17Whitespace removal from previous patchMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-05-17Usbvideo/quickcam_messenger driver v4lMauro Carvalho Chehab
From: jayakumar.video@gmail.com <jayakumar.video@gmail.com> Adds a usbvideo driver for the Logitech Quickcam Messenger USB webcam. Signed-off-by: Jaya Kumar <jayakumar.video@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-24Fix compilation for sn9c102 on older kernelsMauro Carvalho Chehab
From: reinhard schwab <reinhard.schwab@aon.at> Signed-off-by: Reinhard Schwab <reinhard.schwab@aon.at> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-11Keep #if 0/#if 1 for newer drivers at the treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-04-11Merge: from V4L1 treeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>