V4L/DVB (6535): Fix: Adds the generic PCI IDs for em28xx
authorMauro Carvalho Chehab <mchehab@infradead.org>
Sat, 3 Nov 2007 11:07:07 +0000 (08:07 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Fri, 25 Jan 2008 21:01:54 +0000 (19:01 -0200)
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Documentation/video4linux/CARDLIST.em28xx
drivers/media/video/em28xx/em28xx-cards.c
drivers/media/video/em28xx/em28xx-video.c

index abdcc68..f947dca 100644 (file)
@@ -1,9 +1,9 @@
   0 -> Unknown EM2800 video grabber             (em2800)        [eb1a:2800]
-  1 -> Unknown EM2820/2840 video grabber        (em2820/em2840)
+  1 -> Unknown EM2750/28xx video grabber        (em2820/em2840) [eb1a:2750,eb1a:2820,eb1a:2821,eb1a:2860,eb1a:2861,eb1a:2870,eb1a:2881,eb1a:2883]
   2 -> Terratec Cinergy 250 USB                 (em2820/em2840) [0ccd:0036]
   3 -> Pinnacle PCTV USB 2                      (em2820/em2840) [2304:0208]
   4 -> Hauppauge WinTV USB 2                    (em2820/em2840) [2040:4200]
-  5 -> MSI VOX USB 2.0                          (em2820/em2840) [eb1a:2820]
+  5 -> MSI VOX USB 2.0                          (em2820/em2840)
   6 -> Terratec Cinergy 200 USB                 (em2800)
   7 -> Leadtek Winfast USB II                   (em2800)
   8 -> Kworld USB2800                           (em2800)
index 9a6a454..05264c6 100644 (file)
@@ -57,22 +57,8 @@ struct em28xx_board em28xx_boards[] = {
                }},
        },
        [EM2820_BOARD_UNKNOWN] = {
-               .name         = "Unknown EM2820/2840 video grabber",
+               .name         = "Unknown EM2750/28xx video grabber",
                .is_em2800    = 0,
-               .vchannels    = 2,
-               .norm         = VIDEO_MODE_PAL,
-               .tda9887_conf = TDA9887_PRESENT,
-               .has_tuner    = 1,
-               .decoder      = EM28XX_SAA7113,
-               .input           = {{
-                       .type     = EM28XX_VMUX_COMPOSITE1,
-                       .vmux     = SAA7115_COMPOSITE0,
-                       .amux     = 1,
-               },{
-                       .type     = EM28XX_VMUX_SVIDEO,
-                       .vmux     = SAA7115_SVIDEO3,
-                       .amux     = 1,
-               }},
        },
        [EM2820_BOARD_KWORLD_PVRTV2800RF] = {
                .name         = "Kworld PVR TV 2800 RF",
@@ -337,8 +323,15 @@ const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
 
 /* table of devices that work with this driver */
 struct usb_device_id em28xx_id_table [] = {
+       { USB_DEVICE(0xeb1a, 0x2750), .driver_info = EM2820_BOARD_UNKNOWN },
        { USB_DEVICE(0xeb1a, 0x2800), .driver_info = EM2800_BOARD_UNKNOWN },
-       { USB_DEVICE(0xeb1a, 0x2820), .driver_info = EM2820_BOARD_MSI_VOX_USB_2 },
+       { USB_DEVICE(0xeb1a, 0x2820), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2821), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2860), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2861), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2870), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2881), .driver_info = EM2820_BOARD_UNKNOWN },
+       { USB_DEVICE(0xeb1a, 0x2883), .driver_info = EM2820_BOARD_UNKNOWN },
        { USB_DEVICE(0x0ccd, 0x0036), .driver_info = EM2820_BOARD_TERRATEC_CINERGY_250 },
        { USB_DEVICE(0x2304, 0x0208), .driver_info = EM2820_BOARD_PINNACLE_USB_2 },
        { USB_DEVICE(0x2040, 0x4200), .driver_info = EM2820_BOARD_HAUPPAUGE_WINTV_USB_2 },
index bb0933f..fb0fa57 100644 (file)
@@ -1782,15 +1782,11 @@ static int em28xx_usb_probe(struct usb_interface *interface,
                model=card[nr];
 
        if ((model==EM2800_BOARD_UNKNOWN)||(model==EM2820_BOARD_UNKNOWN)) {
-               em28xx_errdev( "Your board has no eeprom inside it and thus can't\n"
-                       "%s: be autodetected.  Please pass card=<n> insmod option to\n"
-                       "%s: workaround that.  Redirect complaints to the vendor of\n"
-                       "%s: the TV card. Generic type will be used."
-                       "%s: Best regards,\n"
-                       "%s:         -- tux\n",
-                       dev->name,dev->name,dev->name,dev->name,dev->name);
-               em28xx_errdev("%s: Here is a list of valid choices for the card=<n> insmod option:\n",
-                       dev->name);
+               em28xx_errdev("Your board has no unique USB ID and thus can't be autodetected.\n");
+               em28xx_errdev("Please pass card=<n> insmod option to workaround that.\n");
+               em28xx_errdev("If there isn't any card number for you, please send an email to:\n");
+               em28xx_errdev("\tV4L Mailing List <video4linux-list@redhat.com>\n");
+               em28xx_errdev("Here is a list of valid choices for the card=<n> insmod option:\n");
                for (i = 0; i < em28xx_bcount; i++) {
                        em28xx_errdev("    card=%d -> %s\n", i,
                                                        em28xx_boards[i].name);