summaryrefslogtreecommitdiff
path: root/linux/drivers/media/radio
AgeCommit message (Collapse)Author
2008-02-02Fix Kconfig dependenciesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> As pointed by Adrian Bunk, with I2C=m and VIDEO_DEV=y, videodev brokes. This patch moves the functions that videodev needs from v4l2-common. It also fixes some Kconfig changes. After this patch, I2C=m / VIDEO_DEV=y will make v4l2 core statically linked into kernel. v4l2-common will be m, and all V4L drivers will also be m. This approach is very conservative, since it is possible to have V4L drivers that don't need I2C or v4l2-common. The better is to map what drivers really need v4l2-common, making them to select v4l2-common, and allowing the others to be 'y', 'm' and 'n'. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-28 Trivial printf warning fix (radio-si470)Mauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> Thanks to Darren Salt <linux@youmustbejoking.demon.co.uk> for pointing this issue. Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-28 radio-si470x.c: check-after-useMauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> Adrian used the coverity checker against radio-si470x and found this: > The Coverity checker spotted the following check-after-use in > drivers/media/radio/radio-si470x.c: > > <-- snip --> > static void si470x_usb_driver_disconnect(struct usb_interface *intf) > { > struct si470x_device *radio = usb_get_intfdata(intf); > > del_timer_sync(&radio->timer); <------------------ > flush_scheduled_work(); > > usb_set_intfdata(intf, NULL); > if (radio) { <------------------ > video_unregister_device(radio->videodev); > kfree(radio->buffer); > kfree(radio); > } > } > <-- snip --> > > Either "radio" can be NULL and this case has to be properly handled or > the NULL check is not required. These two lines should indeed better be inside the if statement. Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-27merge: http://linuxtv.org/hg/~dougsland/v4lMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-27[PATCH] static memoryDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> - Static memory is always initialized with 0. - Replaced in some cases C99 comments for /* */ Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2008-01-27 radio-si470x improvements and seldom problem fixed in tuning functionsMauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> I updated the radio-si470x driver another time. Here are the commented history entries: - number of seek_retries changed to tune_timeout The last versions checked for the end of frequency tuning by polling a si470x register. Therefore polling depended on the usb utilization. This was changed to have a constant timeout now. - fixed problem with incomplete tune operations by own buffers The last version used a shared buffer to assembly the USB HID reports. It sometimes happened, that multiple functions were modifing this buffer simultanuously. When sending such reports, the hardware returned USB stalls (-EPIPE). Now buffers of the correct size (smaller than before) are allocated as local variables. - optimization of variables The size of some variables has been reduced to allow the compiler to generate more optimized code. - improved error logging At some important location, error checking was improved. Especially the usb transfers to access si470x registers and the tuning functions were modified. Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-27Fix bugzilla 9699Douglas Schilling Landgraf
From: Mauro Carvalho Chehab <mchehab@infradead.org> isapnp_fmi_probe attaches device. However, if request_region() fails, the device isn't disattached. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2008-01-27Fix bugzilla 9699Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> Changed request_region() validation to avoid crash. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2008-01-23 radio: fix sf16fmi section mismatchMauro Carvalho Chehab
From: Randy Dunlap <randy.dunlap@oracle.com> isapnp_fmi_probe() is only called by fmi_init(), which is __init, so isapnp_fmi_probe() can also be __init. media/radio/radio-sf16fmi.c: Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-25radio-si570x: Some fixes and new USB ID additionMauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> - avoid poss. locking when doing copy_to_user which may sleep - RDS is automatically activated on read now - code cleaned of unnecessary rds_commands - USB Vendor/Product ID for ADS/Tech FM Radio Receiver verified (thanks to Guillaume RAMOUSSE) Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-25radio-si470x: Some cleanupsMauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> - code reordered to avoid function prototypes - switch/case defaults are now more user-friendly - unified comment style - applied all checkpatch.pl v1.12 suggestions except the warning about the too long lines with bit comments - renamed FMRADIO to RADIO to cut line length (checkpatch.pl) Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-17fix broken build when CONFIG_USB_SI470X is setMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2008-01-15Adds the proper compatibility code for radio-si470x and stk-webcamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Make radio-si470x and stk-webcam backward compatible with older kernels. This patch adds compat.h header for those files, reorder include order and adds USB_DEVICE_AND_INTERFACE_INFO macro. Thiw way, stk-webcam is backward compatible with 2.6.22, and radio-si470x with kernel 2.6.20. The backports weren't tested, but compile fine. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-14USB radio driver for Silicon Labs Si470x FM Radio ReceiversMauro Carvalho Chehab
From: Tobias Lorenz <tobias.lorenz@gmx.net> 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>
2008-01-01 radio: Use video_device_release rather than kfreeMauro Carvalho Chehab
From: Julia Lawall <julia@diku.dk> 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>
2008-01-07drivers/media/radio/radio-sf16fmr2.c: fix error handlingMauro Carvalho Chehab
From: Andrew Morton <akpm@linux-foundation.org> 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>
2007-12-03 dsbr100 violates DMA coherency rulesMauro Carvalho Chehab
From: Oliver Neukum <oliver@neukum.org> Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-11-19drivers/media/radio: Add missing "space"Mauro Carvalho Chehab
From: Joe Perches <joe@perches.com> Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-10-28radio-gemtek: make file_operations constDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> make file_operations const Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
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-01[PATCH] GemTek Radio card - Control WordDouglas Schilling Landgraf
From: Trent Piepho <xyzzy@speakeasy.org> Redoes the way the control word is stored and set. The existing code was a lot more complicated than it needed to be. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-10-01[PATCH] GemTek Radio card - frequency calculationDouglas Schilling Landgraf
From: Trent Piepho <xyzzy@speakeasy.org> Frequency calculation to use better math. It's still the same IF offset and step size (which are not the same as the datasheet says) as the code was before. It's just more efficient and accurate. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-10-01[PATCH 1/2] GemTek Radio cardDouglas Schilling Landgraf
From: Pekka Seppanen <pexu@kapsi.fi> Code cleanup for GemTek Radio card driver. Removed unnecessary / invalid I/O commands and rewrote code for tuning on-board BU2614FS chip. Adds several new module params for power users. Includes automatic device probing. Signed-off-by: Pekka Seppanen <pexu@kapsi.fi> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Reviewed-by: Trent Piepho <xyzzy@speakeasy.org>
2007-09-30[PATCH 2/2] GemTek Radio cardDouglas Schilling Landgraf
From: Pekka Seppanen <pexu@kapsi.fi> Details now match with radio-gemtek.c, eg. no more different ports. Included a short note about cards that should be compatible with radio-gemtek module. Signed-off-by: Pekka Seppanen <pexu@kapsi.fi> Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Reviewed-by: Trent Piepho <xyzzy@speakeasy.org>
2007-08-27whitespace cleanup: replace leading spaces with tabsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> There were many instances of 7-space indents spread throughout the v4l-dvb tree. This patch replaces the 7-space indents with tabs. The whitespace cleaner script doesn't catch these, because it assumes that all indents are 8-space. Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-07-20compat: keep printing pci revision on older kernelsTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> In 2.6.23, there is a new struct pci_dev->revision field to get the pci revision. A couple drivers now use this to print the revision and on old kernels don't print it anymore. This patch adds a simple function to get the revision to compat.h to make it easy for the backward compay code to keep printing the revision like is used too. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-07-20radio-gemtek-pci: remove unused structure memberTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The drivers reads the PCI subsystem ID into its state structure, but it's never used anywhere. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-07-19compat: only access pci_dev->revision for kernels later than 2.6.22Michael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-07-19Backport kernel changeset 44c10138fd4bbc4b6d6bff0873c24902f2a9da65Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> backport patch from Auke Kok <auke-jan.h.kok@intel.com>: PCI: Change all drivers to use pci_device->revision Instead of all drivers reading pci config space to get the revision ID, they can now use the pci_device->revision member. This exposes some issues where drivers where reading a word or a dword for the revision number, and adding useless error-handling around the read. Some drivers even just read it for no purpose of all. In devices where the revision ID is being copied over and used in what appears to be the equivalent of hotpath, I have left the copy code and the cached copy as not to influence the driver's performance. Compile tested with make all{yes,mod}config on x86_64 and i386. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-07-19backport kernel commit 59faba1b316a7798a33752b3889193333f8af1a0Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Original patch from Trent Piepho <xyzzy@speakeasy.org>. Its description: Fix Kconfig dependency problems wrt boolean menuconfigs If one has a dependency chain (tristate)FOO depends on (bool)BAR depends on (tristate)BAZ, build problems will result. If BAZ=m, then BAR can be set y, which allows FOO=y. It's possible to have FOO=y && BAZ=m, which wouldn't be allowed if FOO depended directly on BAZ. In effect, the bool promotes the tristate from m to y. This ends up causing a problem with several menuconfigs that look like: menuconfig BAR bool depends on BAZ [tristate] if BAR config FOO tristate endif The solution used here is to add the dependencies of BAR to the if statement, so that items in the if block will gain a direct non-bool-promoted dependency on BAZ. This is how it would work if a menu was used instead of an if block. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-07-17Use msecs_to_jiffies instead of HZ on radio driversMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-07-02Kconfig: Added GemTek USB radio and removed experimental dependency.Douglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> Added GemTek USB radio and removed experimental dependency. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-07-02Fix v4l-dvb backward compatibilityMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Due to several internal API changes on kernel, kernel backward compatibility were lost. Basically, compat.h should be the last include for it to work properly. This patch basically reorders kernel headers to allow backward compat to work fine. Also: Some includes were added after some non-include macros, on old drivers. Better to keep all includes at the beginning of the files. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-27From: Douglas Schilling Landgraf <dougsland@gmail.com>Douglas Schilling Landgraf
Removed unnecessary .hardware from video_device struct. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-05-13Backport kernel changeset e63340ae6b6205fef26b40a75673d1c9c0c8bb90Mauro Carvalho Chehab
From: Mauro Carvalho Chehab kernel-sync: The original patch description, from Randy Dunlap <randy.dunlap@oracle.com>: header cleaning: don't include smp_lock.h when not used Remove includes of <linux/smp_lock.h> where it is not used/needed. Suggested by Al Viro. Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc, sparc64, and arm (all 59 defconfigs). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-07Radio-maestro.c cleanupMauro Carvalho Chehab
From: Douglas Landgraf <dougsland@gmail.com> Removed unnecessary semaphore. Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-07Dsbr100.c Replace usb_dsbr100_do_ioctl to use video_ioctl2Mauro Carvalho Chehab
From: Douglas Landgraf <dougsland@gmail.com> Convert dsbr100 to use video_ioctl2 Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-07Radio-zoltrix.c cleanupMauro Carvalho Chehab
From: Douglas Landgraf <dougsland@gmail.com> Removed unnecessary .hardware member from struct zoltrix_radio (video_device). Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-07Radio-cadet.c Replace cadet_do_ioctl to use video_ioctl2Mauro Carvalho Chehab
From: Douglas Landgraf <dougsland@gmail.com> Convert radio-cadet to use video_ioctl2 Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-05-02Add help for RADIO_ADAPTERS and VIDEO_CAPTURE_DRIVERSMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Add a small help for those two new Kconfig vars. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>