Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ tuner=67 - Philips TD1316 Hybrid Tuner
tuner=68 - Philips TUV1236D ATSC/NTSC dual in
tuner=69 - Tena TNF 5335 and similar models
tuner=70 - Samsung TCPN 2121P30A
tuner=71 - Xceive xc3028
tuner=71 - Xceive xc2028/xc3028 tuner
tuner=72 - Thomson FE6600
tuner=73 - Samsung TCPG 6121P30A
tuner=75 - Philips TEA5761 FM Radio
+71 −0
Original line number Diff line number Diff line
@@ -156,6 +156,74 @@ struct em28xx_board em28xx_boards[] = {
					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] = {
		.name		= "MSI VOX USB 2.0",
		.vchannels	= 3,
@@ -274,6 +342,9 @@ struct usb_device_id em28xx_id_table [] = {
	{ 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(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 },
	{ },
};

+3 −3
Original line number Diff line number Diff line
@@ -848,7 +848,7 @@ static const struct ivtv_card ivtv_card_pg600v2 = {
		{ IVTV_CARD_INPUT_LINE_IN1,   CX25840_AUDIO_SERIAL },
	},
	.tuners = {
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 },
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
	},
	.pci_list = ivtv_pci_pg600v2,
};
@@ -879,7 +879,7 @@ static const struct ivtv_card ivtv_card_club3d = {
		{ IVTV_CARD_INPUT_LINE_IN1,   CX25840_AUDIO_SERIAL },
	},
	.tuners = {
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 },
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
	},
	.pci_list = ivtv_pci_club3d,
};
@@ -910,7 +910,7 @@ static const struct ivtv_card ivtv_card_avertv_mce116 = {
	},
	.gpio_init = { .direction = 0xe000, .initial_value = 0x4000 }, /* enable line-in */
	.tuners = {
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XCEIVE_XC3028 },
		{ .std = V4L2_STD_ALL, .tuner = TUNER_XC2028 },
	},
	.pci_list = ivtv_pci_avertv_mce116,
};
+1 −1
Original line number Diff line number Diff line
@@ -829,7 +829,7 @@ static void ivtv_load_and_init_modules(struct ivtv *itv)
	/* load modules */
#ifndef CONFIG_VIDEO_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");
			itv->tunerid = 1;
		}
+3 −3
Original line number Diff line number Diff line
@@ -1452,9 +1452,9 @@ struct tunertype tuners[] = {
		.params = tuner_samsung_tcpn_2121p30a_params,
		.count  = ARRAY_SIZE(tuner_samsung_tcpn_2121p30a_params),
	},
	[TUNER_XCEIVE_XC3028] = { /* Xceive 3028 */
		.name	= "Xceive xc3028",
		/* see xc3028.c for details */
	[TUNER_XC2028] = { /* Xceive 2028 */
		.name   = "Xceive xc2028/xc3028 tuner",
		/* see tuner-xc2028.c for details */
	},
	[TUNER_THOMSON_FE6600] = { /* Thomson PAL / DVB-T */
		.name   = "Thomson FE6600",
Loading