2019-05-20 09:19:02 +02:00
/* SPDX-License-Identifier: GPL-2.0-or-later */
2008-09-04 01:14:43 -03:00
/*
Conexant cx24116 / cx24118 - DVBS / S2 Satellite demod / tuner driver
Copyright ( C ) 2006 Steven Toth < stoth @ linuxtv . com >
*/
# ifndef CX24116_H
# define CX24116_H
# include <linux/dvb/frontend.h>
2008-10-16 20:22:01 -03:00
struct cx24116_config {
2008-09-04 01:14:43 -03:00
/* the demodulator's i2c address */
u8 demod_address ;
/* Need to set device param for start_dma */
2008-10-16 20:22:01 -03:00
int ( * set_ts_params ) ( struct dvb_frontend * fe , int is_punctured ) ;
2008-09-04 01:14:43 -03:00
/* Need to reset device during firmware loading */
2008-10-16 20:22:01 -03:00
int ( * reset_device ) ( struct dvb_frontend * fe ) ;
2008-09-09 13:57:47 -03:00
/* Need to set MPEG parameters */
u8 mpg_clk_pos_pol : 0x02 ;
2011-04-27 21:03:07 -03:00
/* max bytes I2C provider can write at once */
u16 i2c_wr_max ;
2008-09-04 01:14:43 -03:00
} ;
2015-02-18 14:12:42 -03:00
# if IS_REACHABLE(CONFIG_DVB_CX24116)
2008-10-16 20:22:01 -03:00
extern struct dvb_frontend * cx24116_attach (
const struct cx24116_config * config ,
struct i2c_adapter * i2c ) ;
2008-09-04 01:14:43 -03:00
# else
2008-10-16 20:22:01 -03:00
static inline struct dvb_frontend * cx24116_attach (
const struct cx24116_config * config ,
struct i2c_adapter * i2c )
2008-09-04 01:14:43 -03:00
{
2008-10-16 20:20:51 -03:00
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
2008-09-04 01:14:43 -03:00
return NULL ;
}
2008-10-16 20:22:01 -03:00
# endif
2008-09-04 01:14:43 -03:00
# endif /* CX24116_H */