2010-09-28 03:52:43 +04:00
/*
* Fujitsu mb86a20s driver
*
* Copyright ( C ) 2010 Mauro Carvalho Chehab < mchehab @ redhat . com >
*
* 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 version 2.
*
* 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 .
*/
# ifndef MB86A20S_H
# define MB86A20S_H
2013-03-21 23:11:54 +04:00
# include <linux/kconfig.h>
2010-09-28 03:52:43 +04:00
# include <linux/dvb/frontend.h>
/**
* struct mb86a20s_config - Define the per - device attributes of the frontend
*
2013-03-04 15:15:49 +04:00
* @ fclk : Clock frequency . If zero , assumes the default
* ( 32.57142 Mhz )
2010-09-28 03:52:43 +04:00
* @ demod_address : the demodulator ' s i2c address
2013-03-04 15:15:49 +04:00
* @ is_serial : if true , TS is serial . Otherwise , TS is parallel
2010-09-28 03:52:43 +04:00
*/
struct mb86a20s_config {
2013-03-04 15:15:49 +04:00
u32 fclk ;
u8 demod_address ;
bool is_serial ;
2010-09-28 03:52:43 +04:00
} ;
2013-03-21 23:11:54 +04:00
# if IS_ENABLED(CONFIG_DVB_MB86A20S)
2010-09-28 03:52:43 +04:00
extern struct dvb_frontend * mb86a20s_attach ( const struct mb86a20s_config * config ,
struct i2c_adapter * i2c ) ;
extern struct i2c_adapter * mb86a20s_get_tuner_i2c_adapter ( struct dvb_frontend * ) ;
# else
static inline struct dvb_frontend * mb86a20s_attach (
const struct mb86a20s_config * config , struct i2c_adapter * i2c )
{
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
return NULL ;
}
static struct i2c_adapter *
mb86a20s_get_tuner_i2c_adapter ( struct dvb_frontend * fe )
{
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
return NULL ;
}
# endif
# endif /* MB86A20S */