1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Panasonic MN88472 DVB-T/T2/C demodulator driver 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (C) 2013 Antti Palosaari <crope@iki.fi> 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef MN88472_H 9*4882a593Smuzhiyun #define MN88472_H 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #include <linux/dvb/frontend.h> 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun /* Define old names for backward compatibility */ 14*4882a593Smuzhiyun #define VARIABLE_TS_CLOCK MN88472_TS_CLK_VARIABLE 15*4882a593Smuzhiyun #define FIXED_TS_CLOCK MN88472_TS_CLK_FIXED 16*4882a593Smuzhiyun #define SERIAL_TS_MODE MN88472_TS_MODE_SERIAL 17*4882a593Smuzhiyun #define PARALLEL_TS_MODE MN88472_TS_MODE_PARALLEL 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun /** 20*4882a593Smuzhiyun * struct mn88472_config - Platform data for the mn88472 driver 21*4882a593Smuzhiyun * @xtal: Clock frequency. 22*4882a593Smuzhiyun * @ts_mode: TS mode. 23*4882a593Smuzhiyun * @ts_clock: TS clock config. 24*4882a593Smuzhiyun * @i2c_wr_max: Max number of bytes driver writes to I2C at once. 25*4882a593Smuzhiyun * @fe: pointer to a frontend pointer 26*4882a593Smuzhiyun * @get_dvb_frontend: Get DVB frontend callback. 27*4882a593Smuzhiyun */ 28*4882a593Smuzhiyun struct mn88472_config { 29*4882a593Smuzhiyun unsigned int xtal; 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #define MN88472_TS_MODE_SERIAL 0 32*4882a593Smuzhiyun #define MN88472_TS_MODE_PARALLEL 1 33*4882a593Smuzhiyun int ts_mode; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun #define MN88472_TS_CLK_FIXED 0 36*4882a593Smuzhiyun #define MN88472_TS_CLK_VARIABLE 1 37*4882a593Smuzhiyun int ts_clock; 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun u16 i2c_wr_max; 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun /* Everything after that is returned by the driver. */ 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun /* 44*4882a593Smuzhiyun * DVB frontend. 45*4882a593Smuzhiyun */ 46*4882a593Smuzhiyun struct dvb_frontend **fe; 47*4882a593Smuzhiyun struct dvb_frontend* (*get_dvb_frontend)(struct i2c_client *); 48*4882a593Smuzhiyun }; 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun #endif 51