summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video
AgeCommit message (Collapse)Author
2008-07-02zr36067: Delete dead codeMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> This has been commented out for years, it's about time to get rid of it. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-11uvcvideo: Fix possible AB-BA deadlock with videodev_lock and open_mutexMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> The uvcvideo driver's uvc_v4l2_open() method is called from videodev's video_open() function, which means it is called with the videodev_lock mutex held. uvc_v4l2_open() then takes uvc_driver.open_mutex to check dev->state and avoid racing against a device disconnect, which means that open_mutex must nest inside videodev_lock. However uvc_disconnect() takes the open_mutex around setting dev->state and also around putting its device reference. However, if uvc_disconnect() ends up dropping the last reference, it will call uvc_delete(), which calls into the videodev code to unregister its device, and this will end up taking videodev_lock. This opens a (unlikely in practice) window for an AB-BA deadlock and also causes a lockdep warning because of the lock misordering. Fortunately there is no apparent reason to hold open_mutex when doing kref_put() in uvc_disconnect(): if uvc_v4l2_open() runs before the state is set to UVC_DEV_DISCONNECTED, then it will take another reference to the device and kref_put() won't call uvc_delete; if uvc_v4l2_open() runs after the state is set, it will run before uvc_delete(), see the state, and return immediately -- uvc_delete() does uvc_unregister_video() (and hence video_unregister_device(), which is synchronized with videodev_lock) as its first thing, so there is no risk of use-after-free in uvc_v4l2_open(). Bug diagnosed based on a lockdep warning reported by Romano Giannetti <romano@dea.icai.upcomillas.es>. Signed-off-by: Roland Dreier <roland@digitalvampire.org> Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-04uvc/uvc_v4l2.c: suppress uninitialized var warningMauro Carvalho Chehab
From: Andrew Morton <akpm@linux-foundation.org> drivers/media/video/uvc/uvc_v4l2.c: In function `uvc_v4l2_mmap': drivers/media/video/uvc/uvc_v4l2.c:1035: warning: 'buffer' might be used uninitialized in this function Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-11ov7670: clean up ov7670_read semanticsMauro Carvalho Chehab
From: Andres Salomon <dilinger@queued.net> Cortland Setlow pointed out a bug in ov7670.c where the result from ov7670_read() was just being checked for !0, rather than <0. This made me realize that ov7670_read's semantics were rather confusing; it both fills in 'value' with the result, and returns it. This is goes against general kernel convention; so rather than fixing callers, let's fix the function. This makes ov7670_read return <0 in the case of an error, and 0 upon success. Thus, code like: res = ov7670_read(...); if (!res) goto error; ..will work properly. Signed-off-by: Cortland Setlow <csetlow@tower-research.com> Signed-off-by: Andres Salomon <dilinger@debian.org> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-09uvcvideo : Add support for Asus F9GS integrated webcamMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-09gspca: fix warnings on x86_64Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> /home/v4l/master/v4l/gspca.c: In function 'gspca_frame_add': /home/v4l/master/v4l/gspca.c:222: warning: format '%d' expects type 'int', but argument 2 has type 'long int' /home/v4l/master/v4l/gspca.c: In function 'dev_read': /home/v4l/master/v4l/gspca.c:1568: warning: format '%d' expects type 'int', but argument 2 has type 'size_t' /home/v4l/master/v4l/gspca.c:1618: warning: format '%d' expects type 'int', but argument 3 has type 'size_t' Acked-by: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-04buf-dma-sg.c: avoid clearing memory twiceMauro Carvalho Chehab
From: Christophe Jaillet <jaillet.christophe@wanadoo.fr> 1) Remove a useless initialisation of 'i' 2) Avoid clearing the memory allocated twice (once in 'kcalloc', once in 'sg_init_table') 3) Remove a test that can never trigger. The function returns NULL in such a case, so we know that at this point 'pages[0]' != NULL Signed-off-by: Christophe Jaillet <jaillet.christophe@wanadoo.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08Fix pointer cast warnings in the ivtv framebuffer driverMauro Carvalho Chehab
From: David Howells <dhowells@redhat.com> Fix casts of pointers to integers of different sizes in the ivtv framebuffer driver. These were introduced in patch 38eb6ba5b8487d15b020fe391d324edd2b659b03. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08Fix a const pointer error in the Conexant cx23418 MPEG encoder driverMauro Carvalho Chehab
From: David Howells <dhowells@redhat.com> Fix a const pointer to non-const pointer assignment error in the Conexant cx23418 MPEG encoder driver. This was introduces in patch 1c1e45d17b663d4749af456ab7c2fc1f36405ef8. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-10tvaudio: Stop I2C driver ID abuseMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> The tvaudio driver is using "official" I2C device IDs for internal purpose. There must be some historical reason behind this but anyway, it shouldn't do that. As the stored values are never used, the easiest way to fix the problem is simply to remove them altogether. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-10ovcamchip: Delete stray I2C bus IDMauro Carvalho Chehab
From: Jean Delvare <khali@linux-fr.org> I2C_HW_SMBUS_OVFX2 is referenced in ovcamchip_core.c, but no bus uses this driver ID, so we can remove the reference. As far as I can see, the Cypress FX2 webcam is handled by a different driver (dvb-usb). Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-11saa7134: add support for AVerMedia M103Mauro Carvalho Chehab
From: Massimo Piccioni <alsa@piccio.org> The following patch updates saa7134 driver to add support for AVerMedia M103 MiniPCI DVB-T Hybrid card. Signed-off-by: Massimo Piccioni <alsa@piccio.org> [mchehab@infradead.org: fixed merge conflicts and a small codingstyle] Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-09merge: http://www.linuxtv.org/hg/~hverkuil/v4l-dvb-compatMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-09merge: http://linuxtv.org/hg/~mkrufky/fusionhdtv7Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08cx23885: add support for new revision of FusionHDTV7 Dual ExpressMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> The new revision of this board uses the same pci subsystem id as the first revision, but uses a S5H1411 demodulator instead of the S5H1409. In the case of the FusionHDTV7 Dual Express, if s5h1409_attach fails, try s5h1411_attach. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-07-08v4l-dvb: remove support for kernels < 2.6.16Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 4 removes the compatibility support for kernels < 2.6.16. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-07uvcvideo : Add support for Medion Akoya Mini E1210 integrated webcamMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Tim Gardner <tim.gardner@canonical.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-07uvcvideo: Make input device support optionalMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> UVC devices can report button events. The uvcvideo driver depends on CONFIG_INPUT to report events to the input layer. This patch removes the hard dependency by introducing a new CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV option. Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08merge: http://linuxtv.org/hg/~jfrancois/gspca/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-08gspca: Change the USERPTR mechanism.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> main: Change the packet copy mechanism for userptr. Cannot do reqbufs ioctl when already done and count != 0. Accept count < frame size in read(). Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-08v4l-dvb: remove support for kernels < 2.6.13Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 3 of the compat cleanup. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.10Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Phase 2 removes support for kernels < 2.6.10. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-08v4l-dvb: remove support for kernels < 2.6.0Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> First phase of the backwards compatibility cleanup: stop supporting kernels older than 2.6.0. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-07-07gspca: Do not declare the webcams declared by other drivers.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> etoms: Do not declare the webcams declared by the driver et61x251. sonixb, sonixj: Do not declare the webcams declared by the driver sn9c102. zc3xx: Do not declare the webcams declared by the driver zc0301. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-06gspca: Size of frame header adjusted according to sn9c10x in sonixb.Jean-Francois Moine
From: Andoni Zubimendi <andoni.zubimendi@gmail.com> Signed-off-by: Andoni Zubimendi <andoni.zubimendi@gmail.com> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-06gspca: Cleanup code.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> spca508: Cleanup code. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-06merge...Jean-Francois Moine
2008-07-06gspca: PAC207 frames may be not compressed.Jean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> pac207: Set the sizeimage to the max value for 352x288. Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-05gspca: v4l2_pix_format in each subdriver.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> main: Parameter comp_fac removed. main, pac207: get_buff_size op removed. (all) v4l2_pix_format in each subdriver. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-05merge...Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-05gspca: Compile warnings about NULL ptr.Jean-Francois Moine
From: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-04gspca: Frame decoding errors when PAC207 in full daylight.Jean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-04gspca: pac207 frames no more decoded in the subdriver.Jean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> videodev2: New pixfmt pac207: Remove the specific decoding. main: get_buff_size operation added for the subdriver. Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-04gspca: Correct sizeimage in vidioc_s/try/g_fmt_capJean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-04gspca: Input buffer overwritten in spca561 + cleanup code.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> spca561: Input buffer may be changed on reg write. (all sd): Cleanup code, 'const' added. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-04spca508: Add Clone Digital Webcam 11043Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> Added ID vendor/product for Clone Digital Webcam 11043. Thanks to Ivan Brasil Fuzzer <ivan@fuzzer.com.br> for testing and data collection. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2008-07-04uvcvideo: Don't free URB buffers on suspend.Mauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> All submitted URBs must be killed at suspend time, but URB buffers don't have to be freed. Avoiding a free on suspend/reallocate on resume lowers the presure on system memory. Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-04uvcvideo: Use GFP_NOIO when allocating memory during resumeMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> The swap device might still be asleep, so memory allocated in the resume handler must use GFP_NOIO. Thanks to Oliver Neukum for catching and reporting this bug. Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-04uvcvideo: Fix a buffer overflow in format descriptor parsingMauro Carvalho Chehab
From: Laurent Pinchart <laurent.pinchart@skynet.be> Thanks to Oliver Neukum for catching and reporting this bug. Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-07merge: http://linuxtv.org/hg/~jfrancois/gspca/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-07cx18: Use correct GPIO pin for resetting Xceive 3028 tuner on Yuan MPC718Andy Walls
From: Andy Walls <awalls@radix.net> Change the Yuan MPC718 cards entry to use the correct GPIO pin for resetting the Xceive 3028 tuner. Thanks to Brian Hope <brian@hopefamily.info> for taking the time and figuring out which pin to use. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-06cx18: Add missing reset recovery delay in cx18-i2c.cAndy Walls
From: Andy Walls <awalls@radix.net> cx18: Add a missing reset recovery delay in cx18-i2c.c after the final deassert. Signed-off-by: Andy Walls <awalls@radix.net>
2008-07-03gspca: Fix the format of the low resolution mode of spca561.Jean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> The low (half) res modes of the spca561 are not spca561 compressed, but are raw bayer, this patches fixes this and adds a PIX_FMT define for the GBRG bayer format used by the spca561 in low res mode. Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-03gspca: Input buffer may be changed on reg write.Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> Done for conex, etoms, pac7311, sonixj, t613 and tv8532. Code cleanup for some other subdrivers. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-03From: Hans de Goede <j.w.r.degoede@hhs.nl>Jean-Francois Moine
Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-03gspca: Make CONFIG_VIDEO_ADV_DEBUG actually work.Jean-Francois Moine
From: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-02merge: http://linuxtv.org/hg/~jfrancois/gspca/Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-02uvc: Fix compilation breakage for the other drivers, if uvc is selectedMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> UVC makefile defines obj as: obj-$(CONFIG_USB_VIDEO_CLASS) := uvcvideo.o Instead of: obj-$(CONFIG_USB_VIDEO_CLASS) += uvcvideo.o Due to that, if uvc is selected, all obj-y or obj-m that were added to compilation were forget. This breaks a proper kernel build. CC: Laurent Pinchart <laurent.pinchart@skynet.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-07-02gspca: read() did not work (loop in kernel, timeout...)Jean-Francois Moine
From: Jean-Francois Moine <moinejf@free.fr> main: Remove some vidioc_xx traces. main: read() did not work (user irq instead of mmap irq). main: Lack of v4l1 compat. main: Process loop inside kernel when no frame arriving. main: Double qbuf in read() when too many buffered frames. Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
2008-07-01merge: http://linuxtv.org/hg/~mcisely/pvrusb2Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>