xref: /linux/drivers/media/dvb-frontends/stv0367.h (revision e5c86679d5e864947a52fb31e45a425dea3e7fa9)
1 /*
2  * stv0367.h
3  *
4  * Driver for ST STV0367 DVB-T & DVB-C demodulator IC.
5  *
6  * Copyright (C) ST Microelectronics.
7  * Copyright (C) 2010,2011 NetUP Inc.
8  * Copyright (C) 2010,2011 Igor M. Liplianin <liplianin@netup.ru>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  *
19  * GNU General Public License for more details.
20  */
21 
22 #ifndef STV0367_H
23 #define STV0367_H
24 
25 #include <linux/dvb/frontend.h>
26 #include "dvb_frontend.h"
27 
28 struct stv0367_config {
29 	u8 demod_address;
30 	u32 xtal;
31 	u32 if_khz;/*4500*/
32 	int if_iq_mode;
33 	int ts_mode;
34 	int clk_pol;
35 };
36 
37 #if IS_REACHABLE(CONFIG_DVB_STV0367)
38 extern struct
39 dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
40 					struct i2c_adapter *i2c);
41 extern struct
42 dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
43 					struct i2c_adapter *i2c);
44 #else
45 static inline struct
46 dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
47 					struct i2c_adapter *i2c)
48 {
49 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
50 	return NULL;
51 }
52 static inline struct
53 dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
54 					struct i2c_adapter *i2c)
55 {
56 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
57 	return NULL;
58 }
59 #endif
60 
61 #endif
62