#include <linux/vmalloc.h>
#include <linux/i2c.h>
#include <media/tuner.h>
#include "mxl111sf.h"
#include "mxl111sf-reg.h"
#include "mxl111sf-phy.h"
#include "mxl111sf-i2c.h"
#include "mxl111sf-gpio.h"
#include "mxl111sf-demod.h"
#include "mxl111sf-tuner.h"
#include "lgdt3305.h"
#include "lg2160.h"
int dvb_usb_mxl111sf_debug;
module_param_named(debug, dvb_usb_mxl111sf_debug, int, 0644);
MODULE_PARM_DESC(…) …;
static int dvb_usb_mxl111sf_isoc;
module_param_named(isoc, dvb_usb_mxl111sf_isoc, int, 0644);
MODULE_PARM_DESC(…) …;
static int dvb_usb_mxl111sf_spi;
module_param_named(spi, dvb_usb_mxl111sf_spi, int, 0644);
MODULE_PARM_DESC(…) …;
#define ANT_PATH_AUTO …
#define ANT_PATH_EXTERNAL …
#define ANT_PATH_INTERNAL …
static int dvb_usb_mxl111sf_rfswitch = …ANT_PATH_AUTO;
#else
ANT_PATH_EXTERNAL;
#endif
module_param_named(rfswitch, dvb_usb_mxl111sf_rfswitch, int, 0644);
MODULE_PARM_DESC(…) …;
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
int mxl111sf_ctrl_msg(struct mxl111sf_state *state,
u8 cmd, u8 *wbuf, int wlen, u8 *rbuf, int rlen)
{ … }
#define MXL_CMD_REG_READ …
#define MXL_CMD_REG_WRITE …
int mxl111sf_read_reg(struct mxl111sf_state *state, u8 addr, u8 *data)
{ … }
int mxl111sf_write_reg(struct mxl111sf_state *state, u8 addr, u8 data)
{ … }
int mxl111sf_write_reg_mask(struct mxl111sf_state *state,
u8 addr, u8 mask, u8 data)
{ … }
int mxl111sf_ctrl_program_regs(struct mxl111sf_state *state,
struct mxl111sf_reg_ctrl_info *ctrl_reg_info)
{ … }
static int mxl1x1sf_get_chip_info(struct mxl111sf_state *state)
{ … }
#define get_chip_info(state) …
#if 0
static int mxl111sf_power_ctrl(struct dvb_usb_device *d, int onoff)
{
return 0;
}
#endif
static int mxl111sf_adap_fe_init(struct dvb_frontend *fe)
{ … }
static int mxl111sf_adap_fe_sleep(struct dvb_frontend *fe)
{ … }
static int mxl111sf_ep6_streaming_ctrl(struct dvb_frontend *fe, int onoff)
{ … }
static int mxl111sf_ep5_streaming_ctrl(struct dvb_frontend *fe, int onoff)
{ … }
static int mxl111sf_ep4_streaming_ctrl(struct dvb_frontend *fe, int onoff)
{ … }
static struct lgdt3305_config hauppauge_lgdt3305_config = …;
static int mxl111sf_lgdt3305_frontend_attach(struct dvb_usb_adapter *adap, u8 fe_id)
{ … }
static struct lg2160_config hauppauge_lg2160_config = …;
static int mxl111sf_lg2160_frontend_attach(struct dvb_usb_adapter *adap, u8 fe_id)
{ … }
static struct lg2160_config hauppauge_lg2161_1019_config = …;
static struct lg2160_config hauppauge_lg2161_1040_config = …;
static int mxl111sf_lg2161_frontend_attach(struct dvb_usb_adapter *adap, u8 fe_id)
{ … }
static struct lg2160_config hauppauge_lg2161_1019_ep6_config = …;
static struct lg2160_config hauppauge_lg2161_1040_ep6_config = …;
static int mxl111sf_lg2161_ep6_frontend_attach(struct dvb_usb_adapter *adap, u8 fe_id)
{ … }
static const struct mxl111sf_demod_config mxl_demod_config = …;
static int mxl111sf_attach_demod(struct dvb_usb_adapter *adap, u8 fe_id)
{ … }
static inline int mxl111sf_set_ant_path(struct mxl111sf_state *state,
int antpath)
{ … }
#define DbgAntHunt(x, pwr0, pwr1, pwr2, pwr3) …
#define ANT_HUNT_SLEEP …
#define ANT_EXT_TWEAK …
static int mxl111sf_ant_hunt(struct dvb_frontend *fe)
{ … }
static const struct mxl111sf_tuner_config mxl_tuner_config = …;
static int mxl111sf_attach_tuner(struct dvb_usb_adapter *adap)
{ … }
static u32 mxl111sf_i2c_func(struct i2c_adapter *adapter)
{ … }
static struct i2c_algorithm mxl111sf_i2c_algo = …;
static int mxl111sf_init(struct dvb_usb_device *d)
{ … }
static int mxl111sf_frontend_attach_dvbt(struct dvb_usb_adapter *adap)
{ … }
static int mxl111sf_frontend_attach_atsc(struct dvb_usb_adapter *adap)
{ … }
static int mxl111sf_frontend_attach_mh(struct dvb_usb_adapter *adap)
{ … }
static int mxl111sf_frontend_attach_atsc_mh(struct dvb_usb_adapter *adap)
{ … }
static int mxl111sf_frontend_attach_mercury(struct dvb_usb_adapter *adap)
{ … }
static int mxl111sf_frontend_attach_mercury_mh(struct dvb_usb_adapter *adap)
{ … }
static void mxl111sf_stream_config_bulk(struct usb_data_stream_properties *stream, u8 endpoint)
{ … }
static void mxl111sf_stream_config_isoc(struct usb_data_stream_properties *stream,
u8 endpoint, int framesperurb, int framesize)
{ … }
static int mxl111sf_get_stream_config_dvbt(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static int mxl111sf_probe(struct dvb_usb_device *dev)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_dvbt = …;
static int mxl111sf_get_stream_config_atsc(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_atsc = …;
static int mxl111sf_get_stream_config_mh(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_mh = …;
static int mxl111sf_get_stream_config_atsc_mh(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static int mxl111sf_streaming_ctrl_atsc_mh(struct dvb_frontend *fe, int onoff)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_atsc_mh = …;
static int mxl111sf_get_stream_config_mercury(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static int mxl111sf_streaming_ctrl_mercury(struct dvb_frontend *fe, int onoff)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_mercury = …;
static int mxl111sf_get_stream_config_mercury_mh(struct dvb_frontend *fe,
u8 *ts_type, struct usb_data_stream_properties *stream)
{ … }
static int mxl111sf_streaming_ctrl_mercury_mh(struct dvb_frontend *fe, int onoff)
{ … }
static struct dvb_usb_device_properties mxl111sf_props_mercury_mh = …;
static const struct usb_device_id mxl111sf_id_table[] = …;
MODULE_DEVICE_TABLE(usb, mxl111sf_id_table);
static struct usb_driver mxl111sf_usb_driver = …;
module_usb_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_VERSION(…) …;
MODULE_LICENSE(…) …;