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 },
+                },
 	}
 };
 
