diff options
author | Steven Toth <stoth@hauppauge.com> | 2007-12-17 23:55:51 -0500 |
---|---|---|
committer | Steven Toth <stoth@hauppauge.com> | 2007-12-17 23:55:51 -0500 |
commit | d658ee4bd13e471ac5147cab0c466b9ff13aaa81 (patch) | |
tree | b495889e12f04d1b90b08d7a39ecdd53f4b9945c /linux/drivers/media/dvb/frontends/xc5000.h | |
parent | 3842afc175a16c86d1f3b719f07a3bfddf3c7815 (diff) | |
download | mediapointer-dvb-s2-d658ee4bd13e471ac5147cab0c466b9ff13aaa81.tar.gz mediapointer-dvb-s2-d658ee4bd13e471ac5147cab0c466b9ff13aaa81.tar.bz2 |
Add support for the Xceive xc5000 silicon tuner.
From: Steven Toth <stoth@hauppauge.com>
This is an all formats tuner, QAM, ATSC, DVB-T and others.
Only ATSC and QAM have been tested.
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Diffstat (limited to 'linux/drivers/media/dvb/frontends/xc5000.h')
-rw-r--r-- | linux/drivers/media/dvb/frontends/xc5000.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/linux/drivers/media/dvb/frontends/xc5000.h b/linux/drivers/media/dvb/frontends/xc5000.h new file mode 100644 index 000000000..ce5a3212f --- /dev/null +++ b/linux/drivers/media/dvb/frontends/xc5000.h @@ -0,0 +1,51 @@ +/* + * Driver for Xceive XC5000 "QAM/8VSB single chip tuner" + * + * Copyright (c) 2007 Steven Toth <stoth@hauppauge.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __XC5000_H__ +#define __XC5000_H__ + +#include <linux/firmware.h> + +struct dvb_frontend; +struct i2c_adapter; + +struct xc5000_config { + u8 i2c_address; + u32 if_frequency; + int (*request_firmware)(struct dvb_frontend* fe, const struct firmware **fw, char* name); + int (*tuner_reset)(struct dvb_frontend* fe); +}; + +#if defined(CONFIG_DVB_TUNER_XC5000) || defined(CONFIG_DVB_TUNER_XC5000_MODULE) +extern struct dvb_frontend* xc5000_attach(struct dvb_frontend *fe, + struct i2c_adapter *i2c, + struct xc5000_config *cfg); +#else +static inline struct dvb_frontend* xc5000_attach(struct dvb_frontend *fe, + struct i2c_adapter *i2c, + struct xc5000_config *cfg); +{ + printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__); + return NULL; +} +#endif // CONFIG_DVB_TUNER_XC5000 + +#endif // __XC5000_H__ |