tda10086.h 1013 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. Driver for Philips tda10086 DVBS Frontend
  4. (c) 2006 Andrew de Quincey
  5. */
  6. #ifndef TDA10086_H
  7. #define TDA10086_H
  8. #include <linux/dvb/frontend.h>
  9. #include <linux/firmware.h>
  10. enum tda10086_xtal {
  11. TDA10086_XTAL_16M,
  12. TDA10086_XTAL_4M
  13. };
  14. struct tda10086_config
  15. {
  16. /* the demodulator's i2c address */
  17. u8 demod_address;
  18. /* does the "inversion" need inverted? */
  19. u8 invert;
  20. /* do we need the diseqc signal with carrier? */
  21. u8 diseqc_tone;
  22. /* frequency of the reference xtal */
  23. enum tda10086_xtal xtal_freq;
  24. };
  25. #if IS_REACHABLE(CONFIG_DVB_TDA10086)
  26. extern struct dvb_frontend* tda10086_attach(const struct tda10086_config* config,
  27. struct i2c_adapter* i2c);
  28. #else
  29. static inline struct dvb_frontend* tda10086_attach(const struct tda10086_config* config,
  30. struct i2c_adapter* i2c)
  31. {
  32. printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  33. return NULL;
  34. }
  35. #endif /* CONFIG_DVB_TDA10086 */
  36. #endif /* TDA10086_H */