Commit d4d889e3 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

V4L/DVB (9751): em28xx: card description cleanups

Remove unused em28xx_board.vchannels and em28xx.video_channels.
Also, .is_em2800 = 0 is not needed, as all data is zeroed by kernel loader.

The table also included a notice that svideo weren't test on Hauppauge
USB2. Remove this notice, since this input also works properly.

Also, it does some whitespace cleanups.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent a2070c66
...@@ -54,7 +54,6 @@ struct em28xx_hash_table { ...@@ -54,7 +54,6 @@ struct em28xx_hash_table {
struct em28xx_board em28xx_boards[] = { struct em28xx_board em28xx_boards[] = {
[EM2750_BOARD_UNKNOWN] = { [EM2750_BOARD_UNKNOWN] = {
.name = "Unknown EM2750/EM2751 webcam grabber", .name = "Unknown EM2750/EM2751 webcam grabber",
.vchannels = 1,
.xclk = EM28XX_XCLK_FREQUENCY_48MHZ, .xclk = EM28XX_XCLK_FREQUENCY_48MHZ,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
...@@ -65,10 +64,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -65,10 +64,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_UNKNOWN] = { [EM2800_BOARD_UNKNOWN] = {
.name = "Unknown EM2800 video grabber", .name = "Unknown EM2800 video grabber",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 2,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -86,7 +84,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -86,7 +84,6 @@ struct em28xx_board em28xx_boards[] = {
/* Beijing Huaqi Information Digital Technology Co., Ltd */ /* Beijing Huaqi Information Digital Technology Co., Ltd */
.name = "Huaqi DLCW-130", .name = "Huaqi DLCW-130",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 1,
.xclk = EM28XX_XCLK_FREQUENCY_48MHZ, .xclk = EM28XX_XCLK_FREQUENCY_48MHZ,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
...@@ -96,12 +93,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -96,12 +93,10 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_KWORLD_PVRTV2800RF] = { [EM2820_BOARD_KWORLD_PVRTV2800RF] = {
.name = "Kworld PVR TV 2800 RF", .name = "Kworld PVR TV 2800 RF",
.is_em2800 = 0,
.vchannels = 2,
.tuner_type = TUNER_TEMIC_PAL, .tuner_type = TUNER_TEMIC_PAL,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -113,11 +108,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -113,11 +108,10 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_TERRATEC_CINERGY_250] = { [EM2820_BOARD_TERRATEC_CINERGY_250] = {
.name = "Terratec Cinergy 250 USB", .name = "Terratec Cinergy 250 USB",
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -133,11 +127,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -133,11 +127,10 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_PINNACLE_USB_2] = { [EM2820_BOARD_PINNACLE_USB_2] = {
.name = "Pinnacle PCTV USB 2", .name = "Pinnacle PCTV USB 2",
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -153,15 +146,13 @@ struct em28xx_board em28xx_boards[] = { ...@@ -153,15 +146,13 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_HAUPPAUGE_WINTV_USB_2] = { [EM2820_BOARD_HAUPPAUGE_WINTV_USB_2] = {
.name = "Hauppauge WinTV USB 2", .name = "Hauppauge WinTV USB 2",
.vchannels = 3,
.tuner_type = TUNER_PHILIPS_FM1236_MK3, .tuner_type = TUNER_PHILIPS_FM1236_MK3,
.tda9887_conf = TDA9887_PRESENT | .tda9887_conf = TDA9887_PRESENT |
TDA9887_PORT1_ACTIVE| TDA9887_PORT1_ACTIVE|
TDA9887_PORT2_ACTIVE, TDA9887_PORT2_ACTIVE,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.has_msp34xx = 1, .has_msp34xx = 1,
/*FIXME: S-Video not tested */ .input = { {
.input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = MSP_INPUT_DEFAULT, .amux = MSP_INPUT_DEFAULT,
...@@ -175,12 +166,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -175,12 +166,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_DLINK_USB_TV] = { [EM2820_BOARD_DLINK_USB_TV] = {
.name = "D-Link DUB-T210 TV Tuner", .name = "D-Link DUB-T210 TV Tuner",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.is_em2800 = 0,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -197,7 +186,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -197,7 +186,6 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_HERCULES_SMART_TV_USB2] = { [EM2820_BOARD_HERCULES_SMART_TV_USB2] = {
.name = "Hercules Smart TV USB 2.0", .name = "Hercules Smart TV USB 2.0",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
...@@ -218,12 +206,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -218,12 +206,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_PINNACLE_USB_2_FM1216ME] = { [EM2820_BOARD_PINNACLE_USB_2_FM1216ME] = {
.name = "Pinnacle PCTV USB 2 (Philips FM1216ME)", .name = "Pinnacle PCTV USB 2 (Philips FM1216ME)",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.is_em2800 = 0,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -240,11 +226,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -240,11 +226,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_GADMEI_UTV310] = { [EM2820_BOARD_GADMEI_UTV310] = {
.name = "Gadmei UTV310", .name = "Gadmei UTV310",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_TNF_5335MF, .tuner_type = TUNER_TNF_5335MF,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE1, .vmux = SAA7115_COMPOSITE1,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -261,11 +246,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -261,11 +246,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_LEADTEK_WINFAST_USBII_DELUXE] = { [EM2820_BOARD_LEADTEK_WINFAST_USBII_DELUXE] = {
.name = "Leadtek Winfast USB II Deluxe", .name = "Leadtek Winfast USB II Deluxe",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_PHILIPS_FM1216ME_MK3, .tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7114, .decoder = EM28XX_SAA7114,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = 2, .vmux = 2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -282,9 +266,8 @@ struct em28xx_board em28xx_boards[] = { ...@@ -282,9 +266,8 @@ struct em28xx_board em28xx_boards[] = {
[EM2820_BOARD_PINNACLE_DVC_100] = { [EM2820_BOARD_PINNACLE_DVC_100] = {
.name = "Pinnacle Dazzle DVC 100", .name = "Pinnacle Dazzle DVC 100",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -295,10 +278,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -295,10 +278,9 @@ struct em28xx_board em28xx_boards[] = {
} }, } },
}, },
[EM2820_BOARD_VIDEOLOGY_20K14XUSB] = { [EM2820_BOARD_VIDEOLOGY_20K14XUSB] = {
.name = "Videology 20K14XUSB USB2.0", .name = "Videology 20K14XUSB USB2.0",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 1, .input = { {
.input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = 0, .vmux = 0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -307,12 +289,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -307,12 +289,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2821_BOARD_PROLINK_PLAYTV_USB2] = { [EM2821_BOARD_PROLINK_PLAYTV_USB2] = {
.name = "SIIG AVTuner-PVR/Prolink PlayTV USB 2.0", .name = "SIIG AVTuner-PVR/Prolink PlayTV USB 2.0",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.is_em2800 = 0,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, /* unknown? */ .tuner_type = TUNER_LG_PAL_NEW_TAPC, /* unknown? */
.tda9887_conf = TDA9887_PRESENT, /* unknown? */ .tda9887_conf = TDA9887_PRESENT, /* unknown? */
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -329,14 +309,12 @@ struct em28xx_board em28xx_boards[] = { ...@@ -329,14 +309,12 @@ struct em28xx_board em28xx_boards[] = {
[EM2821_BOARD_SUPERCOMP_USB_2] = { [EM2821_BOARD_SUPERCOMP_USB_2] = {
.name = "Supercomp USB 2.0 TV", .name = "Supercomp USB 2.0 TV",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.is_em2800 = 0,
.tuner_type = TUNER_PHILIPS_FM1236_MK3, .tuner_type = TUNER_PHILIPS_FM1236_MK3,
.tda9887_conf = TDA9887_PRESENT | .tda9887_conf = TDA9887_PRESENT |
TDA9887_PORT1_ACTIVE | TDA9887_PORT1_ACTIVE |
TDA9887_PORT2_ACTIVE, TDA9887_PORT2_ACTIVE,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -351,11 +329,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -351,11 +329,10 @@ struct em28xx_board em28xx_boards[] = {
} }, } },
}, },
[EM2821_BOARD_USBGEAR_VD204] = { [EM2821_BOARD_USBGEAR_VD204] = {
.name = "Usbgear VD204v9", .name = "Usbgear VD204v9",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 2, .decoder = EM28XX_SAA7113,
.decoder = EM28XX_SAA7113, .input = { {
.input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -367,21 +344,19 @@ struct em28xx_board em28xx_boards[] = { ...@@ -367,21 +344,19 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2860_BOARD_NETGMBH_CAM] = { [EM2860_BOARD_NETGMBH_CAM] = {
/* Beijing Huaqi Information Digital Technology Co., Ltd */ /* Beijing Huaqi Information Digital Technology Co., Ltd */
.name = "NetGMBH Cam", .name = "NetGMBH Cam",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 1, .input = { {
.input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = 0, .vmux = 0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
} }, } },
}, },
[EM2860_BOARD_TYPHOON_DVD_MAKER] = { [EM2860_BOARD_TYPHOON_DVD_MAKER] = {
.name = "Typhoon DVD Maker", .name = "Typhoon DVD Maker",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 2, .decoder = EM28XX_SAA7113,
.decoder = EM28XX_SAA7113, .input = { {
.input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -394,11 +369,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -394,11 +369,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2860_BOARD_GADMEI_UTV330] = { [EM2860_BOARD_GADMEI_UTV330] = {
.name = "Gadmei UTV330", .name = "Gadmei UTV330",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_TNF_5335MF, .tuner_type = TUNER_TNF_5335MF,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -415,10 +389,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -415,10 +389,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2860_BOARD_TERRATEC_HYBRID_XS] = { [EM2860_BOARD_TERRATEC_HYBRID_XS] = {
.name = "Terratec Cinergy A Hybrid XS", .name = "Terratec Cinergy A Hybrid XS",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -435,10 +408,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -435,10 +408,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2861_BOARD_KWORLD_PVRTV_300U] = { [EM2861_BOARD_KWORLD_PVRTV_300U] = {
.name = "KWorld PVRTV 300U", .name = "KWorld PVRTV 300U",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -454,8 +426,7 @@ struct em28xx_board em28xx_boards[] = { ...@@ -454,8 +426,7 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2861_BOARD_YAKUMO_MOVIE_MIXER] = { [EM2861_BOARD_YAKUMO_MOVIE_MIXER] = {
.name = "Yakumo MovieMixer", .name = "Yakumo MovieMixer",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 1,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
...@@ -474,11 +445,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -474,11 +445,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2861_BOARD_PLEXTOR_PX_TV100U] = { [EM2861_BOARD_PLEXTOR_PX_TV100U] = {
.name = "Plextor ConvertX PX-TV100U", .name = "Plextor ConvertX PX-TV100U",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_TNF_5335MF, .tuner_type = TUNER_TNF_5335MF,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -515,7 +485,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -515,7 +485,6 @@ struct em28xx_board em28xx_boards[] = {
.name = "Pinnacle PCTV DVB-T", .name = "Pinnacle PCTV DVB-T",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.tuner_type = TUNER_ABSENT, /* MT2060 */ .tuner_type = TUNER_ABSENT, /* MT2060 */
/* djh - I have serious doubts this is right... */ /* djh - I have serious doubts this is right... */
.xclk = EM28XX_XCLK_IR_RC5_MODE | .xclk = EM28XX_XCLK_IR_RC5_MODE |
EM28XX_XCLK_FREQUENCY_10MHZ, EM28XX_XCLK_FREQUENCY_10MHZ,
...@@ -528,11 +497,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -528,11 +497,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2880_BOARD_TERRATEC_HYBRID_XS_FR] = { [EM2880_BOARD_TERRATEC_HYBRID_XS_FR] = {
.name = "Terratec Hybrid XS Secam", .name = "Terratec Hybrid XS Secam",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.has_msp34xx = 1, .has_msp34xx = 1,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -548,13 +516,12 @@ struct em28xx_board em28xx_boards[] = { ...@@ -548,13 +516,12 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = { [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = {
.name = "Hauppauge WinTV HVR 900", .name = "Hauppauge WinTV HVR 900",
.vchannels = 3,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.has_dvb = 1, .has_dvb = 1,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -570,12 +537,11 @@ struct em28xx_board em28xx_boards[] = { ...@@ -570,12 +537,11 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2] = { [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2] = {
.name = "Hauppauge WinTV HVR 900 (R2)", .name = "Hauppauge WinTV HVR 900 (R2)",
.vchannels = 3,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -591,7 +557,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -591,7 +557,6 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = { [EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950] = {
.name = "Hauppauge WinTV HVR 950", .name = "Hauppauge WinTV HVR 950",
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.has_dvb = 1, .has_dvb = 1,
...@@ -613,7 +578,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -613,7 +578,6 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2880_BOARD_PINNACLE_PCTV_HD_PRO] = { [EM2880_BOARD_PINNACLE_PCTV_HD_PRO] = {
.name = "Pinnacle PCTV HD Pro Stick", .name = "Pinnacle PCTV HD Pro Stick",
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.has_dvb = 1, .has_dvb = 1,
...@@ -635,7 +599,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -635,7 +599,6 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600] = { [EM2880_BOARD_AMD_ATI_TV_WONDER_HD_600] = {
.name = "AMD ATI TV Wonder HD 600", .name = "AMD ATI TV Wonder HD 600",
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.has_dvb = 1, .has_dvb = 1,
...@@ -656,10 +619,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -656,10 +619,9 @@ struct em28xx_board em28xx_boards[] = {
} }, } },
}, },
[EM2880_BOARD_TERRATEC_HYBRID_XS] = { [EM2880_BOARD_TERRATEC_HYBRID_XS] = {
.name = "Terratec Hybrid XS", .name = "Terratec Hybrid XS",
.vchannels = 3, .tuner_type = TUNER_XC2028,
.tuner_type = TUNER_XC2028, .decoder = EM28XX_TVP5150,
.decoder = EM28XX_TVP5150,
.has_dvb = 1, .has_dvb = 1,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
...@@ -680,10 +642,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -680,10 +642,9 @@ struct em28xx_board em28xx_boards[] = {
maybe we'll need it lateron */ maybe we'll need it lateron */
[EM2880_BOARD_TERRATEC_PRODIGY_XS] = { [EM2880_BOARD_TERRATEC_PRODIGY_XS] = {
.name = "Terratec Prodigy XS", .name = "Terratec Prodigy XS",
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -699,13 +660,11 @@ struct em28xx_board em28xx_boards[] = { ...@@ -699,13 +660,11 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_MSI_VOX_USB_2] = { [EM2820_BOARD_MSI_VOX_USB_2] = {
.name = "MSI VOX USB 2.0", .name = "MSI VOX USB 2.0",
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT | .tda9887_conf = TDA9887_PRESENT |
TDA9887_PORT1_ACTIVE | TDA9887_PORT1_ACTIVE |
TDA9887_PORT2_ACTIVE, TDA9887_PORT2_ACTIVE,
.max_range_640_480 = 1, .max_range_640_480 = 1,
.decoder = EM28XX_SAA7114, .decoder = EM28XX_SAA7114,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
...@@ -724,11 +683,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -724,11 +683,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_TERRATEC_CINERGY_200] = { [EM2800_BOARD_TERRATEC_CINERGY_200] = {
.name = "Terratec Cinergy 200 USB", .name = "Terratec Cinergy 200 USB",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -745,9 +703,8 @@ struct em28xx_board em28xx_boards[] = { ...@@ -745,9 +703,8 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_GRABBEEX_USB2800] = { [EM2800_BOARD_GRABBEEX_USB2800] = {
.name = "eMPIA Technology, Inc. GrabBeeX+ Video Encoder", .name = "eMPIA Technology, Inc. GrabBeeX+ Video Encoder",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 2,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -760,11 +717,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -760,11 +717,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_LEADTEK_WINFAST_USBII] = { [EM2800_BOARD_LEADTEK_WINFAST_USBII] = {
.name = "Leadtek Winfast USB II", .name = "Leadtek Winfast USB II",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -781,11 +737,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -781,11 +737,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_KWORLD_USB2800] = { [EM2800_BOARD_KWORLD_USB2800] = {
.name = "Kworld USB2800", .name = "Kworld USB2800",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 3,
.tuner_type = TUNER_PHILIPS_FCV1236D, .tuner_type = TUNER_PHILIPS_FCV1236D,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -801,10 +756,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -801,10 +756,9 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_PINNACLE_DVC_90] = { [EM2820_BOARD_PINNACLE_DVC_90] = {
.name = "Pinnacle Dazzle DVC 90/DVC 100", .name = "Pinnacle Dazzle DVC 90/DVC 100",
.vchannels = 3,
.tuner_type = TUNER_ABSENT, .tuner_type = TUNER_ABSENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_COMPOSITE1, .type = EM28XX_VMUX_COMPOSITE1,
.vmux = SAA7115_COMPOSITE0, .vmux = SAA7115_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -817,11 +771,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -817,11 +771,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2800_BOARD_VGEAR_POCKETTV] = { [EM2800_BOARD_VGEAR_POCKETTV] = {
.name = "V-Gear PocketTV", .name = "V-Gear PocketTV",
.is_em2800 = 1, .is_em2800 = 1,
.vchannels = 3,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -837,11 +790,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -837,11 +790,10 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_PROLINK_PLAYTV_USB2] = { [EM2820_BOARD_PROLINK_PLAYTV_USB2] = {
.name = "Pixelview Prolink PlayTV USB 2.0", .name = "Pixelview Prolink PlayTV USB 2.0",
.vchannels = 3,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.tuner_type = TUNER_YMEC_TVF_5533MF, .tuner_type = TUNER_YMEC_TVF_5533MF,
.decoder = EM28XX_SAA7113, .decoder = EM28XX_SAA7113,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = SAA7115_COMPOSITE2, .vmux = SAA7115_COMPOSITE2,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -858,13 +810,12 @@ struct em28xx_board em28xx_boards[] = { ...@@ -858,13 +810,12 @@ struct em28xx_board em28xx_boards[] = {
} }, } },
}, },
[EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA] = { [EM2860_BOARD_POINTNIX_INTRAORAL_CAMERA] = {
.name = "PointNix Intra-Oral Camera", .name = "PointNix Intra-Oral Camera",
.has_snapshot_button = 1, .has_snapshot_button = 1,
.vchannels = 1, .tda9887_conf = TDA9887_PRESENT,
.tda9887_conf = TDA9887_PRESENT, .tuner_type = TUNER_ABSENT,
.tuner_type = TUNER_ABSENT, .decoder = EM28XX_SAA7113,
.decoder = EM28XX_SAA7113, .input = { {
.input = { {
.type = EM28XX_VMUX_SVIDEO, .type = EM28XX_VMUX_SVIDEO,
.vmux = SAA7115_SVIDEO3, .vmux = SAA7115_SVIDEO3,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -873,10 +824,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -873,10 +824,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2880_BOARD_MSI_DIGIVOX_AD] = { [EM2880_BOARD_MSI_DIGIVOX_AD] = {
.name = "MSI DigiVox A/D", .name = "MSI DigiVox A/D",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -893,10 +843,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -893,10 +843,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2880_BOARD_MSI_DIGIVOX_AD_II] = { [EM2880_BOARD_MSI_DIGIVOX_AD_II] = {
.name = "MSI DigiVox A/D II", .name = "MSI DigiVox A/D II",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -913,10 +862,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -913,10 +862,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2880_BOARD_KWORLD_DVB_305U] = { [EM2880_BOARD_KWORLD_DVB_305U] = {
.name = "KWorld DVB-T 305U", .name = "KWorld DVB-T 305U",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -932,12 +880,11 @@ struct em28xx_board em28xx_boards[] = { ...@@ -932,12 +880,11 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2880_BOARD_KWORLD_DVB_310U] = { [EM2880_BOARD_KWORLD_DVB_310U] = {
.name = "KWorld DVB-T 310U", .name = "KWorld DVB-T 310U",
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.has_dvb = 1, .has_dvb = 1,
.mts_firmware = 1, .mts_firmware = 1,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -954,10 +901,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -954,10 +901,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2881_BOARD_DNT_DA2_HYBRID] = { [EM2881_BOARD_DNT_DA2_HYBRID] = {
.name = "DNT DA2 Hybrid", .name = "DNT DA2 Hybrid",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -974,10 +920,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -974,10 +920,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2881_BOARD_PINNACLE_HYBRID_PRO] = { [EM2881_BOARD_PINNACLE_HYBRID_PRO] = {
.name = "Pinnacle Hybrid Pro", .name = "Pinnacle Hybrid Pro",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -994,11 +939,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -994,11 +939,10 @@ struct em28xx_board em28xx_boards[] = {
[EM2882_BOARD_PINNACLE_HYBRID_PRO] = { [EM2882_BOARD_PINNACLE_HYBRID_PRO] = {
.name = "Pinnacle Hybrid Pro (2)", .name = "Pinnacle Hybrid Pro (2)",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.mts_firmware = 1, .mts_firmware = 1,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -1015,10 +959,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1015,10 +959,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2882_BOARD_KWORLD_VS_DVBT] = { [EM2882_BOARD_KWORLD_VS_DVBT] = {
.name = "Kworld VS-DVB-T 323UR", .name = "Kworld VS-DVB-T 323UR",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -1035,10 +978,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1035,10 +978,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2882_BOARD_TERRATEC_HYBRID_XS] = { [EM2882_BOARD_TERRATEC_HYBRID_XS] = {
.name = "Terratec Hybrid XS (em2882)", .name = "Terratec Hybrid XS (em2882)",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -1055,11 +997,9 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1055,11 +997,9 @@ struct em28xx_board em28xx_boards[] = {
[EM2883_BOARD_KWORLD_HYBRID_A316] = { [EM2883_BOARD_KWORLD_HYBRID_A316] = {
.name = "Kworld PlusTV HD Hybrid 330", .name = "Kworld PlusTV HD Hybrid 330",
.valid = EM28XX_BOARD_NOT_VALIDATED, .valid = EM28XX_BOARD_NOT_VALIDATED,
.vchannels = 3,
.is_em2800 = 0,
.tuner_type = TUNER_XC2028, .tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_VIDEO, .amux = EM28XX_AMUX_VIDEO,
...@@ -1075,11 +1015,10 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1075,11 +1015,10 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU] = { [EM2820_BOARD_COMPRO_VIDEOMATE_FORYOU] = {
.name = "Compro VideoMate ForYou/Stereo", .name = "Compro VideoMate ForYou/Stereo",
.vchannels = 2,
.tuner_type = TUNER_LG_PAL_NEW_TAPC, .tuner_type = TUNER_LG_PAL_NEW_TAPC,
.tda9887_conf = TDA9887_PRESENT, .tda9887_conf = TDA9887_PRESENT,
.decoder = EM28XX_TVP5150, .decoder = EM28XX_TVP5150,
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -1091,7 +1030,6 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1091,7 +1030,6 @@ struct em28xx_board em28xx_boards[] = {
}, },
[EM2874_BOARD_PINNACLE_PCTV_80E] = { [EM2874_BOARD_PINNACLE_PCTV_80E] = {
.name = "Pinnacle PCTV HD Mini", .name = "Pinnacle PCTV HD Mini",
.vchannels = 0,
.tuner_type = TUNER_ABSENT, .tuner_type = TUNER_ABSENT,
.has_dvb = 1, .has_dvb = 1,
.ir_codes = ir_codes_pinnacle_pctv_hd, .ir_codes = ir_codes_pinnacle_pctv_hd,
...@@ -1100,7 +1038,7 @@ struct em28xx_board em28xx_boards[] = { ...@@ -1100,7 +1038,7 @@ struct em28xx_board em28xx_boards[] = {
EM2874_I2C_SECONDARY_BUS_SELECT | EM2874_I2C_SECONDARY_BUS_SELECT |
EM28XX_I2C_FREQ_400_KHZ, EM28XX_I2C_FREQ_400_KHZ,
#ifdef DJH_DEBUG #ifdef DJH_DEBUG
.input = { { .input = { {
.type = EM28XX_VMUX_TELEVISION, .type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0, .vmux = TVP5150_COMPOSITE0,
.amux = EM28XX_AMUX_LINE_IN, .amux = EM28XX_AMUX_LINE_IN,
...@@ -1330,7 +1268,6 @@ static void em28xx_set_model(struct em28xx *dev) ...@@ -1330,7 +1268,6 @@ static void em28xx_set_model(struct em28xx *dev)
dev->has_msp34xx = em28xx_boards[dev->model].has_msp34xx; dev->has_msp34xx = em28xx_boards[dev->model].has_msp34xx;
dev->tda9887_conf = em28xx_boards[dev->model].tda9887_conf; dev->tda9887_conf = em28xx_boards[dev->model].tda9887_conf;
dev->decoder = em28xx_boards[dev->model].decoder; dev->decoder = em28xx_boards[dev->model].decoder;
dev->video_inputs = em28xx_boards[dev->model].vchannels;
dev->xclk = em28xx_boards[dev->model].xclk; dev->xclk = em28xx_boards[dev->model].xclk;
dev->i2c_speed = em28xx_boards[dev->model].i2c_speed; dev->i2c_speed = em28xx_boards[dev->model].i2c_speed;
dev->max_range_640_480 = em28xx_boards[dev->model].max_range_640_480; dev->max_range_640_480 = em28xx_boards[dev->model].max_range_640_480;
......
...@@ -328,7 +328,6 @@ struct em28xx_reg_seq { ...@@ -328,7 +328,6 @@ struct em28xx_reg_seq {
struct em28xx_board { struct em28xx_board {
char *name; char *name;
int vchannels;
int tuner_type; int tuner_type;
int tuner_addr; int tuner_addr;
...@@ -441,7 +440,6 @@ struct em28xx { ...@@ -441,7 +440,6 @@ struct em28xx {
/* GPIO sequences for tuner callbacks */ /* GPIO sequences for tuner callbacks */
struct em28xx_reg_seq *tun_analog_gpio, *tun_digital_gpio; struct em28xx_reg_seq *tun_analog_gpio, *tun_digital_gpio;
int video_inputs; /* number of video inputs */
struct list_head devlist; struct list_head devlist;
u32 i2s_speed; /* I2S speed for audio digital stream */ u32 i2s_speed; /* I2S speed for audio digital stream */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment