blob: 8f7a31481744a9c053489a3ee0697944c1c0ea08 [file] [log] [blame]
rjw1f884582022-01-06 17:20:42 +08001/*
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#define STV0367_ICSPEED_53125 53125000
29#define STV0367_ICSPEED_58000 58000000
30
31struct stv0367_config {
32 u8 demod_address;
33 u32 xtal;
34 u32 if_khz;/*4500*/
35 int if_iq_mode;
36 int ts_mode;
37 int clk_pol;
38};
39
40#if IS_REACHABLE(CONFIG_DVB_STV0367)
41extern struct
42dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
43 struct i2c_adapter *i2c);
44extern struct
45dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
46 struct i2c_adapter *i2c);
47extern struct
48dvb_frontend *stv0367ddb_attach(const struct stv0367_config *config,
49 struct i2c_adapter *i2c);
50#else
51static inline struct
52dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
53 struct i2c_adapter *i2c)
54{
55 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
56 return NULL;
57}
58static inline struct
59dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
60 struct i2c_adapter *i2c)
61{
62 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
63 return NULL;
64}
65static inline struct
66dvb_frontend *stv0367ddb_attach(const struct stv0367_config *config,
67 struct i2c_adapter *i2c)
68{
69 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
70 return NULL;
71}
72#endif
73
74#endif