aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAge
* V4L/DVB (7038): USB radio driver for Silicon Labs Si470x FM Radio ReceiversTobias Lorenz2008-01-25
| | | | | | | | | | | | | | | | | | | | | | | | | this patch adds a new driver for the Silicon Labs Si470x FM Radio Receiver. It should also work for the identical ADS/Tech FM Radio Receiver (formerly Instant FM Music) as soon as I find out the USB Vendor and Product ID. The driver is inspired by several other USB and radio drivers, but mainly from the D-Link DSB-R100 USB radio (dsbr100.c). The USB stick currently has an Si4701 FM RDS radio receiver. But the other Si470x devices are pin and register compatible, so that in the future the driver can easily be patched to support these too. Therefore I named the driver radio-si470x and the configuration option usb-si470x. The driver itself just provides the control function over the radio. For getting audio back, the device support the USB audio class, which is implemented in the already existing driver. I tested the driver in the last days, until it now satisfies all my functionality and robustness requirements. The application I used for testing was kradio. Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7037): Fix build breakage of the bttv driver, when advanced ↵Zoltan Devai2008-01-25
| | | | | | | debugging is not enabled Signed-off-by: Zoltan Devai <zdevai@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7036): radio: Use video_device_release rather than kfreeJulia Lawall2008-01-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file drivers/media/video/videodev.c defines both video_device_alloc and video_device_release. These are essentially just kzmalloc and kfree, respectively, but it seems better to use video_device_release, as done in the other media files, rather than kfree, in case the implementation some day changes. The problem was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T,T1,T2; identifier E; statement S; expression x1,x2,x3; int ret; @@ T E; ... * E = video_device_alloc(...); if (E == NULL) S ... when != video_device_release(...,(T1)E,...) when != if (E != NULL) { ... video_device_release(...,(T1)E,...); ...} when != x1 = (T1)E when != E = x3; when any if (...) { ... when != video_device_release(...,(T2)E,...) when != if (E != NULL) { ... video_device_release(...,(T2)E,...); ...} when != x2 = (T2)E ( * return; | * return ret; ) } // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7035): drivers/media/common: Add missing video_device_releaseJulia Lawall2008-01-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Video_device_alloc returns the result of a kzalloc. In this case, the value is stored in a local variable which is not copied elsewhere before the point of the error return (video_register_device does not save its first argument anywhere if it returns a negative value). Thus, a video_device_release it needed before the error return. The problem was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T,T1,T2; identifier E; statement S; expression x1,x2,x3; int ret; @@ T E; ... * E = video_device_alloc(...); if (E == NULL) S ... when != video_device_release(...,(T1)E,...) when != if (E != NULL) { ... video_device_release(...,(T1)E,...); ...} when != x1 = (T1)E when != E = x3; when any if (...) { ... when != video_device_release(...,(T2)E,...) when != if (E != NULL) { ... video_device_release(...,(T2)E,...); ...} when != x2 = (T2)E ( * return; | * return ret; ) } // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> CC: Oliver Endriss <o.endriss@gmx.de> CC: Michael Hunold <michael@mihu.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7032): tda18271: tda18271_cal_on_startup should be declared staticMichael Krufky2008-01-25
| | | | | | | | | This module option variable is only handled within the file tda18271-fe.c - Declare this variable as static. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7030): Kconfig: add missing selections for VIDEO_PVRUSB2Michael Krufky2008-01-25
| | | | | | | | | VIDEO_PVRUSB2 must select: VIDEO_SAA711X, VIDEO_CX25840, VIDEO_MSP3400, and VIDEO_WM8775 Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Acked-by: Mike Isely <isely@pobox.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7029): tda18271: provide a choice whether to perform rf cal on init ↵Michael Krufky2008-01-25
| | | | | | | | | | | or on first tune If module option "cal" is set to 1, the ~22 sec rf tracking filter calibration sequence will be invoked on startup. Otherwise, the calibration will take place during the first tune. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7028): tda18271: test RF_CAL_OK to see if we need additional RF ↵Michael Krufky2008-01-25
| | | | | | | | | | calibration Test RF_CAL_OK to see if we need to perform the RF tracking filter calibration after returning from standby. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7027): tda18271: put the device in standby mode during sleep()Michael Krufky2008-01-25
| | | | | | | | | | Add function, tda18271_set_standby_mode. During sleep, enter standby mode with slave tuner output enabled, loop through on and xtal oscillator on. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7026): tda18271: report when the RF tracking filter calibration has ↵Michael Krufky2008-01-25
| | | | | | | completed Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7024): usbvision: YUV to RGB conversion fixesThierry MERLE2008-01-25
| | | | | | | | | All YUV to RGB conversions in usbvision were reverted (conversion to BGR but saying RGB to the application) Signed-off-by: Thierry MERLE <thierry.merle@free.fr> Acked-by: Dwaine Garden <DwaineGarden@rogers.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7023): Fix a regresion left by changeset 7e65d6e8f6dfMauro Carvalho Chehab2008-01-25
| | | | | | | | | | | Changeset 7e65d6e8f6df removed a very bad hack on mmap(). However, the fixes weren't considering usermap and overlay memory models. This were breaking direct reading from /dev/video?, used mostly by mpeg aware drivers. Thanks to Steven Toth <stoth@linuxtv.org> for reporting the issue and bissecting it. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7022): Fix timestamp presentation on vivi driverMauro Carvalho Chehab2008-01-25
| | | | | | Due to date overflow, vivi were not working fine anymore. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7021): Move all board specific configuration to em28xx-cards.cMauro Carvalho Chehab2008-01-25
| | | | | | This cleanup moves the board-specific configurations to em28xx-cards.c. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7020): Add USB ID for a newer variant of Hauppauge WinTV USB2Mauro Carvalho Chehab2008-01-25
| | | | | | Thanks to Jeroen Janssen <Jeroen.Janssen@vub.ac.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7019): V4L: add support for Syntek DC1125 webcamsJaime Velasco Juan2008-01-25
| | | | | | | | | | | This driver supports cameras with USB ID 174f:a311 or 05e1:0501, and the ov965x sensors. These devices are found in some Asus laptops and probably somewhere else. It is based on the stk11xx driver written by Nicolas Vivien Signed-off-by: Jaime Velasco Juan <jsagarribay@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7017): saa7134: add MSI TV@nywhere Plus with the older tda8275 tunerHermann Pitton2008-01-25
| | | | | | | | Thanks go to Mark Schultz for the initial contribution and to Dean Hilkewich for testing it again. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7016): saa7134: remove the Avermedia Super 007 from eeprom detectionHermann Pitton2008-01-25
| | | | | | | | | | | saa7134: remove the Avermedia Super 007 from eeprom detection The card made it into the Philips' Tigers eeprom detection and falls through. Since it has attracted already others to follow, which are wrongly identified as TIGER_S then, move it to the usual analog initialization. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7014): cx23885: dprintk macro cleanupSteven Toth2008-01-25
| | | | | | | Added missing do { } while (0) Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7013): bw-qcam: add module parameter 'force_init' to skip polite ↵Brett T. Warden2008-01-25
| | | | | | | | | | | | | auto-detection prior to direct initialization Setting force_init=1 bypasses the friendly auto-detection by polling the status register, and instead attempts to initialize the qcam directly. Not friendly to other parallel devices, but much more reliable than the auto-detection. Signed-off-by: Brett T. Warden <brett.warden@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7011): cx23885: Cleanup of compiler defines and warningsSteven Toth2008-01-25
| | | | | Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7010): cx23885: Small cleanupSteven Toth2008-01-25
| | | | | | | cx23885: Small cleanup Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7009): cx23885: Video and VBI related filesSteven Toth2008-01-25
| | | | | | | cx23885: Video and VBI related files. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7008): s5h1409: Ensure the silicon is initialized during attachSteven Toth2008-01-25
| | | | | | | If not it impacts on analog tuner quality. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7007): cx23885: Add basic video support for the HVR1800Steven Toth2008-01-25
| | | | | | | This enabled basic preview NTSC and PAL support for the HVR1800. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7006): cx23885: Track the board clock frequency and allow overridesSteven Toth2008-01-25
| | | | | | | | | | The cx23885/6/8 all have different clock rates, this patch allows the core to compensate, and developers to allow vendor specific overrides. This patches will be used by future analog video and encoder patches. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7005): cx23885: SRAM reallocation prior to analog video implementationSteven Toth2008-01-25
| | | | | | | We need to clear space large enough for the video and encoder fifos. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7004): cx23885: Ensure HVR1800 TDA8295A is reset fully on module loadSteven Toth2008-01-25
| | | | | | | | Failure to do this means that a full system reboot is required if the part hangs. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7003): cx23885: Add support for device revision detectionSteven Toth2008-01-25
| | | | | | | | | Each version of the cx23885/7/8 silicon has different build revs. We'll use this internal revision to work around bugs and known issues in the video and encoder related patches. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (7002): cx25840: Add basic CX23885 AVCore supportSteven Toth2008-01-25
| | | | | | | | | | The cx23885/7/8 PCIe bridge has an internal AVCore modelled on the cx2584x family. Many of the registers positions are identical but some moved. The register values are also different because the different bridges run at different clock rates. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6997): Replace a very dirty hack on videobuf for a clean wait_eventMauro Carvalho Chehab2008-01-25
| | | | | | | | | | | | | In order to videobuf_iolock to work, mmap_mapper should be called first. Otherwise, an OOPS is generated. On some cases, .mmap file handler used to took some time to be called. On those situations, mmap_mmapper() were called after iolock. This patch properly waits for mmap_mapper to be called, otherwise generating an error. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6995): ubvision: add adjust_X_Offset/adjust_Y_Offset parmsThierry MERLE2008-01-25
| | | | | | | | | Add adjust_X_Offset/adjust_Y_Offset module parameters to allow users to tune X and Y picture offsets for their almost-working tuners without repetitive recompilation. Signed-off-by: Thierry MERLE <thierry.merle@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6994): usbvision: add Pinnacle Studio PCTV USB (NTSC) FM V3Thierry MERLE2008-01-25
| | | | | | | | Add the "Pinnacle Studio PCTV USB (NTSC) FM" device. This is the third occurrence of the same device designation... Signed-off-by: Thierry MERLE <thierry.merle@free.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6992): saa7134: remove Beholder devices without eeprom from auto ↵hermann pitton2008-01-25
| | | | | | | | | | | detection As in the past, we should not allow to auto detect like this, since all saa7130 and saa7134 cards without eeprom will be detected as such Beholder cards then. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6989): tda18271: clean up chip id logic in tda829x_releaseMichael Krufky2008-01-25
| | | | | | | This test is easier to read. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6988): tda18271: give calibration debug a separate debug maskMichael Krufky2008-01-25
| | | | | | | | We don't usually want to see the calibration debug messages, but sometimes it is useful. Assign it to a separate debug mask. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6987): tda18271: add support for fm radioMichael Krufky2008-01-25
| | | | | Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6986): tda18271: share state between analog and digital tuner instancesMichael Krufky2008-01-25
| | | | | Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6981): Fix bugzillas 9686 and 9691Mauro Carvalho Chehab2008-01-25
| | | | | | | | | | | | | | | | IR were not working for Winfast XP 2000 TV. Gabor Nyekhelyi <n0gabor@vipmail.hu> wrote a hack some time ago: http://marc.info/?l=linux-video&m=116362609323281&w=2 This patch fixes CodingStyle and commits the hack. I suspect that the proper solution would be to find the proper mask_keydown for this IR. Anyway, better to have this patch as a workaround. Thanks to Stafan Talpalaru <stefantalpalaru@yahoo.com> for pointing the issue. CC: Gabor Nyekhelyi <n0gabor@vipmail.hu> CC: Stafan Talpalaru <stefantalpalaru@yahoo.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6979): tda18271: use a mutex to protect state in critical sectionsMichael Krufky2008-01-25
| | | | | Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6978): tda18271: store frequency and bandwidth after successful tuneMichael Krufky2008-01-25
| | | | | | | | | | Store last tuned frequency & bandwidth after successful tune. Clean up tune functions -- remove pointer to tune function in state structure, instead call tune function based on priv->id. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6977): tda18271: clean up calibration initialization proceduresMichael Krufky2008-01-25
| | | | | | | | | | Always initialize registers during attach. Perform IR Calibration during init if needed. Perform RF Calibration during init if needed for C2, only. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6976): drivers/media/radio/radio-sf16fmr2.c: fix error handlingAndrew Morton2008-01-25
| | | | | | | | | | video_register_device() returns -EFOO on errr, not -1. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=9699 Reported-By: <devzero@web.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6975): Add missing entry for Beholder BeholdTV 407Mauro Carvalho Chehab2008-01-25
| | | | | Acked-by: Andrey J. Melnikov <temnota@kmv.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6974): Fix codingStyleMauro Carvalho Chehab2008-01-25
| | | | Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6973): Add Beholder TV 401/405/407/409/505/507/609/M6 supportAndrey J. Melnikoff (TEMHOTA)2008-01-25
| | | | | | | | | | This patch updates cardlist for Beholder TV tuners: old models (with GPIO ir) 401, 403, 405, 407, 409, 505, 507 and add support for 607, 609, M6 cards with new i2c-ir. Signed-off-by: Igor Kuznetsov <igk72@yandex.ru> Signed-off-by: Andrey J. Melnikov <temnota@kmv.ru> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6970): Request snd-usb-audio for devices with Audio Class supportMauro Carvalho Chehab2008-01-25
| | | | | | | | | | Before this patch, only Vendor Class audio support were loaded. This means that older em28xx devices won't have digital audio support loaded. This patch changes the logic to auto load eighter snd-usb-audio, for devices with USB Audio Class or em28xx-alsa, for devices with USB Vendor Class. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6969): Avoid causing regressions for non-HVR950 boardsMauro Carvalho Chehab2008-01-25
| | | | | | | | Only HVR950 has analog_gpio configured. It makes no sense to set gpio to 0 for other boards. Better to add a test, while this var is not set for all xc3028 devices. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6967): pvrusb2: add support for Hauppauge WinTV PVR-USB2 Model 75xxxMichael Krufky2008-01-25
| | | | | | | | | Create a device description and enable autodetection for Hauppauge WinTV PVR-USB2 Model 75xxx Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mike Isely <isely@pobox.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6965): tda18271: fix analog tuning regression caused by earlier ↵Michael Krufky2008-01-25
| | | | | | | | | | | | changeset An earlier patch, "tda18271: fail table lookups if frequency is out of range" broke analog support on certain hardware. This patch fixes that problem, by allowing the RF_CAL byte to be set to the maximum value, in cases of the frequency being out of range. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>