]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - drivers/staging/media/cxd2099/cxd2099.h
Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa...
[karo-tx-linux.git] / drivers / staging / media / cxd2099 / cxd2099.h
1 /*
2  * cxd2099.h: Driver for the CXD2099AR Common Interface Controller
3  *
4  * Copyright (C) 2010-2011 Digital Devices GmbH
5  *
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * version 2 only, as published by the Free Software Foundation.
10  *
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21  * 02110-1301, USA
22  * Or, point your browser to http://www.gnu.org/copyleft/gpl.html
23  */
24
25 #ifndef _CXD2099_H_
26 #define _CXD2099_H_
27
28 #include <dvb_ca_en50221.h>
29
30 struct cxd2099_cfg {
31         u32 bitrate;
32         u8  adr;
33         u8  polarity;
34         u8  clock_mode;
35
36         u32 max_i2c;
37 };
38
39 #if defined(CONFIG_DVB_CXD2099) || \
40         (defined(CONFIG_DVB_CXD2099_MODULE) && defined(MODULE))
41 struct dvb_ca_en50221 *cxd2099_attach(struct cxd2099_cfg *cfg,
42                                       void *priv, struct i2c_adapter *i2c);
43 #else
44
45 static inline struct dvb_ca_en50221 *cxd2099_attach(struct cxd2099_cfg *cfg,
46                                         void *priv, struct i2c_adapter *i2c)
47 {
48         dev_warn(&i2c->dev, "%s: driver disabled by Kconfig\n", __func__);
49         return NULL;
50 }
51 #endif
52
53 #endif