123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- /*
- * descriptions + helper functions for simple dvb plls.
- */
- #ifndef __DVB_PLL_H__
- #define __DVB_PLL_H__
- #include <linux/i2c.h>
- #include "dvb_frontend.h"
- struct dvb_pll_desc {
- char *name;
- u32 min;
- u32 max;
- u32 iffreq;
- void (*setbw)(u8 *buf, u32 freq, int bandwidth);
- u8 *initdata;
- u8 *sleepdata;
- int count;
- struct {
- u32 limit;
- u32 stepsize;
- u8 config;
- u8 cb;
- } entries[12];
- };
- extern struct dvb_pll_desc dvb_pll_thomson_dtt7579;
- extern struct dvb_pll_desc dvb_pll_thomson_dtt759x;
- extern struct dvb_pll_desc dvb_pll_thomson_dtt7610;
- extern struct dvb_pll_desc dvb_pll_lg_z201;
- extern struct dvb_pll_desc dvb_pll_microtune_4042;
- extern struct dvb_pll_desc dvb_pll_thomson_dtt761x;
- extern struct dvb_pll_desc dvb_pll_unknown_1;
- extern struct dvb_pll_desc dvb_pll_tua6010xs;
- extern struct dvb_pll_desc dvb_pll_env57h1xd5;
- extern struct dvb_pll_desc dvb_pll_tua6034;
- extern struct dvb_pll_desc dvb_pll_lg_tdvs_h06xf;
- extern struct dvb_pll_desc dvb_pll_tda665x;
- extern struct dvb_pll_desc dvb_pll_fmd1216me;
- extern struct dvb_pll_desc dvb_pll_tded4;
- extern struct dvb_pll_desc dvb_pll_tuv1236d;
- extern struct dvb_pll_desc dvb_pll_tdhu2;
- extern struct dvb_pll_desc dvb_pll_samsung_tbmv;
- extern struct dvb_pll_desc dvb_pll_philips_sd1878_tda8261;
- extern struct dvb_pll_desc dvb_pll_philips_td1316;
- extern struct dvb_pll_desc dvb_pll_thomson_fe6600;
- extern struct dvb_pll_desc dvb_pll_opera1;
- extern int dvb_pll_configure(struct dvb_pll_desc *desc, u8 *buf,
- u32 freq, int bandwidth);
- /**
- * Attach a dvb-pll to the supplied frontend structure.
- *
- * @param fe Frontend to attach to.
- * @param pll_addr i2c address of the PLL (if used).
- * @param i2c i2c adapter to use (set to NULL if not used).
- * @param desc dvb_pll_desc to use.
- * @return Frontend pointer on success, NULL on failure
- */
- #if defined(CONFIG_DVB_PLL) || (defined(CONFIG_DVB_PLL_MODULE) && defined(MODULE))
- extern struct dvb_frontend *dvb_pll_attach(struct dvb_frontend *fe,
- int pll_addr,
- struct i2c_adapter *i2c,
- struct dvb_pll_desc *desc);
- #else
- static inline struct dvb_frontend *dvb_pll_attach(struct dvb_frontend *fe,
- int pll_addr,
- struct i2c_adapter *i2c,
- struct dvb_pll_desc *desc)
- {
- printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
- return NULL;
- }
- #endif
- #endif
|