Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 30032
b: refs/heads/master
c: 8cfba63
h: refs/heads/master
v: v3
  • Loading branch information
Manu Abraham authored and Mauro Carvalho Chehab committed Jun 25, 2006
1 parent 7f21533 commit 01e43c9
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2e506a0faff0caa62e4c9531611684ff61cf1ca4
refs/heads/master: 8cfba6301c3c7e0d3332e237b99fefc0db001163
52 changes: 47 additions & 5 deletions trunk/drivers/media/dvb/bt8xx/dst.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,10 @@ static unsigned int dst_addons;
module_param(dst_addons, int, 0644);
MODULE_PARM_DESC(dst_addons, "CA daughterboard, default is 0 (No addons)");

static unsigned int dst_algo;
module_param(dst_algo, int, 0644);
MODULE_PARM_DESC(dst_algo, "tuning algo: default is 0=(SW), 1=(HW)");

#define HAS_LOCK 1
#define ATTEMPT_TUNE 2
#define HAS_POWER 4
Expand Down Expand Up @@ -1360,7 +1364,36 @@ static int dst_read_snr(struct dvb_frontend *fe, u16 *snr)
return 0;
}

static int dst_set_frontend(struct dvb_frontend* fe,
static int dst_set_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters *p)
{
struct dst_state *state = fe->demodulator_priv;

if (p != NULL) {
dst_set_freq(state, p->frequency);
dprintk(verbose, DST_DEBUG, 1, "Set Frequency=[%d]", p->frequency);

if (state->dst_type == DST_TYPE_IS_SAT) {
if (state->type_flags & DST_TYPE_HAS_OBS_REGS)
dst_set_inversion(state, p->inversion);
dst_set_fec(state, p->u.qpsk.fec_inner);
dst_set_symbolrate(state, p->u.qpsk.symbol_rate);
dst_set_polarization(state);
dprintk(verbose, DST_DEBUG, 1, "Set Symbolrate=[%d]", p->u.qpsk.symbol_rate);

} else if (state->dst_type == DST_TYPE_IS_TERR)
dst_set_bandwidth(state, p->u.ofdm.bandwidth);
else if (state->dst_type == DST_TYPE_IS_CABLE) {
dst_set_fec(state, p->u.qam.fec_inner);
dst_set_symbolrate(state, p->u.qam.symbol_rate);
dst_set_modulation(state, p->u.qam.modulation);
}
dst_write_tuna(fe);
}

return 0;
}

static int dst_tune_frontend(struct dvb_frontend* fe,
struct dvb_frontend_parameters* p,
unsigned int mode_flags,
int *delay,
Expand Down Expand Up @@ -1397,6 +1430,11 @@ static int dst_set_frontend(struct dvb_frontend* fe,
return 0;
}

static int dst_get_tuning_algo(struct dvb_frontend *fe)
{
return dst_algo;
}

static int dst_get_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters *p)
{
struct dst_state *state = fe->demodulator_priv;
Expand Down Expand Up @@ -1476,7 +1514,8 @@ static struct dvb_frontend_ops dst_dvbt_ops = {

.release = dst_release,
.init = dst_init,
.tune = dst_set_frontend,
.tune = dst_tune_frontend,
.set_frontend = dst_set_frontend,
.get_frontend = dst_get_frontend,
.read_status = dst_read_status,
.read_signal_strength = dst_read_signal_strength,
Expand All @@ -1500,7 +1539,8 @@ static struct dvb_frontend_ops dst_dvbs_ops = {

.release = dst_release,
.init = dst_init,
.tune = dst_set_frontend,
.tune = dst_tune_frontend,
.set_frontend = dst_set_frontend,
.get_frontend = dst_get_frontend,
.read_status = dst_read_status,
.read_signal_strength = dst_read_signal_strength,
Expand All @@ -1527,7 +1567,8 @@ static struct dvb_frontend_ops dst_dvbc_ops = {

.release = dst_release,
.init = dst_init,
.tune = dst_set_frontend,
.tune = dst_tune_frontend,
.set_frontend = dst_set_frontend,
.get_frontend = dst_get_frontend,
.read_status = dst_read_status,
.read_signal_strength = dst_read_signal_strength,
Expand All @@ -1548,7 +1589,8 @@ static struct dvb_frontend_ops dst_atsc_ops = {

.release = dst_release,
.init = dst_init,
.tune = dst_set_frontend,
.tune = dst_tune_frontend,
.set_frontend = dst_set_frontend,
.get_frontend = dst_get_frontend,
.read_status = dst_read_status,
.read_signal_strength = dst_read_signal_strength,
Expand Down

0 comments on commit 01e43c9

Please sign in to comment.