2019-05-20 10:19:02 +03:00
/* SPDX-License-Identifier: GPL-2.0-or-later */
2006-01-09 20:25:07 +03:00
/*
Conexant cx24123 / cx24109 - DVB QPSK Satellite demod / tuner driver
2008-09-04 00:12:12 +04:00
Copyright ( C ) 2005 Steven Toth < stoth @ linuxtv . org >
2006-01-09 20:25:07 +03:00
*/
# ifndef CX24123_H
# define CX24123_H
# include <linux/dvb/frontend.h>
2008-10-17 03:28:32 +04:00
struct cx24123_config {
2006-01-09 20:25:07 +03:00
/* the demodulator's i2c address */
u8 demod_address ;
/* Need to set device param for start_dma */
2008-10-17 03:28:32 +04:00
int ( * set_ts_params ) ( struct dvb_frontend * fe , int is_punctured ) ;
2006-09-26 19:30:14 +04:00
/* 0 = LNB voltage normal, 1 = LNB voltage inverted */
int lnb_polarity ;
2008-03-30 04:01:12 +04:00
/* this device has another tuner */
u8 dont_use_pll ;
void ( * agc_callback ) ( struct dvb_frontend * ) ;
2006-01-09 20:25:07 +03:00
} ;
2015-02-18 20:12:42 +03:00
# if IS_REACHABLE(CONFIG_DVB_CX24123)
2008-03-30 04:01:12 +04:00
extern struct dvb_frontend * cx24123_attach ( const struct cx24123_config * config ,
struct i2c_adapter * i2c ) ;
extern struct i2c_adapter * cx24123_get_tuner_i2c_adapter ( struct dvb_frontend * ) ;
2006-08-08 16:10:08 +04:00
# else
2008-03-30 04:01:12 +04:00
static inline struct dvb_frontend * cx24123_attach (
const struct cx24123_config * config , struct i2c_adapter * i2c )
{
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
return NULL ;
}
2015-04-27 10:29:53 +03:00
static inline struct i2c_adapter *
2008-03-30 04:01:12 +04:00
cx24123_get_tuner_i2c_adapter ( struct dvb_frontend * fe )
2006-08-08 16:10:08 +04:00
{
2008-03-30 04:01:12 +04:00
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
2006-08-08 16:10:08 +04:00
return NULL ;
}
2008-10-17 03:28:32 +04:00
# endif
2006-01-09 20:25:07 +03:00
# endif /* CX24123_H */