1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00

[media] dvb: don't require a parameter for get_frontend

Just like set_frontend, use the dvb cache properties for get_frontend.
This is more consistent, as both functions are now symetric. Also,
at the places get_frontend is called, it makes sense to update the
cache.

Most of this patch were generated by this small perl script:

	while (<>) { $file .= $_; }
	if ($file =~ m/\.get_frontend\s*=\s*([\d\w_]+)/) {
		my $get = $1;
		$file =~ s/($get)(\s*\([^\,\)]+)\,\s*struct\s+dtv_frontend_properties\s*\*\s*([_\d\w]+)\)\s*\{/\1\2)\n{\n\tstruct dtv_frontend_properties *\3 = &fe->dtv_property_cache;/g;
	}
	print $file;

Of course, the changes at dvb_frontend.[ch] were made by hand,
as well as the changes on a few other places, where get_frontend()
is called internally inside the driver.

On some places, get_frontend() were just a void function. Those
occurrences were removed, as the DVB core handles such cases.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Mauro Carvalho Chehab 2011-12-30 11:30:21 -03:00
parent ac3852c41b
commit 7c61d80a9b
57 changed files with 123 additions and 170 deletions

View file

@ -1685,8 +1685,9 @@ static int dst_get_tuning_algo(struct dvb_frontend *fe)
return dst_algo ? DVBFE_ALGO_HW : DVBFE_ALGO_SW; return dst_algo ? DVBFE_ALGO_HW : DVBFE_ALGO_SW;
} }
static int dst_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int dst_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct dst_state *state = fe->demodulator_priv; struct dst_state *state = fe->demodulator_priv;
p->frequency = state->decode_freq; p->frequency = state->decode_freq;

View file

@ -143,7 +143,6 @@ struct dvb_frontend_private {
static void dvb_frontend_wakeup(struct dvb_frontend *fe); static void dvb_frontend_wakeup(struct dvb_frontend *fe);
static int dtv_get_frontend(struct dvb_frontend *fe, static int dtv_get_frontend(struct dvb_frontend *fe,
struct dtv_frontend_properties *c,
struct dvb_frontend_parameters *p_out); struct dvb_frontend_parameters *p_out);
static bool has_get_frontend(struct dvb_frontend *fe) static bool has_get_frontend(struct dvb_frontend *fe)
@ -161,7 +160,7 @@ static void dvb_frontend_add_event(struct dvb_frontend *fe, fe_status_t status)
dprintk ("%s\n", __func__); dprintk ("%s\n", __func__);
if ((status & FE_HAS_LOCK) && has_get_frontend(fe)) if ((status & FE_HAS_LOCK) && has_get_frontend(fe))
dtv_get_frontend(fe, NULL, &fepriv->parameters_out); dtv_get_frontend(fe, &fepriv->parameters_out);
mutex_lock(&events->mtx); mutex_lock(&events->mtx);
@ -1261,33 +1260,20 @@ static void dtv_property_cache_submit(struct dvb_frontend *fe)
* If p_out is not null, it will update the DVBv3 params pointed by it. * If p_out is not null, it will update the DVBv3 params pointed by it.
*/ */
static int dtv_get_frontend(struct dvb_frontend *fe, static int dtv_get_frontend(struct dvb_frontend *fe,
struct dtv_frontend_properties *c,
struct dvb_frontend_parameters *p_out) struct dvb_frontend_parameters *p_out)
{ {
const struct dtv_frontend_properties *cache = &fe->dtv_property_cache;
struct dtv_frontend_properties tmp_cache;
struct dvb_frontend_parameters tmp_out;
bool fill_params = (p_out != NULL);
int r; int r;
if (!p_out)
p_out = &tmp_out;
if (!c)
c = &tmp_cache;
else
memcpy(c, cache, sizeof(*c));
if (fe->ops.get_frontend) { if (fe->ops.get_frontend) {
r = fe->ops.get_frontend(fe, c); r = fe->ops.get_frontend(fe);
if (unlikely(r < 0)) if (unlikely(r < 0))
return r; return r;
if (fill_params) if (p_out)
dtv_property_legacy_params_sync(fe, p_out); dtv_property_legacy_params_sync(fe, p_out);
return 0; return 0;
} }
/* As everything is in cache, this is always supported */ /* As everything is in cache, get_frontend fops are always supported */
return 0; return 0;
} }
@ -1717,8 +1703,6 @@ static int dvb_frontend_ioctl_properties(struct file *file,
} else } else
if(cmd == FE_GET_PROPERTY) { if(cmd == FE_GET_PROPERTY) {
struct dtv_frontend_properties cache_out;
tvps = (struct dtv_properties __user *)parg; tvps = (struct dtv_properties __user *)parg;
dprintk("%s() properties.num = %d\n", __func__, tvps->num); dprintk("%s() properties.num = %d\n", __func__, tvps->num);
@ -1744,9 +1728,9 @@ static int dvb_frontend_ioctl_properties(struct file *file,
* Fills the cache out struct with the cache contents, plus * Fills the cache out struct with the cache contents, plus
* the data retrieved from get_frontend. * the data retrieved from get_frontend.
*/ */
dtv_get_frontend(fe, &cache_out, NULL); dtv_get_frontend(fe, NULL);
for (i = 0; i < tvps->num; i++) { for (i = 0; i < tvps->num; i++) {
err = dtv_property_process_get(fe, &cache_out, tvp + i, file); err = dtv_property_process_get(fe, c, tvp + i, file);
if (err < 0) if (err < 0)
goto out; goto out;
(tvp + i)->result = err; (tvp + i)->result = err;
@ -2043,7 +2027,7 @@ static int dvb_frontend_ioctl_legacy(struct file *file,
break; break;
case FE_GET_FRONTEND: case FE_GET_FRONTEND:
err = dtv_get_frontend(fe, NULL, &fepriv->parameters_out); err = dtv_get_frontend(fe, &fepriv->parameters_out);
if (err >= 0) if (err >= 0)
memcpy(parg, &fepriv->parameters_out, memcpy(parg, &fepriv->parameters_out,
sizeof(struct dvb_frontend_parameters)); sizeof(struct dvb_frontend_parameters));

View file

@ -284,7 +284,7 @@ struct dvb_frontend_ops {
int (*set_frontend)(struct dvb_frontend *fe); int (*set_frontend)(struct dvb_frontend *fe);
int (*get_tune_settings)(struct dvb_frontend* fe, struct dvb_frontend_tune_settings* settings); int (*get_tune_settings)(struct dvb_frontend* fe, struct dvb_frontend_tune_settings* settings);
int (*get_frontend)(struct dvb_frontend *fe, struct dtv_frontend_properties *props); int (*get_frontend)(struct dvb_frontend *fe);
int (*read_status)(struct dvb_frontend* fe, fe_status_t* status); int (*read_status)(struct dvb_frontend* fe, fe_status_t* status);
int (*read_ber)(struct dvb_frontend* fe, u32* ber); int (*read_ber)(struct dvb_frontend* fe, u32* ber);

View file

@ -1226,9 +1226,9 @@ static int af9005_fe_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int af9005_fe_get_frontend(struct dvb_frontend *fe, static int af9005_fe_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct af9005_fe_state *state = fe->demodulator_priv; struct af9005_fe_state *state = fe->demodulator_priv;
int ret; int ret;
u8 temp; u8 temp;

View file

@ -296,12 +296,6 @@ static int cinergyt2_fe_set_frontend(struct dvb_frontend *fe)
return (err < 0) ? err : 0; return (err < 0) ? err : 0;
} }
static int cinergyt2_fe_get_frontend(struct dvb_frontend *fe,
struct dtv_frontend_properties *fep)
{
return 0;
}
static void cinergyt2_fe_release(struct dvb_frontend *fe) static void cinergyt2_fe_release(struct dvb_frontend *fe)
{ {
struct cinergyt2_fe_state *state = fe->demodulator_priv; struct cinergyt2_fe_state *state = fe->demodulator_priv;
@ -352,7 +346,6 @@ static struct dvb_frontend_ops cinergyt2_fe_ops = {
.sleep = cinergyt2_fe_sleep, .sleep = cinergyt2_fe_sleep,
.set_frontend = cinergyt2_fe_set_frontend, .set_frontend = cinergyt2_fe_set_frontend,
.get_frontend = cinergyt2_fe_get_frontend,
.get_tune_settings = cinergyt2_fe_get_tune_settings, .get_tune_settings = cinergyt2_fe_get_tune_settings,
.read_status = cinergyt2_fe_read_status, .read_status = cinergyt2_fe_read_status,

View file

@ -139,9 +139,9 @@ static int dtt200u_fe_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int dtt200u_fe_get_frontend(struct dvb_frontend* fe, static int dtt200u_fe_get_frontend(struct dvb_frontend* fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dtt200u_fe_state *state = fe->demodulator_priv; struct dtt200u_fe_state *state = fe->demodulator_priv;
memcpy(fep, &state->fep, sizeof(struct dtv_frontend_properties)); memcpy(fep, &state->fep, sizeof(struct dtv_frontend_properties));
return 0; return 0;

View file

@ -282,9 +282,9 @@ static int jdvbt90502_set_property(struct dvb_frontend *fe,
return r; return r;
} }
static int jdvbt90502_get_frontend(struct dvb_frontend *fe, static int jdvbt90502_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
p->inversion = INVERSION_AUTO; p->inversion = INVERSION_AUTO;
p->bandwidth_hz = 6000000; p->bandwidth_hz = 6000000;
p->code_rate_HP = FEC_AUTO; p->code_rate_HP = FEC_AUTO;

View file

@ -507,9 +507,9 @@ static int mxl111sf_demod_read_signal_strength(struct dvb_frontend *fe,
return 0; return 0;
} }
static int mxl111sf_demod_get_frontend(struct dvb_frontend *fe, static int mxl111sf_demod_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct mxl111sf_demod_state *state = fe->demodulator_priv; struct mxl111sf_demod_state *state = fe->demodulator_priv;
mxl_dbg("()"); mxl_dbg("()");

View file

@ -211,13 +211,6 @@ static int vp702x_fe_sleep(struct dvb_frontend *fe)
return 0; return 0;
} }
static int vp702x_fe_get_frontend(struct dvb_frontend* fe,
struct dtv_frontend_properties *fep)
{
deb_fe("%s\n",__func__);
return 0;
}
static int vp702x_fe_send_diseqc_msg (struct dvb_frontend* fe, static int vp702x_fe_send_diseqc_msg (struct dvb_frontend* fe,
struct dvb_diseqc_master_cmd *m) struct dvb_diseqc_master_cmd *m)
{ {
@ -372,7 +365,6 @@ static struct dvb_frontend_ops vp702x_fe_ops = {
.sleep = vp702x_fe_sleep, .sleep = vp702x_fe_sleep,
.set_frontend = vp702x_fe_set_frontend, .set_frontend = vp702x_fe_set_frontend,
.get_frontend = vp702x_fe_get_frontend,
.get_tune_settings = vp702x_fe_get_tune_settings, .get_tune_settings = vp702x_fe_get_tune_settings,
.read_status = vp702x_fe_read_status, .read_status = vp702x_fe_read_status,

View file

@ -149,22 +149,6 @@ static int fdtv_set_frontend(struct dvb_frontend *fe)
return avc_tuner_dsd(fdtv, p); return avc_tuner_dsd(fdtv, p);
} }
static int fdtv_get_frontend(struct dvb_frontend *fe,
struct dtv_frontend_properties *params)
{
return -EOPNOTSUPP;
}
static int fdtv_get_property(struct dvb_frontend *fe, struct dtv_property *tvp)
{
return 0;
}
static int fdtv_set_property(struct dvb_frontend *fe, struct dtv_property *tvp)
{
return 0;
}
void fdtv_frontend_init(struct firedtv *fdtv, const char *name) void fdtv_frontend_init(struct firedtv *fdtv, const char *name)
{ {
struct dvb_frontend_ops *ops = &fdtv->fe.ops; struct dvb_frontend_ops *ops = &fdtv->fe.ops;
@ -174,10 +158,6 @@ void fdtv_frontend_init(struct firedtv *fdtv, const char *name)
ops->sleep = fdtv_sleep; ops->sleep = fdtv_sleep;
ops->set_frontend = fdtv_set_frontend; ops->set_frontend = fdtv_set_frontend;
ops->get_frontend = fdtv_get_frontend;
ops->get_property = fdtv_get_property;
ops->set_property = fdtv_set_property;
ops->read_status = fdtv_read_status; ops->read_status = fdtv_read_status;
ops->read_ber = fdtv_read_ber; ops->read_ber = fdtv_read_ber;

View file

@ -845,9 +845,9 @@ err:
return ret; return ret;
} }
static int af9013_get_frontend(struct dvb_frontend *fe, static int af9013_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct af9013_state *state = fe->demodulator_priv; struct af9013_state *state = fe->demodulator_priv;
int ret; int ret;
u8 buf[3]; u8 buf[3];

View file

@ -297,9 +297,9 @@ static int atbm8830_set_fe(struct dvb_frontend *fe)
return 0; return 0;
} }
static int atbm8830_get_fe(struct dvb_frontend *fe, static int atbm8830_get_fe(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
dprintk("%s\n", __func__); dprintk("%s\n", __func__);
/* TODO: get real readings from device */ /* TODO: get real readings from device */

View file

@ -911,9 +911,9 @@ static int au8522_read_ber(struct dvb_frontend *fe, u32 *ber)
return au8522_read_ucblocks(fe, ber); return au8522_read_ucblocks(fe, ber);
} }
static int au8522_get_frontend(struct dvb_frontend *fe, static int au8522_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct au8522_state *state = fe->demodulator_priv; struct au8522_state *state = fe->demodulator_priv;
c->frequency = state->current_frequency; c->frequency = state->current_frequency;

View file

@ -341,9 +341,9 @@ static int cx22700_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int cx22700_get_frontend(struct dvb_frontend *fe, static int cx22700_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct cx22700_state* state = fe->demodulator_priv; struct cx22700_state* state = fe->demodulator_priv;
u8 reg09 = cx22700_readreg (state, 0x09); u8 reg09 = cx22700_readreg (state, 0x09);

View file

@ -546,9 +546,9 @@ static int cx22702_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
return 0; return 0;
} }
static int cx22702_get_frontend(struct dvb_frontend *fe, static int cx22702_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct cx22702_state *state = fe->demodulator_priv; struct cx22702_state *state = fe->demodulator_priv;
u8 reg0C = cx22702_readreg(state, 0x0C); u8 reg0C = cx22702_readreg(state, 0x0C);

View file

@ -549,9 +549,9 @@ static int cx24110_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int cx24110_get_frontend(struct dvb_frontend *fe, static int cx24110_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct cx24110_state *state = fe->demodulator_priv; struct cx24110_state *state = fe->demodulator_priv;
s32 afc; unsigned sclk; s32 afc; unsigned sclk;

View file

@ -959,9 +959,9 @@ static int cx24123_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int cx24123_get_frontend(struct dvb_frontend *fe, static int cx24123_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct cx24123_state *state = fe->demodulator_priv; struct cx24123_state *state = fe->demodulator_priv;
dprintk("\n"); dprintk("\n");

View file

@ -307,8 +307,7 @@ static int cxd2820r_read_status(struct dvb_frontend *fe, fe_status_t *status)
return ret; return ret;
} }
static int cxd2820r_get_frontend(struct dvb_frontend *fe, static int cxd2820r_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
int ret; int ret;

View file

@ -112,8 +112,7 @@ static u16 dib3000_seq[2][2][2] = /* fft,gua, inv */
} }
}; };
static int dib3000mb_get_frontend(struct dvb_frontend* fe, static int dib3000mb_get_frontend(struct dvb_frontend* fe);
struct dtv_frontend_properties *c);
static int dib3000mb_set_frontend(struct dvb_frontend *fe, int tuner) static int dib3000mb_set_frontend(struct dvb_frontend *fe, int tuner)
{ {
@ -360,7 +359,7 @@ static int dib3000mb_set_frontend(struct dvb_frontend *fe, int tuner)
deb_setf("search_state after autosearch %d after %d checks\n",search_state,as_count); deb_setf("search_state after autosearch %d after %d checks\n",search_state,as_count);
if (search_state == 1) { if (search_state == 1) {
if (dib3000mb_get_frontend(fe, c) == 0) { if (dib3000mb_get_frontend(fe) == 0) {
deb_setf("reading tuning data from frontend succeeded.\n"); deb_setf("reading tuning data from frontend succeeded.\n");
return dib3000mb_set_frontend(fe, 0); return dib3000mb_set_frontend(fe, 0);
} }
@ -451,9 +450,9 @@ static int dib3000mb_fe_init(struct dvb_frontend* fe, int mobile_mode)
return 0; return 0;
} }
static int dib3000mb_get_frontend(struct dvb_frontend* fe, static int dib3000mb_get_frontend(struct dvb_frontend* fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct dib3000_state* state = fe->demodulator_priv; struct dib3000_state* state = fe->demodulator_priv;
fe_code_rate_t *cr; fe_code_rate_t *cr;
u16 tps_val; u16 tps_val;

View file

@ -632,9 +632,9 @@ struct i2c_adapter * dib3000mc_get_tuner_i2c_master(struct dvb_frontend *demod,
EXPORT_SYMBOL(dib3000mc_get_tuner_i2c_master); EXPORT_SYMBOL(dib3000mc_get_tuner_i2c_master);
static int dib3000mc_get_frontend(struct dvb_frontend* fe, static int dib3000mc_get_frontend(struct dvb_frontend* fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib3000mc_state *state = fe->demodulator_priv; struct dib3000mc_state *state = fe->demodulator_priv;
u16 tps = dib3000mc_read_word(state,458); u16 tps = dib3000mc_read_word(state,458);
@ -689,7 +689,7 @@ static int dib3000mc_get_frontend(struct dvb_frontend* fe,
static int dib3000mc_set_frontend(struct dvb_frontend *fe) static int dib3000mc_set_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache, tmp; struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib3000mc_state *state = fe->demodulator_priv; struct dib3000mc_state *state = fe->demodulator_priv;
int ret; int ret;
@ -712,8 +712,6 @@ static int dib3000mc_set_frontend(struct dvb_frontend *fe)
fep->code_rate_HP == FEC_AUTO) { fep->code_rate_HP == FEC_AUTO) {
int i = 1000, found; int i = 1000, found;
tmp = *fep;
dib3000mc_autosearch_start(fe); dib3000mc_autosearch_start(fe);
do { do {
msleep(1); msleep(1);
@ -724,7 +722,7 @@ static int dib3000mc_set_frontend(struct dvb_frontend *fe)
if (found == 0 || found == 1) if (found == 0 || found == 1)
return 0; // no channel found return 0; // no channel found
dib3000mc_get_frontend(fe, &tmp); dib3000mc_get_frontend(fe);
} }
ret = dib3000mc_tune(fe); ret = dib3000mc_tune(fe);

View file

@ -1154,9 +1154,9 @@ static int dib7000m_identify(struct dib7000m_state *state)
} }
static int dib7000m_get_frontend(struct dvb_frontend* fe, static int dib7000m_get_frontend(struct dvb_frontend* fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000m_state *state = fe->demodulator_priv; struct dib7000m_state *state = fe->demodulator_priv;
u16 tps = dib7000m_read_word(state,480); u16 tps = dib7000m_read_word(state,480);
@ -1214,7 +1214,7 @@ static int dib7000m_get_frontend(struct dvb_frontend* fe,
static int dib7000m_set_frontend(struct dvb_frontend *fe) static int dib7000m_set_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache, tmp; struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000m_state *state = fe->demodulator_priv; struct dib7000m_state *state = fe->demodulator_priv;
int time, ret; int time, ret;
@ -1239,8 +1239,6 @@ static int dib7000m_set_frontend(struct dvb_frontend *fe)
fep->code_rate_HP == FEC_AUTO) { fep->code_rate_HP == FEC_AUTO) {
int i = 800, found; int i = 800, found;
tmp = *fep;
dib7000m_autosearch_start(fe); dib7000m_autosearch_start(fe);
do { do {
msleep(1); msleep(1);
@ -1251,7 +1249,7 @@ static int dib7000m_set_frontend(struct dvb_frontend *fe)
if (found == 0 || found == 1) if (found == 0 || found == 1)
return 0; // no channel found return 0; // no channel found
dib7000m_get_frontend(fe, &tmp); dib7000m_get_frontend(fe);
} }
ret = dib7000m_tune(fe); ret = dib7000m_tune(fe);

View file

@ -1384,9 +1384,9 @@ static int dib7000p_identify(struct dib7000p_state *st)
return 0; return 0;
} }
static int dib7000p_get_frontend(struct dvb_frontend *fe, static int dib7000p_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000p_state *state = fe->demodulator_priv; struct dib7000p_state *state = fe->demodulator_priv;
u16 tps = dib7000p_read_word(state, 463); u16 tps = dib7000p_read_word(state, 463);
@ -1482,7 +1482,7 @@ static int dib7000p_get_frontend(struct dvb_frontend *fe,
static int dib7000p_set_frontend(struct dvb_frontend *fe) static int dib7000p_set_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache, tmp; struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct dib7000p_state *state = fe->demodulator_priv; struct dib7000p_state *state = fe->demodulator_priv;
int time, ret; int time, ret;
@ -1509,7 +1509,6 @@ static int dib7000p_set_frontend(struct dvb_frontend *fe)
fep->guard_interval == GUARD_INTERVAL_AUTO || fep->modulation == QAM_AUTO || fep->code_rate_HP == FEC_AUTO) { fep->guard_interval == GUARD_INTERVAL_AUTO || fep->modulation == QAM_AUTO || fep->code_rate_HP == FEC_AUTO) {
int i = 800, found; int i = 800, found;
tmp = *fep;
dib7000p_autosearch_start(fe); dib7000p_autosearch_start(fe);
do { do {
msleep(1); msleep(1);
@ -1520,7 +1519,7 @@ static int dib7000p_set_frontend(struct dvb_frontend *fe)
if (found == 0 || found == 1) if (found == 0 || found == 1)
return 0; return 0;
dib7000p_get_frontend(fe, &tmp); dib7000p_get_frontend(fe);
} }
ret = dib7000p_tune(fe); ret = dib7000p_tune(fe);

View file

@ -2810,7 +2810,7 @@ int dib8000_set_tune_state(struct dvb_frontend *fe, enum frontend_tune_state tun
} }
EXPORT_SYMBOL(dib8000_set_tune_state); EXPORT_SYMBOL(dib8000_set_tune_state);
static int dib8000_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *c) static int dib8000_get_frontend(struct dvb_frontend *fe)
{ {
struct dib8000_state *state = fe->demodulator_priv; struct dib8000_state *state = fe->demodulator_priv;
u16 i, val = 0; u16 i, val = 0;
@ -2824,7 +2824,7 @@ static int dib8000_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_pro
if (stat&FE_HAS_SYNC) { if (stat&FE_HAS_SYNC) {
dprintk("TMCC lock on the slave%i", index_frontend); dprintk("TMCC lock on the slave%i", index_frontend);
/* synchronize the cache with the other frontends */ /* synchronize the cache with the other frontends */
state->fe[index_frontend]->ops.get_frontend(state->fe[index_frontend], c); state->fe[index_frontend]->ops.get_frontend(state->fe[index_frontend]);
for (sub_index_frontend = 0; (sub_index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[sub_index_frontend] != NULL); sub_index_frontend++) { for (sub_index_frontend = 0; (sub_index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[sub_index_frontend] != NULL); sub_index_frontend++) {
if (sub_index_frontend != index_frontend) { if (sub_index_frontend != index_frontend) {
state->fe[sub_index_frontend]->dtv_property_cache.isdbt_sb_mode = state->fe[index_frontend]->dtv_property_cache.isdbt_sb_mode; state->fe[sub_index_frontend]->dtv_property_cache.isdbt_sb_mode = state->fe[index_frontend]->dtv_property_cache.isdbt_sb_mode;
@ -3088,7 +3088,7 @@ static int dib8000_set_frontend(struct dvb_frontend *fe)
dprintk("tune success on frontend%i", index_frontend_success); dprintk("tune success on frontend%i", index_frontend_success);
dib8000_get_frontend(fe, &state->fe[0]->dtv_property_cache); dib8000_get_frontend(fe);
} }
for (index_frontend = 0, ret = 0; (ret >= 0) && (index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[index_frontend] != NULL); index_frontend++) for (index_frontend = 0, ret = 0; (ret >= 0) && (index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[index_frontend] != NULL); index_frontend++)

View file

@ -1867,7 +1867,7 @@ static int dib9000_fe_get_tune_settings(struct dvb_frontend *fe, struct dvb_fron
return 0; return 0;
} }
static int dib9000_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *c) static int dib9000_get_frontend(struct dvb_frontend *fe)
{ {
struct dib9000_state *state = fe->demodulator_priv; struct dib9000_state *state = fe->demodulator_priv;
u8 index_frontend, sub_index_frontend; u8 index_frontend, sub_index_frontend;
@ -1883,7 +1883,7 @@ static int dib9000_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_pro
dprintk("TPS lock on the slave%i", index_frontend); dprintk("TPS lock on the slave%i", index_frontend);
/* synchronize the cache with the other frontends */ /* synchronize the cache with the other frontends */
state->fe[index_frontend]->ops.get_frontend(state->fe[index_frontend], c); state->fe[index_frontend]->ops.get_frontend(state->fe[index_frontend]);
for (sub_index_frontend = 0; (sub_index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[sub_index_frontend] != NULL); for (sub_index_frontend = 0; (sub_index_frontend < MAX_NUMBER_OF_FRONTENDS) && (state->fe[sub_index_frontend] != NULL);
sub_index_frontend++) { sub_index_frontend++) {
if (sub_index_frontend != index_frontend) { if (sub_index_frontend != index_frontend) {
@ -2054,7 +2054,7 @@ static int dib9000_set_frontend(struct dvb_frontend *fe)
/* synchronize all the channel cache */ /* synchronize all the channel cache */
state->get_frontend_internal = 1; state->get_frontend_internal = 1;
dib9000_get_frontend(state->fe[0], &state->fe[0]->dtv_property_cache); dib9000_get_frontend(state->fe[0]);
state->get_frontend_internal = 0; state->get_frontend_internal = 0;
/* retune the other frontends with the found channel */ /* retune the other frontends with the found channel */

View file

@ -68,8 +68,10 @@ static int dvb_dummy_fe_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
return 0; return 0;
} }
static int dvb_dummy_fe_get_frontend(struct dvb_frontend *fe, /*
struct dtv_frontend_properties *c) * Only needed if it actually reads something from the hardware
*/
static int dvb_dummy_fe_get_frontend(struct dvb_frontend *fe)
{ {
return 0; return 0;
} }

View file

@ -572,9 +572,9 @@ static int it913x_fe_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
return 0; return 0;
} }
static int it913x_fe_get_frontend(struct dvb_frontend *fe, static int it913x_fe_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct it913x_fe_state *state = fe->demodulator_priv; struct it913x_fe_state *state = fe->demodulator_priv;
int ret; int ret;
u8 reg[8]; u8 reg[8];

View file

@ -243,9 +243,9 @@ static int apply_frontend_param(struct dvb_frontend *fe)
return 0; return 0;
} }
static int get_frontend(struct dvb_frontend *fe, static int get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct l64781_state* state = fe->demodulator_priv; struct l64781_state* state = fe->demodulator_priv;
int tmp; int tmp;

View file

@ -813,9 +813,9 @@ fail:
return ret; return ret;
} }
static int lgdt3305_get_frontend(struct dvb_frontend *fe, static int lgdt3305_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct lgdt3305_state *state = fe->demodulator_priv; struct lgdt3305_state *state = fe->demodulator_priv;
lg_dbg("\n"); lg_dbg("\n");

View file

@ -437,9 +437,9 @@ static int lgdt330x_set_parameters(struct dvb_frontend *fe)
return 0; return 0;
} }
static int lgdt330x_get_frontend(struct dvb_frontend *fe, static int lgdt330x_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct lgdt330x_state *state = fe->demodulator_priv; struct lgdt330x_state *state = fe->demodulator_priv;
p->frequency = state->current_frequency; p->frequency = state->current_frequency;
return 0; return 0;

View file

@ -336,9 +336,9 @@ lgs8gl5_set_frontend(struct dvb_frontend *fe)
static int static int
lgs8gl5_get_frontend(struct dvb_frontend *fe, lgs8gl5_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct lgs8gl5_state *state = fe->demodulator_priv; struct lgs8gl5_state *state = fe->demodulator_priv;
u8 inv = lgs8gl5_read_reg(state, REG_INVERSION); u8 inv = lgs8gl5_read_reg(state, REG_INVERSION);

View file

@ -691,9 +691,9 @@ static int lgs8gxx_set_fe(struct dvb_frontend *fe)
return 0; return 0;
} }
static int lgs8gxx_get_fe(struct dvb_frontend *fe, static int lgs8gxx_get_fe(struct dvb_frontend *fe)
struct dtv_frontend_properties *fe_params)
{ {
struct dtv_frontend_properties *fe_params = &fe->dtv_property_cache;
dprintk("%s\n", __func__); dprintk("%s\n", __func__);
/* TODO: get real readings from device */ /* TODO: get real readings from device */

View file

@ -525,9 +525,9 @@ static int mb86a20s_set_frontend(struct dvb_frontend *fe)
return rc; return rc;
} }
static int mb86a20s_get_frontend(struct dvb_frontend *fe, static int mb86a20s_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
/* FIXME: For now, it does nothing */ /* FIXME: For now, it does nothing */

View file

@ -636,9 +636,9 @@ static int mt312_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int mt312_get_frontend(struct dvb_frontend *fe, static int mt312_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct mt312_state *state = fe->demodulator_priv; struct mt312_state *state = fe->demodulator_priv;
int ret; int ret;

View file

@ -311,9 +311,9 @@ static int mt352_set_parameters(struct dvb_frontend *fe)
return 0; return 0;
} }
static int mt352_get_parameters(struct dvb_frontend* fe, static int mt352_get_parameters(struct dvb_frontend* fe)
struct dtv_frontend_properties *op)
{ {
struct dtv_frontend_properties *op = &fe->dtv_property_cache;
struct mt352_state* state = fe->demodulator_priv; struct mt352_state* state = fe->demodulator_priv;
u16 tps; u16 tps;
u16 div; u16 div;

View file

@ -375,9 +375,9 @@ static int or51132_set_parameters(struct dvb_frontend *fe)
return 0; return 0;
} }
static int or51132_get_parameters(struct dvb_frontend* fe, static int or51132_get_parameters(struct dvb_frontend* fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct or51132_state* state = fe->demodulator_priv; struct or51132_state* state = fe->demodulator_priv;
int status; int status;
int retry = 1; int retry = 1;

View file

@ -925,9 +925,9 @@ static int s5h1409_read_ber(struct dvb_frontend *fe, u32 *ber)
return s5h1409_read_ucblocks(fe, ber); return s5h1409_read_ucblocks(fe, ber);
} }
static int s5h1409_get_frontend(struct dvb_frontend *fe, static int s5h1409_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct s5h1409_state *state = fe->demodulator_priv; struct s5h1409_state *state = fe->demodulator_priv;
p->frequency = state->current_frequency; p->frequency = state->current_frequency;

View file

@ -840,9 +840,9 @@ static int s5h1411_read_ber(struct dvb_frontend *fe, u32 *ber)
return s5h1411_read_ucblocks(fe, ber); return s5h1411_read_ucblocks(fe, ber);
} }
static int s5h1411_get_frontend(struct dvb_frontend *fe, static int s5h1411_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct s5h1411_state *state = fe->demodulator_priv; struct s5h1411_state *state = fe->demodulator_priv;
p->frequency = state->current_frequency; p->frequency = state->current_frequency;

View file

@ -765,9 +765,9 @@ static int s5h1420_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int s5h1420_get_frontend(struct dvb_frontend* fe, static int s5h1420_get_frontend(struct dvb_frontend* fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct s5h1420_state* state = fe->demodulator_priv; struct s5h1420_state* state = fe->demodulator_priv;
p->frequency = state->tunedfreq + s5h1420_getfreqoffset(state); p->frequency = state->tunedfreq + s5h1420_getfreqoffset(state);

View file

@ -433,9 +433,9 @@ static int s921_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int s921_get_frontend(struct dvb_frontend *fe, static int s921_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct s921_state *state = fe->demodulator_priv; struct s921_state *state = fe->demodulator_priv;
/* FIXME: Probably it is possible to get it from regs f1 and f2 */ /* FIXME: Probably it is possible to get it from regs f1 and f2 */

View file

@ -1569,8 +1569,9 @@ static enum dvbfe_search stb0899_search(struct dvb_frontend *fe)
return DVBFE_ALGO_SEARCH_ERROR; return DVBFE_ALGO_SEARCH_ERROR;
} }
static int stb0899_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int stb0899_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stb0899_state *state = fe->demodulator_priv; struct stb0899_state *state = fe->demodulator_priv;
struct stb0899_internal *internal = &state->internal; struct stb0899_internal *internal = &state->internal;

View file

@ -337,7 +337,7 @@ static int stb6100_set_frequency(struct dvb_frontend *fe, u32 frequency)
if (fe->ops.get_frontend) { if (fe->ops.get_frontend) {
dprintk(verbose, FE_DEBUG, 1, "Get frontend parameters"); dprintk(verbose, FE_DEBUG, 1, "Get frontend parameters");
fe->ops.get_frontend(fe, &p); fe->ops.get_frontend(fe);
} }
srate = p.symbol_rate; srate = p.symbol_rate;

View file

@ -614,8 +614,9 @@ timeout:
return 0; return 0;
} }
static int stv0297_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int stv0297_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stv0297_state *state = fe->demodulator_priv; struct stv0297_state *state = fe->demodulator_priv;
int reg_00, reg_83; int reg_00, reg_83;

View file

@ -596,8 +596,9 @@ static int stv0299_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int stv0299_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties * p) static int stv0299_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stv0299_state* state = fe->demodulator_priv; struct stv0299_state* state = fe->demodulator_priv;
s32 derot_freq; s32 derot_freq;
int invval; int invval;

View file

@ -1926,9 +1926,9 @@ static int stv0367ter_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
return 0; return 0;
} }
static int stv0367ter_get_frontend(struct dvb_frontend *fe, static int stv0367ter_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stv0367_state *state = fe->demodulator_priv; struct stv0367_state *state = fe->demodulator_priv;
struct stv0367ter_state *ter_state = state->ter_state; struct stv0367ter_state *ter_state = state->ter_state;
@ -3136,9 +3136,9 @@ static int stv0367cab_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int stv0367cab_get_frontend(struct dvb_frontend *fe, static int stv0367cab_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stv0367_state *state = fe->demodulator_priv; struct stv0367_state *state = fe->demodulator_priv;
struct stv0367cab_state *cab_state = state->cab_state; struct stv0367cab_state *cab_state = state->cab_state;

View file

@ -1843,9 +1843,9 @@ static int stv0900_sleep(struct dvb_frontend *fe)
return 0; return 0;
} }
static int stv0900_get_frontend(struct dvb_frontend *fe, static int stv0900_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct stv0900_state *state = fe->demodulator_priv; struct stv0900_state *state = fe->demodulator_priv;
struct stv0900_internal *intp = state->internal; struct stv0900_internal *intp = state->internal;
enum fe_stv0900_demod_num demod = state->demod; enum fe_stv0900_demod_num demod = state->demod;

View file

@ -386,8 +386,9 @@ static int tda10021_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
return 0; return 0;
} }
static int tda10021_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int tda10021_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct tda10021_state* state = fe->demodulator_priv; struct tda10021_state* state = fe->demodulator_priv;
int sync; int sync;
s8 afc = 0; s8 afc = 0;

View file

@ -456,8 +456,9 @@ static int tda10023_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
return 0; return 0;
} }
static int tda10023_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int tda10023_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct tda10023_state* state = fe->demodulator_priv; struct tda10023_state* state = fe->demodulator_priv;
int sync,inv; int sync,inv;
s8 afc = 0; s8 afc = 0;

View file

@ -1028,9 +1028,9 @@ static int tda10048_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
return 0; return 0;
} }
static int tda10048_get_frontend(struct dvb_frontend *fe, static int tda10048_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct tda10048_state *state = fe->demodulator_priv; struct tda10048_state *state = fe->demodulator_priv;
dprintk(1, "%s()\n", __func__); dprintk(1, "%s()\n", __func__);

View file

@ -895,8 +895,9 @@ static int tda1004x_set_fe(struct dvb_frontend *fe)
return 0; return 0;
} }
static int tda1004x_get_fe(struct dvb_frontend *fe, struct dtv_frontend_properties *fe_params) static int tda1004x_get_fe(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *fe_params = &fe->dtv_property_cache;
struct tda1004x_state* state = fe->demodulator_priv; struct tda1004x_state* state = fe->demodulator_priv;
dprintk("%s\n", __func__); dprintk("%s\n", __func__);

View file

@ -776,8 +776,7 @@ error:
return ret; return ret;
} }
static int tda10071_get_frontend(struct dvb_frontend *fe, static int tda10071_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct tda10071_priv *priv = fe->demodulator_priv; struct tda10071_priv *priv = fe->demodulator_priv;
struct dtv_frontend_properties *c = &fe->dtv_property_cache; struct dtv_frontend_properties *c = &fe->dtv_property_cache;

View file

@ -457,8 +457,9 @@ static int tda10086_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int tda10086_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *fe_params) static int tda10086_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *fe_params = &fe->dtv_property_cache;
struct tda10086_state* state = fe->demodulator_priv; struct tda10086_state* state = fe->demodulator_priv;
u8 val; u8 val;
int tmp; int tmp;

View file

@ -335,8 +335,9 @@ static int tda8083_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int tda8083_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int tda8083_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct tda8083_state* state = fe->demodulator_priv; struct tda8083_state* state = fe->demodulator_priv;
/* FIXME: get symbolrate & frequency offset...*/ /* FIXME: get symbolrate & frequency offset...*/

View file

@ -310,8 +310,9 @@ static int ves1820_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
return 0; return 0;
} }
static int ves1820_get_frontend(struct dvb_frontend *fe, struct dtv_frontend_properties *p) static int ves1820_get_frontend(struct dvb_frontend *fe)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct ves1820_state* state = fe->demodulator_priv; struct ves1820_state* state = fe->demodulator_priv;
int sync; int sync;
s8 afc = 0; s8 afc = 0;

View file

@ -403,9 +403,9 @@ static int ves1x93_set_frontend(struct dvb_frontend *fe)
return 0; return 0;
} }
static int ves1x93_get_frontend(struct dvb_frontend *fe, static int ves1x93_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *p)
{ {
struct dtv_frontend_properties *p = &fe->dtv_property_cache;
struct ves1x93_state* state = fe->demodulator_priv; struct ves1x93_state* state = fe->demodulator_priv;
int afc; int afc;

View file

@ -371,9 +371,9 @@ static int zl10353_set_parameters(struct dvb_frontend *fe)
return 0; return 0;
} }
static int zl10353_get_parameters(struct dvb_frontend *fe, static int zl10353_get_parameters(struct dvb_frontend *fe)
struct dtv_frontend_properties *c)
{ {
struct dtv_frontend_properties *c = &fe->dtv_property_cache;
struct zl10353_state *state = fe->demodulator_priv; struct zl10353_state *state = fe->demodulator_priv;
int s6, s9; int s6, s9;
u16 tps; u16 tps;

View file

@ -739,9 +739,9 @@ static int smsdvb_set_frontend(struct dvb_frontend *fe)
} }
} }
static int smsdvb_get_frontend(struct dvb_frontend *fe, static int smsdvb_get_frontend(struct dvb_frontend *fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct smsdvb_client_t *client = struct smsdvb_client_t *client =
container_of(fe, struct smsdvb_client_t, frontend); container_of(fe, struct smsdvb_client_t, frontend);

View file

@ -231,9 +231,9 @@ static s32 poseidon_fe_init(struct dvb_frontend *fe)
return 0; return 0;
} }
static int poseidon_get_fe(struct dvb_frontend *fe, static int poseidon_get_fe(struct dvb_frontend *fe)
struct dtv_frontend_properties *fep)
{ {
struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
struct poseidon *pd = fe->demodulator_priv; struct poseidon *pd = fe->demodulator_priv;
struct pd_dvb_adapter *pd_dvb = &pd->dvb_data; struct pd_dvb_adapter *pd_dvb = &pd->dvb_data;