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

Commit 3956fefc authored by Antti Palosaari's avatar Antti Palosaari Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (11340): af9015: add support for AverMedia AVerTV Volar Black HD (A850)



Add USB ID (07ca:850a) and configuration hack for AverMedia AVerTV Volar
Black HD (A850) DVB-T USB stick.

Tested-by: default avatarOlivier MENUEL <omenuel@laposte.net>
Tested-by: default avatarThomas Renard <threnard@gmail.com>
Signed-off-by: default avatarAntti Palosaari <crope@iki.fi>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent dcd14f41
Loading
Loading
Loading
Loading
+23 −1
Original line number Diff line number Diff line
@@ -991,6 +991,21 @@ error:
	if (ret)
		err("eeprom read failed:%d", ret);

	/* AverMedia AVerTV Volar Black HD (A850) device have bad EEPROM
	   content :-( Override some wrong values here. */
	if (le16_to_cpu(udev->descriptor.idVendor) == USB_VID_AVERMEDIA &&
	    le16_to_cpu(udev->descriptor.idProduct) == USB_PID_AVERMEDIA_A850) {
		deb_info("%s: AverMedia A850: overriding config\n", __func__);
		/* disable dual mode */
		af9015_config.dual_mode = 0;
		 /* disable 2nd adapter */
		for (i = 0; i < af9015_properties_count; i++)
			af9015_properties[i].num_adapters = 1;

		/* set correct IF */
		af9015_af9013_config[0].tuner_if = 4570;
	}

	return ret;
}

@@ -1249,6 +1264,7 @@ static struct usb_device_id af9015_usb_table[] = {
	{USB_DEVICE(USB_VID_KWORLD_2,  USB_PID_KWORLD_395U_2)},
	{USB_DEVICE(USB_VID_KWORLD_2,  USB_PID_KWORLD_395U_3)},
	{USB_DEVICE(USB_VID_AFATECH,   USB_PID_TREKSTOR_DVBT)},
	{USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_A850)},
	{0},
};
MODULE_DEVICE_TABLE(usb, af9015_usb_table);
@@ -1413,7 +1429,7 @@ static struct dvb_usb_device_properties af9015_properties[] = {

		.i2c_algo = &af9015_i2c_algo,

		.num_device_descs = 8,
		.num_device_descs = 9,
		.devices = {
			{
				.name = "Xtensions XD-380",
@@ -1458,6 +1474,12 @@ static struct dvb_usb_device_properties af9015_properties[] = {
				.cold_ids = {&af9015_usb_table[19], NULL},
				.warm_ids = {NULL},
			},
			{
				.name = "AverMedia AVerTV Volar Black HD " \
					"(A850)",
				.cold_ids = {&af9015_usb_table[20], NULL},
				.warm_ids = {NULL},
			},
		}
	}
};
+1 −0
Original line number Diff line number Diff line
@@ -170,6 +170,7 @@
#define USB_PID_AVERMEDIA_VOLAR_X_2			0x8150
#define USB_PID_AVERMEDIA_A309				0xa309
#define USB_PID_AVERMEDIA_A310				0xa310
#define USB_PID_AVERMEDIA_A850				0x850a
#define USB_PID_TECHNOTREND_CONNECT_S2400               0x3006
#define USB_PID_TERRATEC_CINERGY_DT_XS_DIVERSITY	0x005a
#define USB_PID_TERRATEC_CINERGY_DT_XS_DIVERSITY_2	0x0081