Lines Matching refs:fe

62 static int tda8290_i2c_bridge(struct dvb_frontend *fe, int close)  in tda8290_i2c_bridge()  argument
64 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_i2c_bridge()
83 static int tda8295_i2c_bridge(struct dvb_frontend *fe, int close) in tda8295_i2c_bridge() argument
85 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_i2c_bridge()
115 static void set_audio(struct dvb_frontend *fe, in set_audio() argument
118 struct tda8290_priv *priv = fe->analog_demod_priv; in set_audio()
176 static void tda8290_set_params(struct dvb_frontend *fe, in tda8290_set_params() argument
179 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_set_params()
203 set_audio(fe, params); in tda8290_set_params()
237 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_set_params()
238 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda8290_set_params()
240 if (fe->ops.tuner_ops.set_analog_params) in tda8290_set_params()
241 fe->ops.tuner_ops.set_analog_params(fe, params); in tda8290_set_params()
274 priv->cfg.agcf(fe); in tda8290_set_params()
307 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_set_params()
308 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda8290_set_params()
314 static void tda8295_power(struct dvb_frontend *fe, int enable) in tda8295_power() argument
316 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_power()
329 static void tda8295_set_easy_mode(struct dvb_frontend *fe, int enable) in tda8295_set_easy_mode() argument
331 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_set_easy_mode()
344 static void tda8295_set_video_std(struct dvb_frontend *fe) in tda8295_set_video_std() argument
346 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_set_video_std()
351 tda8295_set_easy_mode(fe, 1); in tda8295_set_video_std()
353 tda8295_set_easy_mode(fe, 0); in tda8295_set_video_std()
358 static void tda8295_agc1_out(struct dvb_frontend *fe, int enable) in tda8295_agc1_out() argument
360 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_agc1_out()
373 static void tda8295_agc2_out(struct dvb_frontend *fe, int enable) in tda8295_agc2_out() argument
375 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_agc2_out()
394 static int tda8295_has_signal(struct dvb_frontend *fe, u16 *signal) in tda8295_has_signal() argument
396 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_has_signal()
408 static void tda8295_set_params(struct dvb_frontend *fe, in tda8295_set_params() argument
411 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_set_params()
415 set_audio(fe, params); in tda8295_set_params()
419 tda8295_power(fe, 1); in tda8295_set_params()
420 tda8295_agc1_out(fe, 1); in tda8295_set_params()
425 tda8295_set_video_std(fe); in tda8295_set_params()
431 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8295_set_params()
432 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda8295_set_params()
434 if (fe->ops.tuner_ops.set_analog_params) in tda8295_set_params()
435 fe->ops.tuner_ops.set_analog_params(fe, params); in tda8295_set_params()
438 priv->cfg.agcf(fe); in tda8295_set_params()
440 tda8295_has_signal(fe, &signal); in tda8295_set_params()
446 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8295_set_params()
447 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda8295_set_params()
452 static int tda8290_has_signal(struct dvb_frontend *fe, u16 *signal) in tda8290_has_signal() argument
454 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_has_signal()
467 static void tda8290_standby(struct dvb_frontend *fe) in tda8290_standby() argument
469 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_standby()
476 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_standby()
477 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda8290_standby()
481 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_standby()
482 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda8290_standby()
487 static void tda8295_standby(struct dvb_frontend *fe) in tda8295_standby() argument
489 tda8295_agc1_out(fe, 0); /* Put AGC in tri-state */ in tda8295_standby()
491 tda8295_power(fe, 0); in tda8295_standby()
494 static void tda8290_init_if(struct dvb_frontend *fe) in tda8290_init_if() argument
496 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_init_if()
510 static void tda8295_init_if(struct dvb_frontend *fe) in tda8295_init_if() argument
512 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8295_init_if()
522 tda8295_power(fe, 1); in tda8295_init_if()
524 tda8295_set_easy_mode(fe, 0); in tda8295_init_if()
525 tda8295_set_video_std(fe); in tda8295_init_if()
535 tda8295_agc1_out(fe, 0); in tda8295_init_if()
536 tda8295_agc2_out(fe, 0); in tda8295_init_if()
539 static void tda8290_init_tuner(struct dvb_frontend *fe) in tda8290_init_tuner() argument
541 struct tda8290_priv *priv = fe->analog_demod_priv; in tda8290_init_tuner()
551 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_init_tuner()
552 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda8290_init_tuner()
554 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda8290_init_tuner()
555 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda8290_init_tuner()
560 static void tda829x_release(struct dvb_frontend *fe) in tda829x_release() argument
562 struct tda8290_priv *priv = fe->analog_demod_priv; in tda829x_release()
567 if (fe->ops.tuner_ops.release) in tda829x_release()
568 fe->ops.tuner_ops.release(fe); in tda829x_release()
570 kfree(fe->analog_demod_priv); in tda829x_release()
571 fe->analog_demod_priv = NULL; in tda829x_release()
578 static int tda829x_find_tuner(struct dvb_frontend *fe) in tda829x_find_tuner() argument
580 struct tda8290_priv *priv = fe->analog_demod_priv; in tda829x_find_tuner()
586 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda829x_find_tuner()
587 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda829x_find_tuner()
605 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda829x_find_tuner()
606 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda829x_find_tuner()
629 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda829x_find_tuner()
630 fe->ops.analog_ops.i2c_gate_ctrl(fe, 1); in tda829x_find_tuner()
635 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda829x_find_tuner()
636 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda829x_find_tuner()
644 dvb_attach(tda18271_attach, fe, priv->tda827x_addr, in tda829x_find_tuner()
652 dvb_attach(tda827x_attach, fe, priv->tda827x_addr, in tda829x_find_tuner()
656 if (fe->ops.tuner_ops.init) in tda829x_find_tuner()
657 fe->ops.tuner_ops.init(fe); in tda829x_find_tuner()
659 if (fe->ops.tuner_ops.sleep) in tda829x_find_tuner()
660 fe->ops.tuner_ops.sleep(fe); in tda829x_find_tuner()
662 if (fe->ops.analog_ops.i2c_gate_ctrl) in tda829x_find_tuner()
663 fe->ops.analog_ops.i2c_gate_ctrl(fe, 0); in tda829x_find_tuner()
740 struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe, in tda829x_attach() argument
750 fe->analog_demod_priv = priv; in tda829x_attach()
762 memcpy(&fe->ops.analog_ops, &tda8290_ops, in tda829x_attach()
768 memcpy(&fe->ops.analog_ops, &tda8295_ops, in tda829x_attach()
773 fe->ops.analog_ops.i2c_gate_ctrl = NULL; in tda829x_attach()
776 tda8295_power(fe, 1); in tda829x_attach()
777 if (tda829x_find_tuner(fe) < 0) in tda829x_attach()
811 fe->ops.analog_ops.info.name = name; in tda829x_attach()
815 tda8290_init_tuner(fe); in tda829x_attach()
816 tda8290_init_if(fe); in tda829x_attach()
818 tda8295_init_if(fe); in tda829x_attach()
820 return fe; in tda829x_attach()
823 memset(&fe->ops.analog_ops, 0, sizeof(struct analog_demod_ops)); in tda829x_attach()
825 tda829x_release(fe); in tda829x_attach()