linux/drivers/media/tuners/qm1d1c0042.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Sharp QM1D1C0042 8PSK tuner driver
 *
 * Copyright (C) 2014 Akihiro Tsukada <[email protected]>
 */

/*
 * NOTICE:
 * As the disclosed information on the chip is very limited,
 * this driver lacks some features, including chip config like IF freq.
 * It assumes that users of this driver (such as a PCI bridge of
 * DTV receiver cards) know the relevant info and
 * configure the chip via I2C if necessary.
 *
 * Currently, PT3 driver is the only one that uses this driver,
 * and contains init/config code in its firmware.
 * Thus some part of the code might be dependent on PT3 specific config.
 */

#include <linux/kernel.h>
#include <linux/math64.h>
#include "qm1d1c0042.h"

#define QM1D1C0042_NUM_REGS
#define QM1D1C0042_NUM_REG_ROWS

static const u8
reg_initval[QM1D1C0042_NUM_REG_ROWS][QM1D1C0042_NUM_REGS] =;

static int reg_index;

static const struct qm1d1c0042_config default_cfg =;

struct qm1d1c0042_state {};

static struct qm1d1c0042_state *cfg_to_state(struct qm1d1c0042_config *c)
{}

static int reg_write(struct qm1d1c0042_state *state, u8 reg, u8 val)
{}

static int reg_read(struct qm1d1c0042_state *state, u8 reg, u8 *val)
{}


static int qm1d1c0042_set_srch_mode(struct qm1d1c0042_state *state, bool fast)
{}

static int qm1d1c0042_wakeup(struct qm1d1c0042_state *state)
{}

/* tuner_ops */

static int qm1d1c0042_set_config(struct dvb_frontend *fe, void *priv_cfg)
{}

/* divisor, vco_band parameters */
/*  {maxfreq,  param1(band?), param2(div?) */
static const u32 conv_table[9][3] =;

static int qm1d1c0042_set_params(struct dvb_frontend *fe)
{}

static int qm1d1c0042_sleep(struct dvb_frontend *fe)
{}

static int qm1d1c0042_init(struct dvb_frontend *fe)
{}

/* I2C driver functions */

static const struct dvb_tuner_ops qm1d1c0042_ops =;


static int qm1d1c0042_probe(struct i2c_client *client)
{}

static void qm1d1c0042_remove(struct i2c_client *client)
{}


static const struct i2c_device_id qm1d1c0042_id[] =;
MODULE_DEVICE_TABLE(i2c, qm1d1c0042_id);

static struct i2c_driver qm1d1c0042_driver =;

module_i2c_driver();

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