1017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky/*
2cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari *  Driver for Quantek QT1010 silicon tuner
3cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari *
4cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari *  Copyright (C) 2006 Antti Palosaari <crope@iki.fi>
5cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari *                     Aapo Tahkola <aet@rasterburn.org>
6017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *
7017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  This program is free software; you can redistribute it and/or modify
8017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  it under the terms of the GNU General Public License as published by
9017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  the Free Software Foundation; either version 2 of the License, or
10017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  (at your option) any later version.
11017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *
12017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  This program is distributed in the hope that it will be useful,
13017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  GNU General Public License for more details.
16017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *
17017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  You should have received a copy of the GNU General Public License
18017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  along with this program; if not, write to the Free Software
19017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky */
21017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky
22cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari#ifndef QT1010_H
23cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari#define QT1010_H
24017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky
25cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari#include "dvb_frontend.h"
26017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky
27cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaaristruct qt1010_config {
28cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari	u8 i2c_address;
29cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari};
30017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky
31cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari/**
32cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari * Attach a qt1010 tuner to the supplied frontend structure.
33cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari *
34cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari * @param fe   frontend to attach to
35cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari * @param i2c  i2c adapter to use
36cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari * @param cfg  tuner hw based configuration
37cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari * @return fe  pointer on success, NULL on failure
38cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari */
39149ef72deeba57078216c9fa678baff392295853Mauro Carvalho Chehab#if defined(CONFIG_MEDIA_TUNER_QT1010) || (defined(CONFIG_MEDIA_TUNER_QT1010_MODULE) && defined(MODULE))
40cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaariextern struct dvb_frontend *qt1010_attach(struct dvb_frontend *fe,
41cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari					  struct i2c_adapter *i2c,
42cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari					  struct qt1010_config *cfg);
43cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari#else
44cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaaristatic inline struct dvb_frontend *qt1010_attach(struct dvb_frontend *fe,
45cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari						 struct i2c_adapter *i2c,
46cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari						 struct qt1010_config *cfg)
476cf2a10180e4039aaad1e4ecba5f2520f157da40Michael Krufky{
48271ddbf702c3a4e6b18f6464180eda0f62efd9a5Harvey Harrison	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
49cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari	return NULL;
506cf2a10180e4039aaad1e4ecba5f2520f157da40Michael Krufky}
51149ef72deeba57078216c9fa678baff392295853Mauro Carvalho Chehab#endif // CONFIG_MEDIA_TUNER_QT1010
52cbdc80ed8f59e204c031b52ea7e44f419029f75bAntti Palosaari
53017cf012570c955c3e1ff025802d7cb46fd1d37bMichael Krufky#endif
54