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

V4L/DVB (6422): Add the pending entries for xc2028/3028 based boards

Also replaces all occurrences of TUNER_XCEIVE_XC3028 to TUNER_XC2028.

Some work is still may be required to make sure that non-tm6000 drivers will
be capable of using tuner-xc2028.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 07533b6a
...@@ -69,7 +69,7 @@ tuner=67 - Philips TD1316 Hybrid Tuner ...@@ -69,7 +69,7 @@ tuner=67 - Philips TD1316 Hybrid Tuner
tuner=68 - Philips TUV1236D ATSC/NTSC dual in tuner=68 - Philips TUV1236D ATSC/NTSC dual in
tuner=69 - Tena TNF 5335 and similar models tuner=69 - Tena TNF 5335 and similar models
tuner=70 - Samsung TCPN 2121P30A tuner=70 - Samsung TCPN 2121P30A
tuner=71 - Xceive xc3028 tuner=71 - Xceive xc2028/xc3028 tuner
tuner=72 - Thomson FE6600 tuner=72 - Thomson FE6600
tuner=73 - Samsung TCPG 6121P30A tuner=73 - Samsung TCPG 6121P30A
tuner=75 - Philips TEA5761 FM Radio tuner=75 - Philips TEA5761 FM Radio
...@@ -156,6 +156,74 @@ struct em28xx_board em28xx_boards[] = { ...@@ -156,6 +156,74 @@ struct em28xx_board em28xx_boards[] = {
MSP_DSP_IN_SCART, MSP_DSP_IN_SCART), MSP_DSP_IN_SCART, MSP_DSP_IN_SCART),
}}, }},
}, },
[EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900] = {
.name = "Hauppauge WinTV HVR 900",
.vchannels = 3,
.norm = VIDEO_MODE_PAL,
.tda9887_conf = TDA9887_PRESENT,
.tuner_type = TUNER_XC2028,
.has_tuner = 1,
.decoder = EM28XX_TVP5150,
.input = {{
.type = EM28XX_VMUX_COMPOSITE1,
.vmux = TVP5150_COMPOSITE1,
.amux = 1,
},{
.type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0,
.amux = 0,
},{
.type = EM28XX_VMUX_SVIDEO,
.vmux = TVP5150_SVIDEO,
.amux = 1,
}},
},
[EM2880_BOARD_TERRATEC_HYBRID_XS] = {
.name = "Terratec Hybrid XS",
.vchannels = 3,
.norm = VIDEO_MODE_PAL,
.tda9887_conf = TDA9887_PRESENT,
.has_tuner = 1,
.tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150,
.input = {{
.type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0,
.amux = 0,
},{
.type = EM28XX_VMUX_COMPOSITE1,
.vmux = TVP5150_COMPOSITE1,
.amux = 1,
},{
.type = EM28XX_VMUX_SVIDEO,
.vmux = TVP5150_SVIDEO,
.amux = 1,
}},
},
/* maybe there's a reason behind it why Terratec sells the Hybrid XS as Prodigy XS with a
* different PID, let's keep it separated for now maybe we'll need it lateron */
[EM2880_BOARD_TERRATEC_PRODIGY_XS] = {
.name = "Terratec Prodigy XS",
.vchannels = 3,
.norm = VIDEO_MODE_PAL,
.tda9887_conf = TDA9887_PRESENT,
.has_tuner = 1,
.tuner_type = TUNER_XC2028,
.decoder = EM28XX_TVP5150,
.input = {{
.type = EM28XX_VMUX_TELEVISION,
.vmux = TVP5150_COMPOSITE0,
.amux = 0,
},{
.type = EM28XX_VMUX_COMPOSITE1,
.vmux = TVP5150_COMPOSITE1,
.amux = 1,
},{
.type = EM28XX_VMUX_SVIDEO,
.vmux = TVP5150_SVIDEO,
.amux = 1,
}},
},
[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, .vchannels = 3,
...@@ -274,6 +342,9 @@ struct usb_device_id em28xx_id_table [] = { ...@@ -274,6 +342,9 @@ struct usb_device_id em28xx_id_table [] = {
{ USB_DEVICE(0x2304, 0x0208), .driver_info = EM2820_BOARD_PINNACLE_USB_2 }, { USB_DEVICE(0x2304, 0x0208), .driver_info = EM2820_BOARD_PINNACLE_USB_2 },
{ USB_DEVICE(0x2040, 0x4200), .driver_info = EM2820_BOARD_HAUPPAUGE_WINTV_USB_2 }, { USB_DEVICE(0x2040, 0x4200), .driver_info = EM2820_BOARD_HAUPPAUGE_WINTV_USB_2 },
{ USB_DEVICE(0x2304, 0x0207), .driver_info = EM2820_BOARD_PINNACLE_DVC_90 }, { USB_DEVICE(0x2304, 0x0207), .driver_info = EM2820_BOARD_PINNACLE_DVC_90 },
{ USB_DEVICE(0x2040, 0x6500), .driver_info = EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900 },
{ USB_DEVICE(0x0ccd, 0x0042), .driver_info = EM2880_BOARD_TERRATEC_HYBRID_XS },
{ USB_DEVICE(0x0ccd, 0x0047), .driver_info = EM2880_BOARD_TERRATEC_PRODIGY_XS },
{ }, { },
}; };
......
...@@ -848,7 +848,7 @@ static const struct ivtv_card ivtv_card_pg600v2 = { ...@@ -848,7 +848,7 @@ static const struct ivtv_card ivtv_card_pg600v2 = {
{ IVTV_CARD_INPUT_LINE_IN1, CX25840_AUDIO_SERIAL }, { IVTV_CARD_INPUT_LINE_IN1, CX25840_AUDIO_SERIAL },
}, },
.tuners = { .tuners = {
{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 }, { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
}, },
.pci_list = ivtv_pci_pg600v2, .pci_list = ivtv_pci_pg600v2,
}; };
...@@ -879,7 +879,7 @@ static const struct ivtv_card ivtv_card_club3d = { ...@@ -879,7 +879,7 @@ static const struct ivtv_card ivtv_card_club3d = {
{ IVTV_CARD_INPUT_LINE_IN1, CX25840_AUDIO_SERIAL }, { IVTV_CARD_INPUT_LINE_IN1, CX25840_AUDIO_SERIAL },
}, },
.tuners = { .tuners = {
{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 }, { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
}, },
.pci_list = ivtv_pci_club3d, .pci_list = ivtv_pci_club3d,
}; };
...@@ -910,7 +910,7 @@ static const struct ivtv_card ivtv_card_avertv_mce116 = { ...@@ -910,7 +910,7 @@ static const struct ivtv_card ivtv_card_avertv_mce116 = {
}, },
.gpio_init = { .direction = 0xe000, .initial_value = 0x4000 }, /* enable line-in */ .gpio_init = { .direction = 0xe000, .initial_value = 0x4000 }, /* enable line-in */
.tuners = { .tuners = {
{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 }, { .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
}, },
.pci_list = ivtv_pci_avertv_mce116, .pci_list = ivtv_pci_avertv_mce116,
}; };
......
...@@ -829,7 +829,7 @@ static void ivtv_load_and_init_modules(struct ivtv *itv) ...@@ -829,7 +829,7 @@ static void ivtv_load_and_init_modules(struct ivtv *itv)
/* load modules */ /* load modules */
#ifndef CONFIG_VIDEO_TUNER #ifndef CONFIG_VIDEO_TUNER
if (hw & IVTV_HW_TUNER) { if (hw & IVTV_HW_TUNER) {
if (itv->options.tuner == TUNER_XCEIVE_XC3028) { if (itv->options.tuner == TUNER_XC2028) {
IVTV_INFO("Xceive tuner not yet supported, only composite and S-Video inputs will be available\n"); IVTV_INFO("Xceive tuner not yet supported, only composite and S-Video inputs will be available\n");
itv->tunerid = 1; itv->tunerid = 1;
} }
......
...@@ -1452,9 +1452,9 @@ struct tunertype tuners[] = { ...@@ -1452,9 +1452,9 @@ struct tunertype tuners[] = {
.params = tuner_samsung_tcpn_2121p30a_params, .params = tuner_samsung_tcpn_2121p30a_params,
.count = ARRAY_SIZE(tuner_samsung_tcpn_2121p30a_params), .count = ARRAY_SIZE(tuner_samsung_tcpn_2121p30a_params),
}, },
[TUNER_XCEIVE_XC3028] = { /* Xceive 3028 */ [TUNER_XC2028] = { /* Xceive 2028 */
.name = "Xceive xc3028", .name = "Xceive xc2028/xc3028 tuner",
/* see xc3028.c for details */ /* see tuner-xc2028.c for details */
}, },
[TUNER_THOMSON_FE6600] = { /* Thomson PAL / DVB-T */ [TUNER_THOMSON_FE6600] = { /* Thomson PAL / DVB-T */
.name = "Thomson FE6600", .name = "Thomson FE6600",
......
...@@ -117,7 +117,7 @@ extern int tuner_debug; ...@@ -117,7 +117,7 @@ extern int tuner_debug;
#define TUNER_PHILIPS_TUV1236D 68 /* ATI HDTV Wonder */ #define TUNER_PHILIPS_TUV1236D 68 /* ATI HDTV Wonder */
#define TUNER_TNF_5335MF 69 /* Sabrent Bt848 */ #define TUNER_TNF_5335MF 69 /* Sabrent Bt848 */
#define TUNER_SAMSUNG_TCPN_2121P30A 70 /* Hauppauge PVR-500MCE NTSC */ #define TUNER_SAMSUNG_TCPN_2121P30A 70 /* Hauppauge PVR-500MCE NTSC */
#define TUNER_XCEIVE_XC3028 71 #define TUNER_XC2028 71
#define TUNER_THOMSON_FE6600 72 /* DViCO FusionHDTV DVB-T Hybrid */ #define TUNER_THOMSON_FE6600 72 /* DViCO FusionHDTV DVB-T Hybrid */
#define TUNER_SAMSUNG_TCPG_6121P30A 73 /* Hauppauge PVR-500 PAL */ #define TUNER_SAMSUNG_TCPG_6121P30A 73 /* Hauppauge PVR-500 PAL */
......
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