linux/drivers/media/dvb-frontends/dib3000mc.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Driver for DiBcom DiB3000MC/P-demodulator.
 *
 * Copyright (C) 2004-7 DiBcom (http://www.dibcom.fr/)
 * Copyright (C) 2004-5 Patrick Boettcher ([email protected])
 *
 * This code is partially based on the previous dib3000mc.c .
 */

#define pr_fmt(fmt)

#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/i2c.h>

#include <media/dvb_frontend.h>

#include "dib3000mc.h"

static int debug;
module_param(debug, int, 0644);
MODULE_PARM_DESC();

static int buggy_sfn_workaround;
module_param(buggy_sfn_workaround, int, 0644);
MODULE_PARM_DESC();

#define dprintk(fmt, arg...)

struct dib3000mc_state {};

static u16 dib3000mc_read_word(struct dib3000mc_state *state, u16 reg)
{}

static int dib3000mc_write_word(struct dib3000mc_state *state, u16 reg, u16 val)
{}

static int dib3000mc_identify(struct dib3000mc_state *state)
{}

static int dib3000mc_set_timing(struct dib3000mc_state *state, s16 nfft, u32 bw, u8 update_offset)
{}

static int dib3000mc_setup_pwm_state(struct dib3000mc_state *state)
{}

static int dib3000mc_set_output_mode(struct dib3000mc_state *state, int mode)
{}

static int dib3000mc_set_bandwidth(struct dib3000mc_state *state, u32 bw)
{}

static u16 impulse_noise_val[29] =;

static void dib3000mc_set_impulse_noise(struct dib3000mc_state *state, u8 mode, s16 nfft)
{}

static int dib3000mc_init(struct dvb_frontend *demod)
{}

static int dib3000mc_sleep(struct dvb_frontend *demod)
{}

static void dib3000mc_set_adp_cfg(struct dib3000mc_state *state, s16 qam)
{}

static void dib3000mc_set_channel_cfg(struct dib3000mc_state *state,
				      struct dtv_frontend_properties *ch, u16 seq)
{}

static int dib3000mc_autosearch_start(struct dvb_frontend *demod)
{}

static int dib3000mc_autosearch_is_irq(struct dvb_frontend *demod)
{}

static int dib3000mc_tune(struct dvb_frontend *demod)
{}

struct i2c_adapter * dib3000mc_get_tuner_i2c_master(struct dvb_frontend *demod, int gating)
{}

EXPORT_SYMBOL();

static int dib3000mc_get_frontend(struct dvb_frontend* fe,
				  struct dtv_frontend_properties *fep)
{}

static int dib3000mc_set_frontend(struct dvb_frontend *fe)
{}

static int dib3000mc_read_status(struct dvb_frontend *fe, enum fe_status *stat)
{}

static int dib3000mc_read_ber(struct dvb_frontend *fe, u32 *ber)
{}

static int dib3000mc_read_unc_blocks(struct dvb_frontend *fe, u32 *unc)
{}

static int dib3000mc_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
{}

static int dib3000mc_read_snr(struct dvb_frontend* fe, u16 *snr)
{}

static int dib3000mc_fe_get_tune_settings(struct dvb_frontend* fe, struct dvb_frontend_tune_settings *tune)
{}

static void dib3000mc_release(struct dvb_frontend *fe)
{}

int dib3000mc_pid_control(struct dvb_frontend *fe, int index, int pid,int onoff)
{}
EXPORT_SYMBOL();

int dib3000mc_pid_parse(struct dvb_frontend *fe, int onoff)
{}
EXPORT_SYMBOL();

void dib3000mc_set_config(struct dvb_frontend *fe, struct dib3000mc_config *cfg)
{}
EXPORT_SYMBOL();

int dib3000mc_i2c_enumeration(struct i2c_adapter *i2c, int no_of_demods, u8 default_addr, struct dib3000mc_config cfg[])
{}
EXPORT_SYMBOL();

static const struct dvb_frontend_ops dib3000mc_ops;

struct dvb_frontend * dib3000mc_attach(struct i2c_adapter *i2c_adap, u8 i2c_addr, struct dib3000mc_config *cfg)
{}
EXPORT_SYMBOL_GPL();

static const struct dvb_frontend_ops dib3000mc_ops =;

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