summaryrefslogtreecommitdiff
path: root/linux
AgeCommit message (Collapse)Author
2007-10-14ivtvfb: check return value of unregister_framebuffer.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Prevent unloading the framebuffer if it is still in use. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-13ivtv: fix circular locking (bug 9037)Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> If you try to access the video device from within an udev rule, then you get into a circular locking situation. Changed the driver to postpone the registration of the devices until everything else has been fully initialized, so that the newly created device can be used immediately. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-13 V4L: saa7134: Fix interaction between tvaudio thread and the freezerMauro Carvalho Chehab
From: Maxim Levitsky <maximlevitsky@gmail.com> make tvaudio thread freezeable, and add proper support for that Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-12ivtv: fix resizing MPEG1 streamsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Resizing an MPEG 1 stream would cut off the right half of the image due to a missing divide by 2 in VIDIOC_S_FMT. Also did some minor cleanup in this part of the code. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-12ivtvfb: screen mode change sometimes goes wrong.Hans Verkuil
From: Ian Armstrong <ian@iarmst.demon.co.uk> This patch partially reverts a previous change that caused the CX2341X_OSD_SET_PIXEL_FORMAT firmware calls to be skipped when the pixel format of the framebuffer wasn't altered by FBIOPUT_VSCREENINFO. Unfortunately, another firmware call on the PVR350 sometimes scrambles the display when trying to adjust the framebuffer settings. This patch re-enables the CX2341X_OSD_SET_PIXEL_FORMAT calls to try and prevent this from occurring. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-12ivtv: set the video color to black instead of green when capturing from the ↵Hans Verkuil
radio. From: Hans Verkuil <hverkuil@xs4all.nl> Thanks-to: Martin Dauskardt <md001@gmx.de> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-12ivtv: fix incorrect EBUSY return.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Trying to open the radio when a capture is in progress will make it impossible to open the radio again since the radio stream wasn't released. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-12 Additional Fixes for saa7134 suspend/resumeMauro Carvalho Chehab
From: Maxim Levitsky <maximlevitsky@gmail.com> Fixes few more problems I found in my saa7134 resume code: * Race between IRQ handler and .suspend()/.resume() functions * Removes timeout timers on active buffers - those buffers will be recaptured after resume * Adds suspend/resume for IR code - probably necessary if using polling mode * Adds #ifdef CONFIG_PM overs suspend code * Runs a quirk in set_tvnorm in suspend/resume too * Rearranges the order of calls in saa7134_resume to be exactly as in saa7134_initdev thus the card is initialized in exactly the same way * Since DMA audio capture suspend/resume isn't yet supported, avoid re-enabling it on resume for now Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-14 ivtv: fix NULL dereferenceMauro Carvalho Chehab
From: Adrian Bunk <bunk@kernel.org> We shouldn't dereference "itv" when we know it's NULL... Spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@kernel.org> Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-15merge: http://linuxtv.org/hg/~mkrufky/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-14tuner-core.c: fe_has_signal() can return uninitialized valueMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Initialize strength to zero. Thanks to Adrian Bunk, who spotted this with the Coverity checker. Cc: Adrian Bunk <bunk@kernel.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-13 Double-free in cx23885_initdevMauro Carvalho Chehab
From: Florin Malita <fmalita@gmail.com> Both cx23885_initdev and cx23885_dev_setup free the device in their error path so a failure in the latter causes a double-free. Since cx23885_dev_setup is only called from cx23885_initdev, it should be safe to remove its deallocation and leave the cleanup up to the allocating function. Coverity CID 1922. Signed-off-by: Florin Malita <fmalita@gmail.com> CC: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-13 fix videobuf_cgmbuf exportMauro Carvalho Chehab
From: Pekka Enberg <penberg@cs.helsinki.fi> As videobuf_cgmbuf is defined only if CONFIG_VIDEO_V4L1_COMPAT is enabled, move the EXPORT_SYMBOL_GPL declaration inside the #ifdef block. Fixes compilation for x86_64 defconfig. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> CC: Ingo Molnar <mingo@elte.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-15 V4L: cinergyT2, remove bad usage of ERESTARTSYSMauro Carvalho Chehab
From: Jiri Slaby <jirislaby@gmail.com> cinergyT2, remove bad usage of ERESTARTSYS test of cinergyt2->disconnect_pending doesn't ensure pending signal and so ERESTARTSYS would reach userspace, which is not permitted. Change it to EAGAIN Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-15merge: http://www.linuxtv.org/hg/~hverkuil/mpegcompMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-15v4l core: remove the unused .hardware V4L1 fieldMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> struct video_device used to define a .hardware field. While initialized on severl drivers, this field is never used inside V4L. However, drivers using it need to include the old V4L1 header. This seems to cause compilation troubles with some random configs. Better just to remove it from all drivers. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-15radio-gemtek: fix 'VID_HARDWARE_GEMTEK' undeclaredMauro Carvalho Chehab
From: Pekka Seppänen <pexu@kapsi.fi> Remove obsolete V4L v1 reference. Thanks to Ingo Molnar for pointing this issue. Signed-off-by: Pekka Seppänen <pexu@kapsi.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-11 cx23885: Drop empty i2c algorithm control callbackMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> i2c_algorithm.algo_control no longer exists. Signed-off-by: Jean Delvare <khali@linux-fr.org> Reviewed-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-11Remove obsolete VIDIOC_S/G_MPEGCOMP ioctlsHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Remove the obsolete VIDIOC_G_MPEGCOMP and VIDIOC_S_MPEGCOMP ioctls from the V4L2 API as per the removal schedule (October 2007). Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-11 git-dvb: rename videobuf_qtype_ops.copy_to_user()Mauro Carvalho Chehab
From: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-10Change list_for_each+list_entry to list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The rest of V4L files. There is one list_for_each+list_entry in cpia_pp.c that wasn't changed because it expects the loop iterator to remain NULL if the list is empty. A bug in vivi is fixed; the 'safe' version needs to be used because the loop deletes the list entries. Simplify a second loop in vivi and get rid if an un-used variable in that loop. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-10pvrusb2: Change list_for_each+list_entry to list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Reviewed-by: Mike Isely <isely@pobox.com>
2007-10-10saa7134: Replace list_for_each+list_entry with list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> A couple loops weren't changed because they expected the loop iterator to be left as NULL if the list was empty. Maybe the code should just check for that first, then loop? Adjust some of the loop logic to be simpler. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-10ivtv: Replace list_for_each+list_entry with list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Also fixed a few cases of cut&paste errors where 'buf' would be set to the first entry in the list prior to be used as the loop iterator. In one case the value of buf was used before it was changed, but the rest were unnecessary. There was one list_for_each+list_entry loop that wasn't changed, since it depending on the loop iterator being left as NULL if the list was empty. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: Hans Verkuil <hverkuil@xs4all.nl>
2007-10-10cx88: Replace list_for_each+list_entry with list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-10dvb: Replace list_for_each+list_entry with list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-10Rename patch forgot to rename #include <linux/video-buf-dvb.h>Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Building were not broken, since the building system were using the kernel's video-buf-dvb.h. This changeset will be merged with cs 6257 at -git. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-09 V4L: zc0301, remove bad usage of ERESTARTSYSMauro Carvalho Chehab
From: Jiri Slaby <jirislaby@gmail.com> zc0301, remove bad usage of ERESTARTSYS down_read_trylock can't be interrupted and so ERESTARTSYS would reach userspace, which is not permitted. Change it to EAGAIN Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Luca Risolia <luca.risolia@studio.unibo.it> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-09 V4L: w9968cf, remove bad usage of ERESTARTSYSMauro Carvalho Chehab
From: Jiri Slaby <jirislaby@gmail.com> w9968cf, remove bad usage of ERESTARTSYS down_read_trylock can't be interrupted and so ERESTARTSYS would reach userspace, which is not permitted. Change it to EAGAIN Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Luca Risolia <luca.risolia@studio.unibo.it> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08 Few clenups for saa7134 resume codeMauro Carvalho Chehab
From: Maxim Levitsky <maximlevitsky@gmail.com> *Disable DMA explictly on suspend *Enable DMA on resume, after all buffers were configured *Disable overlay on resume - apps should enable it when X is resumed ` Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-05 V4L: videobuf-core.c avoid NULL dereferences in videobuf-coreMauro Carvalho Chehab
From: Brandon Philips <bphilips@suse.de> The return value of videobuf_alloc() is unchecked but this function will return NULL on an error. Check for NULL and make videobuf_reqbufs() return the number of successfully allocated buffers. Also, fix saa7146_video.c and bttv-driver.c to use this returned buffer count. Tested against the vivi driver. Not tested against saa7146 or bt8xx devices. Signed-off-by: Brandon Philips <bphilips@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08merge: http://linuxtv.org/hg/~tap/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08merge: http://linuxtv.org/hg/~mkrufky/pendingMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08pvrusb: Update DEBUGIFC sysfs to kernel 2.6.13+Trent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The prototypes for the show and store methods of a device_attribute changed in kernel 2.6.13, but the code in pvrusb2 was never updated. I guess the DEBUGIFC stuff isn't used much.... Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-08compat: Remove unneeded #ifTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Both true and false branch of the #if had the exact same code, just line wrapped differently. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-08dvb: Add dependencies for VIDEOBUF_DVBTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> It needs to select VIDEOBUF_GEN and VIDEOBUF_DMA_SG, since it uses those modules. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-10-08cx23885: remove wrong Kconfig selection of VIDEOBUFMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> fix bad Kconfig dependency of cx23885 module. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-08dib0700: add support for AverMedia DVB-T Express cardMichael Krufky
From: Joachim Steiger <roh@hyte.de> add Avermedia dvb-t express card 34 (usb2) id Signed-off-by: Joachim Steiger <roh@hyte.de> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-08V4L: convert struct class_device to struct deviceMauro Carvalho Chehab
From: Kay Sievers <kay.sievers@vrfy.org> The currently used "struct class_device" will be removed from the kernel. Here is a patch that converts all users in drivers/media/video/ to struct device. Reviewed-by: Thierry Merle <thierry.merle@free.fr> Reviewed-by: Mike Isely <isely@pobox.com> Reviewed-by: Luca Risolia <luca.risolia@studio.unibo.it> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
2007-10-08saa7134: add autodetection for KWorld ATSC-115Michael Krufky
From: Eric Sandeen <sandeen@sandeen.net> Recognize the KWorld ATSC115 PCI ID as a hardware clone of the ATSC110. Signed-off-by: Eric Sandeen <sandeen@sandeen.net> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-08videobuf_core init always require callback implementationMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> In the past, videobuf_queue_init were used to initialize PCI DMA videobuffers. This patch renames it, to avoid confusion with the previous kernel API, doing: s/videobuf_queue_init/void videobuf_queue_core_init/ Also, the operations is now part of the function parameter. The function will also add a test if this is defined, otherwise producing BUG. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08Fix: avoid oops on some SMP machinesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This workaround fix a bug that happens on some SMP machines. On those machines, videobuf_iolock is called too soon, before file .mmap handler. This patch calls the scheduler before iolocking, allowing it to properly call the pending mmap. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08remove videobuf_set_pci_opsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Before the videobuf redesign, a procedure for re-using videobuf without PCI scatter/gather where provided by changing the pci-dependent operations by other operations. With the newer approach, those methods are obsolete and can safelly be removed. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08Remove reference to dead CONFIG_UST and ust.h header.Mauro Carvalho Chehab
From: "Robert P. J. Day" <rpjday@mindspring.com> Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08compat: remove strlcpyMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This is already defined on compat.h Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-08Fix DMA Scatter/Gather constructorMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> cx23885 driver were converted to use the newer videobuf support. Unfortunately, the constructor weren't changed. This causes an oops, since the abstract methods (implemented as callbacks) aren't defined. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-07Add support for MSI TV @nywhere A/D NBMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> This is a Lifeview hybrid OEM board. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-05cx8802: Plug memory leak when unregistering a driverTrent Piepho
When a cx8802 sub-driver was unregistered, the struct cx8802_driver, which was kmalloc()ed by cx8802_register_driver(), was deleted from the list of drivers, but never freed. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Reviewed-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-13cx8802: Replace list_for_each+list_entry with list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Less code and more efficient. Got ride of a variable that counted the number of devices in cx8802_unregister_driver() but was never used. Looked leftover from a cut&paste. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Reviewed-by: Michael Krufky <mkrufky@linuxtv.org>
2007-10-13cx88: Change (struct cx8802_dev)->drvlist to a list_head and fix bugsTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> It was a struct cx8802_driver for no apparent reason. Nothing uses a cx8802_driver in the cx8802_dev struct. The only field that was used was devlist, a list_head. The code in cx8802_remove() that removed any loaded sub-drivers was broken. It would delete the current list entry, but didn't use list_for_each_safe. It also called list_del() on the list _head_ inside the list_for_each loop? It would crash if it was run, which I don't think can ever happen. Since the cx8802 sub-drivers use the cx8802 driver, they have to be unloaded first. So there isn't any way for a sub-driver to still be loaded when cx8802_remove() is called... Except maybe with PCI hot-plug, if one removes the PCI card while the drivers are loaded? So I left some code in to handle that if it's actually possible. It will remove the sub-drivers from the device cx8802_remove() was called on, and only that device. If one has two DVB cards and unplugs one, there is no reason to unload the DVB drivers for both cards. I have no way to test this, but it can't be worse than what was there before. cx8802_get_driver() is passed a cx8802_dev pointer and looks for the requested driver on that device. It first loops over the cx8802 device list looking for the device it was passed, which is pointless. It doesn't need to find the device pointer in the list, as it already has the pointer. The list_head in the cx8802_driver struct, which joins all the _drivers_ attached to a device, was named devlist. Changed that to drvlist, since the devlist is used for a list of _devices_ in other cx8802 structs. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Reviewed-by: Michael Krufky <mkrufky@linuxtv.org>