aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/radio/radio-mr800.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/radio/radio-mr800.c')
-rw-r--r--drivers/media/radio/radio-mr800.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/drivers/media/radio/radio-mr800.c b/drivers/media/radio/radio-mr800.c
index 56f1fac6d28d..23c3c539157b 100644
--- a/drivers/media/radio/radio-mr800.c
+++ b/drivers/media/radio/radio-mr800.c
@@ -22,7 +22,7 @@
22 */ 22 */
23 23
24/* 24/*
25 * Big thanks to authors of dsbr100.c and radio-si470x.c 25 * Big thanks to authors and contributors of dsbr100.c and radio-si470x.c
26 * 26 *
27 * When work was looked pretty good, i discover this: 27 * When work was looked pretty good, i discover this:
28 * http://av-usbradio.sourceforge.net/index.php 28 * http://av-usbradio.sourceforge.net/index.php
@@ -30,18 +30,23 @@
30 * Latest release of theirs project was in 2005. 30 * Latest release of theirs project was in 2005.
31 * Probably, this driver could be improved trough using their 31 * Probably, this driver could be improved trough using their
32 * achievements (specifications given). 32 * achievements (specifications given).
33 * So, we have smth to begin with. 33 * Also, Faidon Liambotis <paravoid@debian.org> wrote nice driver for this radio
34 * in 2007. He allowed to use his driver to improve current mr800 radio driver.
35 * http://kerneltrap.org/mailarchive/linux-usb-devel/2007/10/11/342492
34 * 36 *
35 * History:
36 * Version 0.01: First working version. 37 * Version 0.01: First working version.
37 * It's required to blacklist AverMedia USB Radio 38 * It's required to blacklist AverMedia USB Radio
38 * in usbhid/hid-quirks.c 39 * in usbhid/hid-quirks.c
40 * Version 0.10: A lot of cleanups and fixes: unpluging the device,
41 * few mutex locks were added, codinstyle issues, etc.
42 * Added stereo support. Thanks to
43 * Douglas Schilling Landgraf <dougsland@gmail.com> and
44 * David Ellingsworth <david@identd.dyndns.org>
45 * for discussion, help and support.
39 * 46 *
40 * Many things to do: 47 * Many things to do:
41 * - Correct power managment of device (suspend & resume) 48 * - Correct power managment of device (suspend & resume)
42 * - Make x86 independance (little-endian and big-endian stuff)
43 * - Add code for scanning and smooth tuning 49 * - Add code for scanning and smooth tuning
44 * - Checked and add stereo&mono stuff
45 * - Add code for sensitivity value 50 * - Add code for sensitivity value
46 * - Correct mistakes 51 * - Correct mistakes
47 * - In Japan another FREQ_MIN and FREQ_MAX 52 * - In Japan another FREQ_MIN and FREQ_MAX
@@ -62,8 +67,8 @@
62/* driver and module definitions */ 67/* driver and module definitions */
63#define DRIVER_AUTHOR "Alexey Klimov <klimov.linux@gmail.com>" 68#define DRIVER_AUTHOR "Alexey Klimov <klimov.linux@gmail.com>"
64#define DRIVER_DESC "AverMedia MR 800 USB FM radio driver" 69#define DRIVER_DESC "AverMedia MR 800 USB FM radio driver"
65#define DRIVER_VERSION "0.01" 70#define DRIVER_VERSION "0.10"
66#define RADIO_VERSION KERNEL_VERSION(0, 0, 1) 71#define RADIO_VERSION KERNEL_VERSION(0, 1, 0)
67 72
68MODULE_AUTHOR(DRIVER_AUTHOR); 73MODULE_AUTHOR(DRIVER_AUTHOR);
69MODULE_DESCRIPTION(DRIVER_DESC); 74MODULE_DESCRIPTION(DRIVER_DESC);
@@ -309,14 +314,11 @@ static int amradio_set_stereo(struct amradio_device *radio, char argument)
309 return retval; 314 return retval;
310} 315}
311 316
312 317/* Handle unplugging the device.
313 318 * We call video_unregister_device in any case.
314/* USB subsystem interface begins here */ 319 * The last function called in this procedure is
315 320 * usb_amradio_device_release.
316/* handle unplugging of the device, release data structures 321 */
317if nothing keeps us from doing it. If something is still
318keeping us busy, the release callback of v4l will take care
319of releasing it. */
320static void usb_amradio_disconnect(struct usb_interface *intf) 322static void usb_amradio_disconnect(struct usb_interface *intf)
321{ 323{
322 struct amradio_device *radio = usb_get_intfdata(intf); 324 struct amradio_device *radio = usb_get_intfdata(intf);