xref: /openbmc/linux/drivers/media/tuners/mt2131.h (revision ccae7af2bf07dfef69cc2eb6ebc9e1ff15addfbd)
1*ccae7af2SMauro Carvalho Chehab /*
2*ccae7af2SMauro Carvalho Chehab  *  Driver for Microtune MT2131 "QAM/8VSB single chip tuner"
3*ccae7af2SMauro Carvalho Chehab  *
4*ccae7af2SMauro Carvalho Chehab  *  Copyright (c) 2006 Steven Toth <stoth@linuxtv.org>
5*ccae7af2SMauro Carvalho Chehab  *
6*ccae7af2SMauro Carvalho Chehab  *  This program is free software; you can redistribute it and/or modify
7*ccae7af2SMauro Carvalho Chehab  *  it under the terms of the GNU General Public License as published by
8*ccae7af2SMauro Carvalho Chehab  *  the Free Software Foundation; either version 2 of the License, or
9*ccae7af2SMauro Carvalho Chehab  *  (at your option) any later version.
10*ccae7af2SMauro Carvalho Chehab  *
11*ccae7af2SMauro Carvalho Chehab  *  This program is distributed in the hope that it will be useful,
12*ccae7af2SMauro Carvalho Chehab  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13*ccae7af2SMauro Carvalho Chehab  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*ccae7af2SMauro Carvalho Chehab  *
15*ccae7af2SMauro Carvalho Chehab  *  GNU General Public License for more details.
16*ccae7af2SMauro Carvalho Chehab  *
17*ccae7af2SMauro Carvalho Chehab  *  You should have received a copy of the GNU General Public License
18*ccae7af2SMauro Carvalho Chehab  *  along with this program; if not, write to the Free Software
19*ccae7af2SMauro Carvalho Chehab  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20*ccae7af2SMauro Carvalho Chehab  */
21*ccae7af2SMauro Carvalho Chehab 
22*ccae7af2SMauro Carvalho Chehab #ifndef __MT2131_H__
23*ccae7af2SMauro Carvalho Chehab #define __MT2131_H__
24*ccae7af2SMauro Carvalho Chehab 
25*ccae7af2SMauro Carvalho Chehab struct dvb_frontend;
26*ccae7af2SMauro Carvalho Chehab struct i2c_adapter;
27*ccae7af2SMauro Carvalho Chehab 
28*ccae7af2SMauro Carvalho Chehab struct mt2131_config {
29*ccae7af2SMauro Carvalho Chehab 	u8 i2c_address;
30*ccae7af2SMauro Carvalho Chehab 	u8 clock_out; /* 0 = off, 1 = CLK/4, 2 = CLK/2, 3 = CLK/1 */
31*ccae7af2SMauro Carvalho Chehab };
32*ccae7af2SMauro Carvalho Chehab 
33*ccae7af2SMauro Carvalho Chehab #if defined(CONFIG_MEDIA_TUNER_MT2131) || (defined(CONFIG_MEDIA_TUNER_MT2131_MODULE) && defined(MODULE))
34*ccae7af2SMauro Carvalho Chehab extern struct dvb_frontend* mt2131_attach(struct dvb_frontend *fe,
35*ccae7af2SMauro Carvalho Chehab 					  struct i2c_adapter *i2c,
36*ccae7af2SMauro Carvalho Chehab 					  struct mt2131_config *cfg,
37*ccae7af2SMauro Carvalho Chehab 					  u16 if1);
38*ccae7af2SMauro Carvalho Chehab #else
39*ccae7af2SMauro Carvalho Chehab static inline struct dvb_frontend* mt2131_attach(struct dvb_frontend *fe,
40*ccae7af2SMauro Carvalho Chehab 						 struct i2c_adapter *i2c,
41*ccae7af2SMauro Carvalho Chehab 						 struct mt2131_config *cfg,
42*ccae7af2SMauro Carvalho Chehab 						 u16 if1)
43*ccae7af2SMauro Carvalho Chehab {
44*ccae7af2SMauro Carvalho Chehab 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
45*ccae7af2SMauro Carvalho Chehab 	return NULL;
46*ccae7af2SMauro Carvalho Chehab }
47*ccae7af2SMauro Carvalho Chehab #endif /* CONFIG_MEDIA_TUNER_MT2131 */
48*ccae7af2SMauro Carvalho Chehab 
49*ccae7af2SMauro Carvalho Chehab #endif /* __MT2131_H__ */
50*ccae7af2SMauro Carvalho Chehab 
51*ccae7af2SMauro Carvalho Chehab /*
52*ccae7af2SMauro Carvalho Chehab  * Local variables:
53*ccae7af2SMauro Carvalho Chehab  * c-basic-offset: 8
54*ccae7af2SMauro Carvalho Chehab  */
55