2019-05-27 08:55:06 +02:00
/* SPDX-License-Identifier: GPL-2.0-or-later */
2013-11-29 16:19:50 -03:00
/*
* Panasonic MN88472 DVB - T / T2 / C demodulator driver
*
* Copyright ( C ) 2013 Antti Palosaari < crope @ iki . fi >
*/
# ifndef MN88472_H
# define MN88472_H
# include <linux/dvb/frontend.h>
2017-11-29 12:39:19 -05:00
/* Define old names for backward compatibility */
# define VARIABLE_TS_CLOCK MN88472_TS_CLK_VARIABLE
# define FIXED_TS_CLOCK MN88472_TS_CLK_FIXED
# define SERIAL_TS_MODE MN88472_TS_MODE_SERIAL
# define PARALLEL_TS_MODE MN88472_TS_MODE_PARALLEL
2016-05-13 12:19:19 -03:00
/**
* struct mn88472_config - Platform data for the mn88472 driver
* @ xtal : Clock frequency .
* @ ts_mode : TS mode .
* @ ts_clock : TS clock config .
* @ i2c_wr_max : Max number of bytes driver writes to I2C at once .
2017-11-29 12:39:19 -05:00
* @ fe : pointer to a frontend pointer
* @ get_dvb_frontend : Get DVB frontend callback .
2016-05-13 12:19:19 -03:00
*/
2014-10-25 22:23:09 -03:00
struct mn88472_config {
2016-05-13 12:19:19 -03:00
unsigned int xtal ;
# define MN88472_TS_MODE_SERIAL 0
# define MN88472_TS_MODE_PARALLEL 1
int ts_mode ;
2013-11-29 16:19:50 -03:00
2016-05-13 12:19:19 -03:00
# define MN88472_TS_CLK_FIXED 0
# define MN88472_TS_CLK_VARIABLE 1
int ts_clock ;
u16 i2c_wr_max ;
2014-10-26 23:01:07 -03:00
/* Everything after that is returned by the driver. */
/*
* DVB frontend .
*/
struct dvb_frontend * * fe ;
2016-05-13 12:19:19 -03:00
struct dvb_frontend * ( * get_dvb_frontend ) ( struct i2c_client * ) ;
2014-10-26 23:01:07 -03:00
} ;
2013-11-29 16:19:50 -03:00
# endif