xref: /linux/drivers/media/dvb-frontends/tda10071.h (revision 58e16d792a6a8c6b750f637a4649967fcac853dc)
1*16216333SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
29a0bf528SMauro Carvalho Chehab /*
39a0bf528SMauro Carvalho Chehab  * NXP TDA10071 + Conexant CX24118A DVB-S/S2 demodulator + tuner driver
49a0bf528SMauro Carvalho Chehab  *
59a0bf528SMauro Carvalho Chehab  * Copyright (C) 2011 Antti Palosaari <crope@iki.fi>
69a0bf528SMauro Carvalho Chehab  */
79a0bf528SMauro Carvalho Chehab 
89a0bf528SMauro Carvalho Chehab #ifndef TDA10071_H
99a0bf528SMauro Carvalho Chehab #define TDA10071_H
109a0bf528SMauro Carvalho Chehab 
119a0bf528SMauro Carvalho Chehab #include <linux/dvb/frontend.h>
129a0bf528SMauro Carvalho Chehab 
13d69abb79SAntti Palosaari /*
14d69abb79SAntti Palosaari  * I2C address
1559ca2ce1SAntti Palosaari  * 0x05, 0x55,
16d69abb79SAntti Palosaari  */
17d69abb79SAntti Palosaari 
18d69abb79SAntti Palosaari /**
19d69abb79SAntti Palosaari  * struct tda10071_platform_data - Platform data for the tda10071 driver
20d69abb79SAntti Palosaari  * @clk: Clock frequency.
21d69abb79SAntti Palosaari  * @i2c_wr_max: Max bytes I2C adapter can write at once.
22d69abb79SAntti Palosaari  * @ts_mode: TS mode.
23d69abb79SAntti Palosaari  * @spec_inv: Input spectrum inversion.
24d69abb79SAntti Palosaari  * @pll_multiplier: PLL multiplier.
25d69abb79SAntti Palosaari  * @tuner_i2c_addr: CX24118A tuner I2C address (0x14, 0x54, ...).
26d69abb79SAntti Palosaari  * @get_dvb_frontend: Get DVB frontend.
27d69abb79SAntti Palosaari  */
28d69abb79SAntti Palosaari struct tda10071_platform_data {
29d69abb79SAntti Palosaari 	u32 clk;
30d69abb79SAntti Palosaari 	u16 i2c_wr_max;
31d69abb79SAntti Palosaari #define TDA10071_TS_SERIAL        0
32d69abb79SAntti Palosaari #define TDA10071_TS_PARALLEL      1
33d69abb79SAntti Palosaari 	u8 ts_mode;
34d69abb79SAntti Palosaari 	bool spec_inv;
35d69abb79SAntti Palosaari 	u8 pll_multiplier;
36d69abb79SAntti Palosaari 	u8 tuner_i2c_addr;
37d69abb79SAntti Palosaari 
38d69abb79SAntti Palosaari 	struct dvb_frontend* (*get_dvb_frontend)(struct i2c_client *);
39d69abb79SAntti Palosaari };
40d69abb79SAntti Palosaari 
419a0bf528SMauro Carvalho Chehab #endif /* TDA10071_H */
42