linux/drivers/media/usb/dvb-usb-v2/af9015.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * DVB USB Linux driver for Afatech AF9015 DVB-T USB2.0 receiver
 *
 * Copyright (C) 2007 Antti Palosaari <[email protected]>
 *
 * Thanks to Afatech who kindly provided information.
 */

#include "af9015.h"

static int dvb_usb_af9015_remote;
module_param_named(remote, dvb_usb_af9015_remote, int, 0644);
MODULE_PARM_DESC();
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);

static int af9015_ctrl_msg(struct dvb_usb_device *d, struct req_t *req)
{}

static int af9015_write_reg_i2c(struct dvb_usb_device *d, u8 addr, u16 reg,
				u8 val)
{}

static int af9015_read_reg_i2c(struct dvb_usb_device *d, u8 addr, u16 reg,
			       u8 *val)
{}

static int af9015_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msg[],
			   int num)
{}

static u32 af9015_i2c_func(struct i2c_adapter *adapter)
{}

static struct i2c_algorithm af9015_i2c_algo =;

static int af9015_identify_state(struct dvb_usb_device *d, const char **name)
{}

static int af9015_download_firmware(struct dvb_usb_device *d,
				    const struct firmware *firmware)
{}

#define AF9015_EEPROM_SIZE
/* 2^31 + 2^29 - 2^25 + 2^22 - 2^19 - 2^16 + 1 */
#define GOLDEN_RATIO_PRIME_32

/* hash (and dump) eeprom */
static int af9015_eeprom_hash(struct dvb_usb_device *d)
{}

static int af9015_read_config(struct dvb_usb_device *d)
{}

static int af9015_get_stream_config(struct dvb_frontend *fe, u8 *ts_type,
				    struct usb_data_stream_properties *stream)
{}

static int af9015_streaming_ctrl(struct dvb_frontend *fe, int onoff)
{}

static int af9015_get_adapter_count(struct dvb_usb_device *d)
{}

/* override demod callbacks for resource locking */
static int af9015_af9013_set_frontend(struct dvb_frontend *fe)
{}

/* override demod callbacks for resource locking */
static int af9015_af9013_read_status(struct dvb_frontend *fe,
				     enum fe_status *status)
{}

/* override demod callbacks for resource locking */
static int af9015_af9013_init(struct dvb_frontend *fe)
{}

/* override demod callbacks for resource locking */
static int af9015_af9013_sleep(struct dvb_frontend *fe)
{}

/* override tuner callbacks for resource locking */
static int af9015_tuner_init(struct dvb_frontend *fe)
{}

/* override tuner callbacks for resource locking */
static int af9015_tuner_sleep(struct dvb_frontend *fe)
{}

static int af9015_copy_firmware(struct dvb_usb_device *d)
{}

static int af9015_af9013_frontend_attach(struct dvb_usb_adapter *adap)
{}

static int af9015_frontend_detach(struct dvb_usb_adapter *adap)
{}

static struct mt2060_config af9015_mt2060_config =;

static struct qt1010_config af9015_qt1010_config =;

static struct tda18271_config af9015_tda18271_config =;

static struct mxl5005s_config af9015_mxl5003_config =;

static struct mxl5005s_config af9015_mxl5005_config =;

static struct mc44s803_config af9015_mc44s803_config =;

static struct tda18218_config af9015_tda18218_config =;

static struct mxl5007t_config af9015_mxl5007t_config =;

static int af9015_tuner_attach(struct dvb_usb_adapter *adap)
{}

static int af9015_pid_filter_ctrl(struct dvb_usb_adapter *adap, int onoff)
{}

static int af9015_pid_filter(struct dvb_usb_adapter *adap, int index,
			     u16 pid, int onoff)
{}

static int af9015_init(struct dvb_usb_device *d)
{}

#if IS_ENABLED(CONFIG_RC_CORE)
struct af9015_rc_setup {};

static char *af9015_rc_setup_match(unsigned int id,
				   const struct af9015_rc_setup *table)
{}

static const struct af9015_rc_setup af9015_rc_setup_modparam[] =;

static const struct af9015_rc_setup af9015_rc_setup_hashes[] =;

static int af9015_rc_query(struct dvb_usb_device *d)
{}

static int af9015_get_rc_config(struct dvb_usb_device *d, struct dvb_usb_rc *rc)
{}
#else
	#define af9015_get_rc_config
#endif

static int af9015_regmap_write(void *context, const void *data, size_t count)
{}

static int af9015_regmap_read(void *context, const void *reg_buf,
			      size_t reg_size, void *val_buf, size_t val_size)
{}

static int af9015_probe(struct dvb_usb_device *d)
{}

static void af9015_disconnect(struct dvb_usb_device *d)
{}

/*
 * Interface 0 is used by DVB-T receiver and
 * interface 1 is for remote controller (HID)
 */
static const struct dvb_usb_device_properties af9015_props =;

static const struct usb_device_id af9015_id_table[] =;
MODULE_DEVICE_TABLE(usb, af9015_id_table);

/* usb specific object needed to register this driver with the usb subsystem */
static struct usb_driver af9015_usb_driver =;

module_usb_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_FIRMWARE();