blob: 67589b607c4efa2dd8239f5a253edbb4f3c1f0da [file] [log] [blame]
Ralph Metzler43dd07f2011-07-03 13:42:18 -03001#ifndef _DRXK_H_
2#define _DRXK_H_
3
4#include <linux/types.h>
5#include <linux/i2c.h>
6
Mauro Carvalho Chehab147e1102011-07-10 08:24:26 -03007/**
8 * struct drxk_config - Configure the initial parameters for DRX-K
9 *
10 * adr: I2C Address of the DRX-K
11 * single_master: Device is on the single master mode
12 * no_i2c_bridge: Don't switch the I2C bridge to talk with tuner
13 * antenna_uses_gpio: Use GPIO to control the antenna
14 * antenna_dvbc: GPIO for changing antenna to DVB-C
15 * antenna_dvbt: GPIO for changing antenna to DVB-T
16 * microcode_name: Name of the firmware file with the microcode
17 */
Mauro Carvalho Chehab0fc55e82011-07-09 12:36:58 -030018struct drxk_config {
Mauro Carvalho Chehab147e1102011-07-10 08:24:26 -030019 u8 adr;
20 bool single_master;
21 bool no_i2c_bridge;
22
23 bool antenna_uses_gpio;
24 u16 antenna_dvbc, antenna_dvbt;
25
Mauro Carvalho Chehabe4f4f872011-07-09 17:35:26 -030026 const char *microcode_name;
Mauro Carvalho Chehab0fc55e82011-07-09 12:36:58 -030027};
28
29extern struct dvb_frontend *drxk_attach(const struct drxk_config *config,
30 struct i2c_adapter *i2c,
Ralph Metzler43dd07f2011-07-03 13:42:18 -030031 struct dvb_frontend **fe_t);
32#endif