V4L/DVB (6952): Add code for autoloading em28xx-alsa, if needed
[linux-block.git] / drivers / media / video / tda8290.h
CommitLineData
910bb3e3
MK
1/*
2 This program is free software; you can redistribute it and/or modify
3 it under the terms of the GNU General Public License as published by
4 the Free Software Foundation; either version 2 of the License, or
5 (at your option) any later version.
6
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
11
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
15*/
16
17#ifndef __TDA8290_H__
18#define __TDA8290_H__
19
20#include <linux/i2c.h>
ab166050
MK
21#include "dvb_frontend.h"
22
2dcf84b3 23struct tda829x_config {
ab166050
MK
24 unsigned int *lna_cfg;
25 int (*tuner_callback) (void *dev, int command, int arg);
c9076279
MK
26
27 unsigned int probe_tuner:1;
28#define TDA829X_PROBE_TUNER 0
29#define TDA829X_DONT_PROBE 1
ab166050 30};
910bb3e3 31
ca805d57 32#if defined(CONFIG_TUNER_TDA8290) || (defined(CONFIG_TUNER_TDA8290_MODULE) && defined(MODULE))
ab166050 33extern int tda829x_probe(struct i2c_adapter *i2c_adap, u8 i2c_addr);
ca805d57 34
ab166050
MK
35extern struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe,
36 struct i2c_adapter *i2c_adap,
37 u8 i2c_addr,
38 struct tda829x_config *cfg);
ca805d57 39#else
ab166050 40static inline int tda829x_probe(struct i2c_adapter *i2c_adap, u8 i2c_addr)
ca805d57 41{
746d9732 42 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __FUNCTION__);
ca805d57
MK
43 return -EINVAL;
44}
45
ab166050
MK
46static inline struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe,
47 struct i2c_adapter *i2c_adap,
48 u8 i2c_addr,
49 struct tda829x_config *cfg)
5bea1cd3
MK
50{
51 printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n",
52 __FUNCTION__);
ab166050 53 return NULL;
5bea1cd3 54}
ca805d57 55#endif
910bb3e3
MK
56
57#endif /* __TDA8290_H__ */