[PATCH 04/11] tm6000: add different tuner reset for terratec

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Stefan Ringel <stefan.ringel@xxxxxxxx>

Signed-off-by: Stefan Ringel <stefan.ringel@xxxxxxxx>

diff --git a/drivers/staging/tm6000/tm6000-cards.c b/drivers/staging/tm6000/tm6000-cards.c
index ff04bba..5a8d716 100644
--- a/drivers/staging/tm6000/tm6000-cards.c
+++ b/drivers/staging/tm6000/tm6000-cards.c
@@ -269,12 +269,28 @@ int tm6000_tuner_callback(void *ptr, int component, int command, int arg)
 		/* Reset codes during load firmware */
 		switch (arg) {
 		case 0:
-			tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
-					dev->tuner_reset_gpio, 0x00);
-			msleep(130);
-			tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
-					dev->tuner_reset_gpio, 0x01);
-			msleep(130);
+			/* newer tuner can faster reset */
+			switch(dev->model) {
+			case TM6010_BOARD_TERRATEC_CINERGY_HYBRID_XE:
+				tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
+						dev->tuner_reset_gpio, 0x01);
+				msleep(60);
+				tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
+						dev->tuner_reset_gpio, 0x00);
+				msleep(75);
+				tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
+						dev->tuner_reset_gpio, 0x01);
+				msleep(60);
+				break;
+			default:
+				tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
+						dev->tuner_reset_gpio, 0x00);
+				msleep(130);
+				tm6000_set_reg (dev, REQ_03_SET_GET_MCU_PIN,
+						dev->tuner_reset_gpio, 0x01);
+				msleep(130);
+				break;
+			}
 			break;
 		case 1:
 			tm6000_set_reg (dev, REQ_04_EN_DISABLE_MCU_INT,
-- 
1.6.6.1

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux