2011-08-01 08:07:39 +04:00
/*
* NXP TDA10071 + Conexant CX24118A DVB - S / S2 demodulator + tuner driver
*
* Copyright ( C ) 2011 Antti Palosaari < crope @ iki . fi >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License along
* with this program ; if not , write to the Free Software Foundation , Inc . ,
* 51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 USA .
*/
# ifndef TDA10071_H
# define TDA10071_H
2013-03-21 23:11:54 +04:00
# include <linux/kconfig.h>
2011-08-01 08:07:39 +04:00
# include <linux/dvb/frontend.h>
struct tda10071_config {
/* Demodulator I2C address.
* Default : none , must set
* Values : 0x55 ,
*/
2012-12-17 02:37:11 +04:00
u8 demod_i2c_addr ;
2011-08-01 08:07:39 +04:00
2012-12-16 20:24:59 +04:00
/* Tuner I2C address.
2012-12-17 02:37:11 +04:00
* Default : none , must set
2012-12-16 20:24:59 +04:00
* Values : 0x14 , 0x54 , . . .
*/
u8 tuner_i2c_addr ;
2011-08-01 08:07:39 +04:00
/* Max bytes I2C provider can write at once.
* Note : Buffer is taken from the stack currently !
* Default : none , must set
* Values :
*/
u16 i2c_wr_max ;
/* TS output mode.
* Default : TDA10071_TS_SERIAL
* Values :
*/
# define TDA10071_TS_SERIAL 0
# define TDA10071_TS_PARALLEL 1
u8 ts_mode ;
/* Input spectrum inversion.
* Default : 0
* Values : 0 , 1
*/
bool spec_inv ;
/* Xtal frequency Hz
* Default : none , must set
* Values :
*/
u32 xtal ;
/* PLL multiplier.
* Default : none , must set
* Values :
*/
u8 pll_multiplier ;
} ;
2015-02-18 20:12:42 +03:00
# if IS_REACHABLE(CONFIG_DVB_TDA10071)
2011-08-01 08:07:39 +04:00
extern struct dvb_frontend * tda10071_attach (
const struct tda10071_config * config , struct i2c_adapter * i2c ) ;
# else
static inline struct dvb_frontend * tda10071_attach (
const struct tda10071_config * config , struct i2c_adapter * i2c )
{
2014-02-11 22:13:46 +04:00
dev_warn ( & i2c - > dev , " %s: driver disabled by Kconfig \n " , __func__ ) ;
2011-08-01 08:07:39 +04:00
return NULL ;
}
# endif
# endif /* TDA10071_H */