diff options
author | Yeasah Pell <yeasah@schwide.com> | 2006-08-08 15:48:08 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-09-26 11:53:38 -0300 |
commit | 174ff219b7e3212f701f70c71860894716b0045b (patch) | |
tree | 41f34cae5fa75d19c89238b9ad66a786543be58d /drivers | |
parent | 18c053b3c5414c385f4a67134fd963b98881aa0d (diff) |
V4L/DVB (4435): HW algo
Change this card to use HW ALGO tuning
Signed-off-by: Yeasah Pell <yeasah@schwide.com>
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/dvb/frontends/cx24123.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/cx24123.c b/drivers/media/dvb/frontends/cx24123.c index 815f0aaf1d4..6fd44a125b1 100644 --- a/drivers/media/dvb/frontends/cx24123.c +++ b/drivers/media/dvb/frontends/cx24123.c @@ -903,6 +903,29 @@ static int cx24123_set_tone(struct dvb_frontend* fe, fe_sec_tone_mode_t tone) return 0; } +static int cx24123_tune(struct dvb_frontend* fe, + struct dvb_frontend_parameters* params, + unsigned int mode_flags, + int *delay, + fe_status_t *status) +{ + int retval = 0; + + if (params != NULL) + retval = cx24123_set_frontend(fe, params); + + if (!(mode_flags & FE_TUNE_MODE_ONESHOT)) + cx24123_read_status(fe, status); + *delay = HZ/10; + + return retval; +} + +static int cx24123_get_algo(struct dvb_frontend *fe) +{ + return 1; //FE_ALGO_HW +} + static void cx24123_release(struct dvb_frontend* fe) { struct cx24123_state* state = fe->demodulator_priv; @@ -986,6 +1009,8 @@ static struct dvb_frontend_ops cx24123_ops = { .diseqc_send_burst = cx24123_diseqc_send_burst, .set_tone = cx24123_set_tone, .set_voltage = cx24123_set_voltage, + .tune = cx24123_tune, + .get_frontend_algo = cx24123_get_algo, }; module_param(debug, int, 0644); |