m88rs2000: LNB voltage control implemented

2012-05-08 Thread Igor M. Liplianin
Trival patch to get it working with my cards stuff.

Signed-off-by: Igor M. Liplianin liplia...@me.bydiff --git a/drivers/media/dvb/frontends/m88rs2000.c b/drivers/media/dvb/frontends/m88rs2000.c
index 547230d..f6d6e39 100644
--- a/drivers/media/dvb/frontends/m88rs2000.c
+++ b/drivers/media/dvb/frontends/m88rs2000.c
@@ -416,9 +416,25 @@ static int m88rs2000_tab_set(struct m88rs2000_state *state,
 
 static int m88rs2000_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t volt)
 {
-	deb_info(%s: %s\n, __func__,
-		volt == SEC_VOLTAGE_13 ? SEC_VOLTAGE_13 :
-		volt == SEC_VOLTAGE_18 ? SEC_VOLTAGE_18 : ??);
+	struct m88rs2000_state *state = fe-demodulator_priv;
+	u8 data;
+
+	data = m88rs2000_demod_read(state, 0xb2);
+	data |= 0x03; /* bit0 V/H, bit1 off/on */
+
+	switch (volt) {
+	case SEC_VOLTAGE_18:
+		data = ~0x03;
+		break;
+	case SEC_VOLTAGE_13:
+		data = ~0x03;
+		data |= 0x01;
+		break;
+	case SEC_VOLTAGE_OFF:
+		break;
+	}
+
+	m88rs2000_demod_write(state, 0xb2, data);
 
 	return 0;
 }


Re: m88rs2000: LNB voltage control implemented

2012-05-08 Thread Malcolm Priestley
On Tue, 2012-05-08 at 11:25 +0300, Igor M. Liplianin wrote:
 Trival patch to get it working with my cards stuff.
 
 Signed-off-by: Igor M. Liplianin liplia...@me.by
Acked-by: Malcolm Priestley tvbox...@gmail.com

 differences between files attachment (rs2000volt.patch)
 diff --git a/drivers/media/dvb/frontends/m88rs2000.c 
 b/drivers/media/dvb/frontends/m88rs2000.c index 547230d..f6d6e39 100644 --- 
 a/drivers/media/dvb/frontends/m88rs2000.c +++ 
 b/drivers/media/dvb/frontends/m88rs2000.c @@ -416,9 +416,25 @@ static int 
 m88rs2000_tab_set(struct m88rs2000_state *state, static int 
 m88rs2000_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t volt) { - 
deb_info(%s: %s\n, __func__, -volt == SEC_VOLTAGE_13 ? 
 SEC_VOLTAGE_13 : -   volt == SEC_VOLTAGE_18 ? SEC_VOLTAGE_18 : 
 ??); +struct m88rs2000_state *state = fe-demodulator_priv; + u8 data; 
 + +data = m88rs2000_demod_read(state, 0xb2); + data |= 0x03; /* bit0 
 V/H, bit1 off/on */ + +   switch (volt) { +   case SEC_VOLTAGE_18: +  
 data = ~0x03; +break; +case SEC_VOLTAGE_13: +
   data = ~0x03; +data |= 0x01; + break; +
 case SEC_VOLTAGE_OFF: + break; +} + +   
 m88rs2000_demod_write(state, 0xb2, data);   return 0; }
Regards


Malcolm

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