2019-05-27 08:55:06 +02:00
/* SPDX-License-Identifier: GPL-2.0-or-later */
2006-04-17 13:22:15 -03:00
/*
* Driver for Microtune MT2060 " Single chip dual conversion broadband tuner "
*
* Copyright ( c ) 2006 Olivier DANET < odanet @ caramail . com >
*/
# ifndef MT2060_H
# define MT2060_H
2006-08-08 15:48:10 -03:00
struct dvb_frontend ;
struct i2c_adapter ;
2006-04-17 13:22:15 -03:00
2015-07-26 18:45:05 -03:00
/*
* I2C address
* 0x60 , . . .
*/
/**
* struct mt2060_platform_data - Platform data for the mt2060 driver
* @ clock_out : Clock output setting . 0 = off , 1 = CLK / 4 , 2 = CLK / 2 , 3 = CLK / 1.
* @ if1 : First IF used [ MHz ] . 0 defaults to 1220.
2015-07-26 17:30:07 -03:00
* @ i2c_write_max : Maximum number of bytes I2C adapter can write at once .
* 0 defaults to maximum .
2015-07-26 18:45:05 -03:00
* @ dvb_frontend : DVB frontend .
*/
struct mt2060_platform_data {
u8 clock_out ;
u16 if1 ;
2015-07-26 17:30:07 -03:00
unsigned int i2c_write_max : 5 ;
2015-07-26 18:45:05 -03:00
struct dvb_frontend * dvb_frontend ;
} ;
/* configuration struct for mt2060_attach() */
2006-04-17 13:22:15 -03:00
struct mt2060_config {
u8 i2c_address ;
2006-09-19 12:51:56 -03:00
u8 clock_out ; /* 0 = off, 1 = CLK/4, 2 = CLK/2, 3 = CLK/1 */
2006-04-17 13:22:15 -03:00
} ;
2015-02-18 14:12:42 -03:00
# if IS_REACHABLE(CONFIG_MEDIA_TUNER_MT2060)
2006-09-19 12:51:40 -03:00
extern struct dvb_frontend * mt2060_attach ( struct dvb_frontend * fe , struct i2c_adapter * i2c , struct mt2060_config * cfg , u16 if1 ) ;
2006-10-14 16:21:02 -03:00
# else
static inline struct dvb_frontend * mt2060_attach ( struct dvb_frontend * fe , struct i2c_adapter * i2c , struct mt2060_config * cfg , u16 if1 )
{
2008-04-08 23:20:00 -03:00
printk ( KERN_WARNING " %s: driver disabled by Kconfig \n " , __func__ ) ;
2006-10-14 16:21:02 -03:00
return NULL ;
}
2008-04-29 21:38:46 -03:00
# endif // CONFIG_MEDIA_TUNER_MT2060
2006-04-17 13:22:15 -03:00
# endif