Fix dvbsky drivers to fit in 3.2 kernel.
- remove delsys since it is not supported in 3.2.
- m88xxxxxx_set_frontend does not match the prototype in 3.2. Thus the
change.
- change the firmware location.
Google-Bug-Id: 19432272
Change-Id: I891812917aa2329dc4a44cdf65145393915d4e9b
diff --git a/drivers/media/dvb/frontends/dvbsky_m88rs6000.c b/drivers/media/dvb/frontends/dvbsky_m88rs6000.c
index 1d39ed567..dcb9f29 100644
--- a/drivers/media/dvb/frontends/dvbsky_m88rs6000.c
+++ b/drivers/media/dvb/frontends/dvbsky_m88rs6000.c
@@ -1370,7 +1370,7 @@
return 0;
}
-static int m88rs6000_set_frontend(struct dvb_frontend *fe)
+static int m88rs6000_set_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters* params)
{
struct m88rs6000_state *state = fe->demodulator_priv;
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
@@ -1443,7 +1443,7 @@
}
static int m88rs6000_tune(struct dvb_frontend *fe,
- bool re_tune,
+ struct dvb_frontend_parameters* params,
unsigned int mode_flags,
unsigned int *delay,
fe_status_t *status)
@@ -1451,10 +1451,10 @@
*delay = HZ / 5;
dprintk("%s() ", __func__);
- dprintk("re_tune = %d\n", re_tune);
+ dprintk("re_tune = %d\n", params ? 1 : 0);
- if (re_tune) {
- int ret = m88rs6000_set_frontend(fe);
+ if (params) {
+ int ret = m88rs6000_set_frontend(fe, params);
if (ret)
return ret;
}
@@ -1622,7 +1622,6 @@
}
static struct dvb_frontend_ops m88rs6000_ops = {
- .delsys = { SYS_DVBS, SYS_DVBS2 },
.info = {
.name = "Montage RS6000(DVBSky)",
.type = FE_QPSK,
diff --git a/drivers/media/dvb/frontends/dvbsky_m88rs6000_priv.h b/drivers/media/dvb/frontends/dvbsky_m88rs6000_priv.h
index beec213..c9cda42 100644
--- a/drivers/media/dvb/frontends/dvbsky_m88rs6000_priv.h
+++ b/drivers/media/dvb/frontends/dvbsky_m88rs6000_priv.h
@@ -10,7 +10,7 @@
#define FW_DOWN_SIZE 32
#define FW_DOWN_LOOP (8192/FW_DOWN_SIZE)
-#define RS6000_DEFAULT_FIRMWARE "dvb-fe-rs6000.fw"
+#define RS6000_DEFAULT_FIRMWARE "dvbsky-firmware/dvb-fe-rs6000.fw"
#define MT_FE_MCLK_KHZ 96000 /* in kHz */
#define MT_FE_CRYSTAL_KHZ 27000 /* in kHz */
#define FREQ_OFFSET_AT_SMALL_SYM_RATE_KHz 3000
diff --git a/drivers/media/dvb/frontends/m88ds3103.c b/drivers/media/dvb/frontends/m88ds3103.c
index 048a3ca..c1846e1 100644
--- a/drivers/media/dvb/frontends/m88ds3103.c
+++ b/drivers/media/dvb/frontends/m88ds3103.c
@@ -1226,7 +1226,7 @@
return 0;
}
-static int m88ds3103_set_frontend(struct dvb_frontend *fe)
+static int m88ds3103_set_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters* params)
{
struct m88ds3103_state *state = fe->demodulator_priv;
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
@@ -1530,7 +1530,7 @@
}
static int m88ds3103_tune(struct dvb_frontend *fe,
- bool re_tune,
+ struct dvb_frontend_parameters* params,
unsigned int mode_flags,
unsigned int *delay,
fe_status_t *status)
@@ -1538,10 +1538,10 @@
*delay = HZ / 5;
dprintk("%s() ", __func__);
- dprintk("re_tune = %d\n", re_tune);
+ dprintk("re_tune = %d\n", params ? 1 : 0);
- if (re_tune) {
- int ret = m88ds3103_set_frontend(fe);
+ if (params) {
+ int ret = m88ds3103_set_frontend(fe, params);
if (ret)
return ret;
}