mt2063_cfg.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. static unsigned int mt2063_setTune(struct dvb_frontend *fe, UData_t f_in,
  2. UData_t bw_in,
  3. enum MTTune_atv_standard tv_type)
  4. {
  5. //return (int)MT_Tune_atv(h, f_in, bw_in, tv_type);
  6. struct dvb_frontend_ops *frontend_ops = NULL;
  7. struct dvb_tuner_ops *tuner_ops = NULL;
  8. struct tuner_state t_state;
  9. struct mt2063_state *mt2063State = fe->tuner_priv;
  10. int err = 0;
  11. t_state.frequency = f_in;
  12. t_state.bandwidth = bw_in;
  13. mt2063State->tv_type = tv_type;
  14. if (&fe->ops)
  15. frontend_ops = &fe->ops;
  16. if (&frontend_ops->tuner_ops)
  17. tuner_ops = &frontend_ops->tuner_ops;
  18. if (tuner_ops->set_state) {
  19. if ((err =
  20. tuner_ops->set_state(fe, DVBFE_TUNER_FREQUENCY,
  21. &t_state)) < 0) {
  22. printk("%s: Invalid parameter\n", __func__);
  23. return err;
  24. }
  25. }
  26. return err;
  27. }
  28. static unsigned int mt2063_lockStatus(struct dvb_frontend *fe)
  29. {
  30. struct dvb_frontend_ops *frontend_ops = &fe->ops;
  31. struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
  32. struct tuner_state t_state;
  33. int err = 0;
  34. if (&fe->ops)
  35. frontend_ops = &fe->ops;
  36. if (&frontend_ops->tuner_ops)
  37. tuner_ops = &frontend_ops->tuner_ops;
  38. if (tuner_ops->get_state) {
  39. if ((err =
  40. tuner_ops->get_state(fe, DVBFE_TUNER_REFCLOCK,
  41. &t_state)) < 0) {
  42. printk("%s: Invalid parameter\n", __func__);
  43. return err;
  44. }
  45. }
  46. return err;
  47. }
  48. static unsigned int tuner_MT2063_Open(struct dvb_frontend *fe)
  49. {
  50. struct dvb_frontend_ops *frontend_ops = &fe->ops;
  51. struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
  52. struct tuner_state t_state;
  53. int err = 0;
  54. if (&fe->ops)
  55. frontend_ops = &fe->ops;
  56. if (&frontend_ops->tuner_ops)
  57. tuner_ops = &frontend_ops->tuner_ops;
  58. if (tuner_ops->set_state) {
  59. if ((err =
  60. tuner_ops->set_state(fe, DVBFE_TUNER_OPEN,
  61. &t_state)) < 0) {
  62. printk("%s: Invalid parameter\n", __func__);
  63. return err;
  64. }
  65. }
  66. return err;
  67. }
  68. static unsigned int tuner_MT2063_SoftwareShutdown(struct dvb_frontend *fe)
  69. {
  70. struct dvb_frontend_ops *frontend_ops = &fe->ops;
  71. struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
  72. struct tuner_state t_state;
  73. int err = 0;
  74. if (&fe->ops)
  75. frontend_ops = &fe->ops;
  76. if (&frontend_ops->tuner_ops)
  77. tuner_ops = &frontend_ops->tuner_ops;
  78. if (tuner_ops->set_state) {
  79. if ((err =
  80. tuner_ops->set_state(fe, DVBFE_TUNER_SOFTWARE_SHUTDOWN,
  81. &t_state)) < 0) {
  82. printk("%s: Invalid parameter\n", __func__);
  83. return err;
  84. }
  85. }
  86. return err;
  87. }
  88. static unsigned int tuner_MT2063_ClearPowerMaskBits(struct dvb_frontend *fe)
  89. {
  90. struct dvb_frontend_ops *frontend_ops = &fe->ops;
  91. struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
  92. struct tuner_state t_state;
  93. int err = 0;
  94. if (&fe->ops)
  95. frontend_ops = &fe->ops;
  96. if (&frontend_ops->tuner_ops)
  97. tuner_ops = &frontend_ops->tuner_ops;
  98. if (tuner_ops->set_state) {
  99. if ((err =
  100. tuner_ops->set_state(fe, DVBFE_TUNER_CLEAR_POWER_MASKBITS,
  101. &t_state)) < 0) {
  102. printk("%s: Invalid parameter\n", __func__);
  103. return err;
  104. }
  105. }
  106. return err;
  107. }