linux: add patch to support Cinergy S2 USB DVB tuners

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2012-11-15 00:45:23 +01:00
parent 6bf39f2558
commit 48d528b3c9

View File

@ -0,0 +1,53 @@
diff -Naur linux-3.6.6/drivers/media/dvb/dvb-usb/dw2102.c linux-3.6.6.patch/drivers/media/dvb/dvb-usb/dw2102.c
--- linux-3.6.6/drivers/media/dvb/dvb-usb/dw2102.c 2012-06-20 00:18:30.000000000 +0200
+++ linux-3.6.6.patch/drivers/media/dvb/dvb-usb/dw2102.c 2012-06-28 14:08:50.721691934 +0200
@@ -1179,6 +1179,13 @@ static int su3000_frontend_attach(struct dvb_usb_adapter *d)
u8 ibuf[] = { 0 };
if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
+ err("command 0x0e transfer failed.");
+
+ obuf[0] = 0xe;
+ obuf[1] = 0x02;
+ obuf[2] = 1;
+
+ if (dvb_usb_generic_rw(d->dev, obuf, 3, ibuf, 1, 0) < 0)
err("command 0x0e transfer failed.");
obuf[0] = 0xe;
@@ -1444,6 +1451,7 @@ enum dw2102_table_entry {
PROF_7500,
GENIATECH_SU3000,
TERRATEC_CINERGY_S2,
+ TERRATEC_CINERGY_S2_R2,
TEVII_S480_1,
TEVII_S480_2,
X3M_SPC1400HD,
@@ -1462,6 +1470,7 @@ static struct usb_device_id dw2102_table[] = {
[PROF_7500] = {USB_DEVICE(0x3034, 0x7500)},
[GENIATECH_SU3000] = {USB_DEVICE(0x1f4d, 0x3000)},
[TERRATEC_CINERGY_S2] = {USB_DEVICE(USB_VID_TERRATEC, 0x00a8)},
+ [TERRATEC_CINERGY_S2_R2] = {USB_DEVICE(USB_VID_TERRATEC, 0x00b0)},
[TEVII_S480_1] = {USB_DEVICE(0x9022, USB_PID_TEVII_S480_1)},
[TEVII_S480_2] = {USB_DEVICE(0x9022, USB_PID_TEVII_S480_2)},
[X3M_SPC1400HD] = {USB_DEVICE(0x1f4d, 0x3100)},
@@ -1853,7 +1862,7 @@ static struct dvb_usb_device_properties su3000_properties = {
}},
}
},
- .num_device_descs = 3,
+ .num_device_descs = 4,
.devices = {
{ "SU3000HD DVB-S USB2.0",
{ &dw2102_table[GENIATECH_SU3000], NULL },
@@ -1867,6 +1876,10 @@ static struct dvb_usb_device_properties su3000_properties = {
{ &dw2102_table[X3M_SPC1400HD], NULL },
{ NULL },
},
+ { "Terratec Cinergy S2 USB HD Rev.2",
+ { &dw2102_table[TERRATEC_CINERGY_S2_R2], NULL },
+ { NULL },
+ },
}
};