blob: 8f184026ee11058b6baef5d5cc20198353a4b038 [file] [log] [blame]
Antti Palosaaride8e4202011-08-01 01:07:39 -03001/*
2 * NXP TDA10071 + Conexant CX24118A DVB-S/S2 demodulator + tuner driver
3 *
4 * Copyright (C) 2011 Antti Palosaari <crope@iki.fi>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 */
20
21#ifndef TDA10071_H
22#define TDA10071_H
23
24#include <linux/dvb/frontend.h>
25
Antti Palosaarid69abb72015-04-16 11:46:24 -030026/*
27 * I2C address
Antti Palosaari59ca2ce2015-04-20 19:54:56 -030028 * 0x05, 0x55,
Antti Palosaarid69abb72015-04-16 11:46:24 -030029 */
30
31/**
32 * struct tda10071_platform_data - Platform data for the tda10071 driver
33 * @clk: Clock frequency.
34 * @i2c_wr_max: Max bytes I2C adapter can write at once.
35 * @ts_mode: TS mode.
36 * @spec_inv: Input spectrum inversion.
37 * @pll_multiplier: PLL multiplier.
38 * @tuner_i2c_addr: CX24118A tuner I2C address (0x14, 0x54, ...).
39 * @get_dvb_frontend: Get DVB frontend.
40 */
41
42struct tda10071_platform_data {
43 u32 clk;
44 u16 i2c_wr_max;
45#define TDA10071_TS_SERIAL 0
46#define TDA10071_TS_PARALLEL 1
47 u8 ts_mode;
48 bool spec_inv;
49 u8 pll_multiplier;
50 u8 tuner_i2c_addr;
51
52 struct dvb_frontend* (*get_dvb_frontend)(struct i2c_client *);
53};
54
Antti Palosaaride8e4202011-08-01 01:07:39 -030055#endif /* TDA10071_H */