summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
AgeCommit message (Collapse)Author
2007-08-23Rename video-buf-dvb to videobuf-dvb to be consistent with the other patchesMauro Carvalho Chehab
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-08-23Remove the obsolete video-buf moduleMauro Carvalho Chehab
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> http://thread.gmane.org/gmane.comp.video.video4linux/34978/focus=34981 Reviewed-by: Ricardo Cerqueira <v4l@cerqueira.org>
2007-08-02Convert vivi to use videobuf-vmallocMauro Carvalho Chehab
This patch removes the usage of videobuf-dma-sg from vivi driver, using instead videobuf-vmalloc. This way, vivi will be useful for testing the newer method. Reverting this patch won't hurt vivi, since both methods work fine. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> --- linux/drivers/media/video/vivi.c | 211 ++------------------------------------- 1 file changed, 14 insertions(+), 197 deletions(-)
2007-08-02Add videobuf-vmallocMauro Carvalho Chehab
Adds a newer videobuf-vmalloc module. This module uses the same videobuf controls, but implements memory allocation based on vmalloc methods. With this method, an USB driver can use video-buf, without needing to request memory from the DMA-safe area. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> --- linux/drivers/media/Kconfig | 4 linux/drivers/media/video/Kconfig | 2 linux/drivers/media/video/Makefile | 1 linux/drivers/media/video/videobuf-vmalloc.c | 385 ++++++++++++++++++++++++++ linux/include/media/videobuf-vmalloc.h | 44 ++ 5 files changed, 435 insertions(+), 1 deletion(-)
2007-08-23Convert vivi to use the newer videobuf-dma-sg moduleMauro Carvalho Chehab
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-08-23Adapt drivers to use the newer videobuf modulesMauro Carvalho Chehab
PCI-dependent videobuf_foo methods were renamed as videobuf_pci_foo. Also, videobuf_dmabuf is now part of videobuf-dma-sg private struct. So, to access it, a subroutine call is needed. This patch renames all occurences of those function calls to be consistent with the video-buf split. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> http://thread.gmane.org/gmane.comp.video.video4linux/34978/focus=34981 Reviewed-by: Ricardo Cerqueira <v4l@cerqueira.org>
2007-08-23Replace video-buf to a more generic approachMauro Carvalho Chehab
video-buf currently does two different tasks: - Manages video buffers with a common code that allows implementing all the V4L2 different modes of buffering; - Controls memory allocations While the first task is generic, the second were written to support PCI DMA Scatter/Gather needs. The original approach can't even work for those video capture hardware that don't support scatter/gather. I did one approach to make it more generic. While the approach worked fine for vivi driver, it were not generic enough to handle USB needs. This patch creates two different modules, one containing the generic video buffer handling (videobuf-core) and another with PCI DMA S/G. After this patch, it would be simpler to write an USB video-buf and a non-SG DMA module. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> http://thread.gmane.org/gmane.comp.video.video4linux/34978/focus=34981 Reviewed-by: Ricardo Cerqueira <v4l@cerqueira.org>
2007-10-02 bw-qcam-use-data_reverse-instead-of-manually-poking-the-control-register fixMauro Carvalho Chehab
From: Brett Warden <brett.warden@gmail.com> coding-style repairs Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-02Add Typhoon Tv-Tuner PCI to bttv-cards.cMauro Carvalho Chehab
From: Sascha Sommer <saschasommer@freenet.de> Adds an entry for the Typhoon Tv-Tuner PCI to bttv-cards.c Signed-off-by: Sascha Sommer <saschasommer@freenet.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-01backport kernel changesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: A few changes were done at mainstream, affecting v4l/dvb drivers. Backport those changes to the out-kernel tree. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-01Fix bug #8689: Fixes IR stop/start during suspend/resumeMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> IR workqueue should be disabled during suspend. This avoids some troubles, like the one reported on bug #8689: "The Hauppauge HVR 1100 ir-remote control does not work after resume from suspend to ram or disk." This patch disables IR before suspending, re-enabling it after resume. Thanks to Peter Poklop <Peter.Poklop@gmx.at> for reporting it and helping with the fix. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-28compat: allow compililation with kernels with updated sound driversMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> A few distro kernels, like Mandriva 2.6.22.9-desktop-1mdv are starting to be shipped with the newer alsa drivers. This patch changes the compat code for older kernels in a way that it will be compatible also with those distro kernels. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-27 bw-qcam: use data_reverse instead of manually poking the control registerMauro Carvalho Chehab
From: Brett Warden <brett.warden@gmail.com> Fixes use of parport_write_control() to match the newer interface that requires explicit parport_data_reverse() and parport_data_forward() calls. This eliminates the following error message and restores the original intended behavior: parport0 (bw-qcam): use data_reverse for this! Also increases threshold in qc_detect() from 300 to 400, as my camera often results in a count of approx 330. Added a kernel error message to indicate detection failure. Thanks Ray and Randy for your comments, and for pointing out that I needed to reset the port to forward mode! Signed-off-by: Brett T. Warden <brett.warden@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-26 Oops in pwc v4l driverMauro Carvalho Chehab
From: Oliver Neukum <oliver@neukum.org> The pwc driver is defficient in locking, which can trigger an oops when disconnecting. Signed-off-by: Oliver Neukum <oneukum@suse.de> CC: Luc Saillard <luc@saillard.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-19 cafe_ccic: default to allocating DMA buffers at probe timeMauro Carvalho Chehab
From: Andres Salomon <dilinger@queued.net> By default, we allocate DMA buffers when actually reading from the video capture device. On a system with 128MB or 256MB of ram, it's very easy for that memory to quickly become fragmented. We've had users report having 30+MB of memory free, but the cafe_ccic driver is still unable to allocate DMA buffers. Our workaround has been to make use of the 'alloc_bufs_at_load' parameter to allocate DMA buffers during device probing. This patch makes DMA buffer allocation happen during device probe by default, and changes the parameter to 'alloc_bufs_at_read'. The camera hardware is there, if the cafe_ccic driver is enabled/loaded it should do its best to ensure that the camera is actually usable; delaying DMA buffer allocation saves an insignicant amount of memory, and causes the driver to be much less useful. Signed-off-by: Andres Salomon <dilinger@debian.org> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-20usbvision: add a terminating entry to the usb device id listThierry MERLE
From: Thierry MERLE <thierry.merle@free.fr> - added a {}, to terminate the struct usb_device_id list of the usbvision driver Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
2007-09-17 AverTV Studio 307 has only one composite inputMauro Carvalho Chehab
From: Stas Sergeev <stsp@aknet.ru> AverTV Studio 307 has only one composite input. Signed-off-by: Stas Sergeev <stsp@aknet.ru> Acked-by: Nickolay V. Shmyrev <nshmyrev@yandex.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-18VIDEO_CX23885 depends on DVB_COREMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Fix the following dependency issue: ERROR: "dvb_dmx_init" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_unregister_adapter" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_register_frontend" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_unregister_frontend" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_net_release" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_frontend_detach" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_dmxdev_release" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_dmx_swfilter" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_net_init" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_dmx_release" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_register_adapter" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "dvb_dmxdev_init" [drivers/media/video/video-buf-dvb.ko] undefined! ERROR: "mt2131_attach" [drivers/media/video/cx23885/cx23885.ko] undefined! ERROR: "s5h1409_attach" [drivers/media/video/cx23885/cx23885.ko] undefined! Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Steve Toth <stoth@hauppauge.com>
2007-09-15VIDEO_CX23885 must select DVB_PLL if !DVB_FE_CUSTOMISE for FusionHDTV5 ExpressMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-08-30 TCM825x: Add support for vidioc_int_g_ifparm call, small cleanups.Mauro Carvalho Chehab
From: Sakari Ailus <sakari.ailus@nokia.com> vidioc_int_g_ifparm returns platform-specific information about the interface settings used by the sensor. Support for [gs]_ext_clk has been removed. Fix indentation and remove useless & characters. Remove experiment for typechecking slave callback function arguments. Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-08-30 V4L: Int if: Use -ENOIOCTLCMD for nonexistent ioctls.Mauro Carvalho Chehab
From: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-08-30 V4L: Int if: add vidioc_int_g_ifparm, other updates.Mauro Carvalho Chehab
From: Sakari Ailus <sakari.ailus@nokia.com> vidioc_int_g_ifparm can be used to obtain hardware-specific information about the interface used by the slave. Rearrange v4l2-int-device.h as well. Also remove useless & characters. Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-12 Bugfix for saa6588.c, add forgotten spin_lock_init()Mauro Carvalho Chehab
From: Hans-Jürgen Koch <hjk@linutronix.de> There's a serious bug in saa6588.c, it uses a non-initialized spin_lock. Funny thing is that it works fine with bttv, but completly freezes the machine if e.g. saa7134 is loaded. Thanks to Derek Philip for reporting this bug on the rdsd-devel list. This patch adds the missing spin_lock_init(). Signed-off-by: Hans J. Koch <hjk@linutronix.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-09 usbvision: Don't support I2C_M_REV_DIR_ADDRMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> I2C adapters should only support I2C_M_REV_DIR_ADDR if they really have to (i.e. if they are connected to a broken I2C device which needs this deviation from the standard I2C protocol.) As no media chip driver uses I2C_M_REV_DIR_ADDR, I don't think that the usbvision driver needs to support it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Thierry Merle <thierry.merle@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-12merge: http://linuxtv.org/hg/~mcisely/pvrusb2Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-10 Fix SVideo input on KWorld DVB-T 220 boardsMauro Carvalho Chehab
From: Simon Farnsworth <simon.farnsworth@onelan.co.uk> Fix SVideo input on KWorld DVB-T 220 boards. Without this patch, the luma pin on the SVideo input is treated as a composite in, and the chroma pin is ignored. Also, fix the radio, and provide a second composite input for people who are used to the existing composite on SVideo connector behaviour. Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> Reviewed-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-11merge: http://linuxtv.org/hg/~mkrufky/compatMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-10compat: fix build for kernels < 2.6.19 (missing <sound/tlv.h>)Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> include/sound/tlv.h was first added in 2.6.19 Disable the TLV support for kernels prior to 2.6.19 Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-09-09cx23885: use a pointer to the required i2c bus in dvb_register functionMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Store a pointer to the required i2c_bus so that we do not put the wrong analog demod into standby. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-09-08pvrusb2: I2C adapter tweaks from Jean DelvareMike Isely
From: Jean Delvare <khali@linux-fr.org> * I2C adapters aren't expected to handle I2C_M_NOSTART unless they really have to. As the pvrusb2 driver doesn't support it, I take it that it doesn't need it so it shouldn't mention it at all. * I2C_FUNC_SMBUS_EMUL includes I2C_FUNC_SMBUS_BYTE_DATA so listing both is redundant. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Allocate a debug mask bit for reporting video standard thingsMike Isely
From: Mike Isely <isely@pobox.com> It's useful to see specific details for how the pvrusb2 driver is figuring out things related to the video standard, independent of other initialization activities. So let's set up a separate debug mask bit for this and turn it on. Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Do a far better job at setting the default initial video standardMike Isely
From: Mike Isely <isely@pobox.com> The v4l tveeprom logic tells us what video standards are supported by the hardware, however it doesn't directly tell us what should be the preferred initial standard. For example "NTSC/NTSC-J" devices are reported by tveeprom as support NTSC-M and PAL-M, and while that might be true, in the vast majority of cases NTSC-M is really what the user is going to want. However the driver previously just arbitrarily picked the "lowest numbered" standard as the initial default, which in that case would have been PAL-M. (And making matters more confusing - this only caused real problems on 24xxx devices because the saa7115 on 29xxx seems to autodetect the right answer anyway.) This change implements an algorithm that uses the set of "supported" standards as a hint to decide on the initial standard. This algorithm ONLY comes into play if the driver isn't specifically told what to do; said another way - the user can always still change the standard via the sysfs interface, via the usual V4L methods, or even specified as a module parameter. The idea here is only to pick a better starting point if the user (or app) doesn't otherwise do something to set the standard; otherwise this change has no real impact. Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Various changes to better discriminate among device typesMike Isely
From: Mike Isely <isely@pobox.com> This is a bunch of cleanup in various places to improve behavior based on actual device type being driven. While this doesn't actually affect operation with existing devices, it cleans things up so that it will be easier / more deterministic when other devices are added. Ideally we should make stuff like this table-driven, but for now this is just a series of small incremental (read: safe) improvements. Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Implement programmatic means to extract prom contentsMike Isely
From: Mike Isely <isely@pobox.com> The pvrusb2 driver already has a method for extracting the FX2's program memory back out to a user application; this ability is used to facilitate manual firmware extraction as per the procedure documented on the pvrusb2 web site. This change follows that pattern and implements a corresponding method to grab the binary contents of the PVR USB2 prom (which for PVR USB2 devices can contain information in addition to the usual Hauppauge metadata). Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Fix a potential oops in an error leg cleanupMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Properly terminate USB device ID tableMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08pvrusb2: Fix oops in error leg cleanupMike Isely
From: Mike Isely <isely@pobox.com> Signed-off-by: Mike Isely <isely@pobox.com>
2007-09-08cx23885: Changes to allow demodulators on each transport bus.Steven Toth
From: Steven Toth <stoth@hauppauge.com> cx23885: Changes to allow demodulators on each transport bus. Signed-off-by: Steven Toth <stoth@hauppauge.com>
2007-09-08cx23885: add support for DViCO FusionHDTV 5 ExpressMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> This patch adds digital ATSC / QAM support for the DViCO FusionHDTV5 Express. Remote control is supported by ir-kbd-i2c, RTC is supported by rtc-isl1208. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-09-08Changes to support MPEG TS on VIDBSteven Toth
From: Steven Toth <stoth@hauppauge.com> Changes to support MPEG TS on VIDB Signed-off-by: Steven Toth <stoth@hauppauge.com>
2007-09-08Changes to support interrupts on VIDBSteven Toth
From: Steven Toth <stoth@hauppauge.com> Changes to support interrupts on VIDB Signed-off-by: Steven Toth <stoth@hauppauge.com>
2007-09-08cx23885: define Video B Interrupt Status register bit valuesMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> - define missing register bit values for VID_B - corrected VID/VBI_B_GPCNT_CTL register addresses Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-09-08merge: http://www.linuxtv.org/hg/~stoth/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-09-06cx88-alsa: Add TLV supportTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Lets mixer apps display a dB range for the volume control. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-09-06cx88-alsa: Remove some unused fields in card state structTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Not sure why they are there, but they don't do anything now. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-09-06cx88-alsa: Add mute controls, change control namesTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Add two mute controls. One mutes everything, the other just mutes the analog pass-through output. Rename the existing volume control. The controls are now: Playback Volume Playback Switch Capture Switch These names might seem odd, but I believe they are more correct. The previous "Capture Volume" control didn't actually effect the volume of the captured audio. Instead it controls the volume of the analog pass-thought output. It appears that pass-through controls like this are usually considered to be in the playback direction, not capture. For example, "CAPTURE feedback Playback Volume" is the name used for a control that appears to have the same effect in the ca0106 driver. We only have one volume control, so we can omit the "CAPTURE feedback" part. If someone where to add PCM playback support to the driver, then this would be the volume control. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-09-06cx88-alsa: Make volume control stereoTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Use the balance control to make the mono volume control stereo. Note that full range isn't supported. The balance control attenuates one channel by 0 to -63 dB, and the volume control provides additional attenuation to both channels by another 0 to -63 dB. So the channel with the most attenuation has a range of 0 to -126 dB, while the other channel only has a range of 0 to -63 dB. ALSA volume controls don't appear to support this concept. I just limited the range to 0 to -63 total. Once you get to -63 dB, you're already at silence, so additional attenuation is pretty much pointless anyway. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-09-06Avoid a NULL pointer dereference during mpeg_open()Steven Toth
From: Steven Toth <stoth@hauppauge.com> Bug: With a hardware encoder board installed as cx88[1] and a non-encoder boards installed as cx88[0], an OOPS is generated during cx8802_get_device() called from mpeg_open(). Signed-off-by: Steven Toth <stoth@hauppauge.com>
2007-09-06tuner: fix compat for kernel versions 2.6.15 and earlierMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Fix a typo in tuner_dbg that broke the build against older kernels. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-09-06Ensure start_dma() is capable of starting dma on port VIDB.Steven Toth
From: Steven Toth <stoth@hauppauge.com> start_dma() would fail to start dma if a device used VIDB (portb). Signed-off-by: Steven Toth <stoth@hauppauge.com>