Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso...
[linux-2.6-block.git] / drivers / media / dvb-frontends / stv6110.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * stv6110.h
4  *
5  * Driver for ST STV6110 satellite tuner IC.
6  *
7  * Copyright (C) 2009 NetUP Inc.
8  * Copyright (C) 2009 Igor M. Liplianin <liplianin@netup.ru>
9  */
10
11 #ifndef __DVB_STV6110_H__
12 #define __DVB_STV6110_H__
13
14 #include <linux/i2c.h>
15 #include <media/dvb_frontend.h>
16
17 /* registers */
18 #define RSTV6110_CTRL1          0
19 #define RSTV6110_CTRL2          1
20 #define RSTV6110_TUNING1        2
21 #define RSTV6110_TUNING2        3
22 #define RSTV6110_CTRL3          4
23 #define RSTV6110_STAT1          5
24 #define RSTV6110_STAT2          6
25 #define RSTV6110_STAT3          7
26
27 struct stv6110_config {
28         u8 i2c_address;
29         u32 mclk;
30         u8 gain;
31         u8 clk_div;     /* divisor value for the output clock */
32 };
33
34 #if IS_REACHABLE(CONFIG_DVB_STV6110)
35 extern struct dvb_frontend *stv6110_attach(struct dvb_frontend *fe,
36                                         const struct stv6110_config *config,
37                                         struct i2c_adapter *i2c);
38 #else
39 static inline struct dvb_frontend *stv6110_attach(struct dvb_frontend *fe,
40                                         const struct stv6110_config *config,
41                                         struct i2c_adapter *i2c)
42 {
43         printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
44         return NULL;
45 }
46 #endif
47
48 #endif