#define pr_fmt(fmt) …
#include <linux/spi/spi.h>
#include <media/dvb_frontend.h>
#include <linux/int_log.h>
#include "cxd2880.h"
#include "cxd2880_tnrdmd_mon.h"
#include "cxd2880_tnrdmd_dvbt2_mon.h"
#include "cxd2880_tnrdmd_dvbt_mon.h"
#include "cxd2880_integ.h"
#include "cxd2880_tnrdmd_dvbt2.h"
#include "cxd2880_tnrdmd_dvbt.h"
#include "cxd2880_devio_spi.h"
#include "cxd2880_spi_device.h"
#include "cxd2880_tnrdmd_driver_version.h"
struct cxd2880_priv { … };
static int cxd2880_pre_bit_err_t(struct cxd2880_tnrdmd *tnrdmd,
u32 *pre_bit_err, u32 *pre_bit_count)
{ … }
static int cxd2880_pre_bit_err_t2(struct cxd2880_tnrdmd *tnrdmd,
u32 *pre_bit_err,
u32 *pre_bit_count)
{ … }
static int cxd2880_post_bit_err_t(struct cxd2880_tnrdmd *tnrdmd,
u32 *post_bit_err,
u32 *post_bit_count)
{ … }
static int cxd2880_post_bit_err_t2(struct cxd2880_tnrdmd *tnrdmd,
u32 *post_bit_err,
u32 *post_bit_count)
{ … }
static int cxd2880_read_block_err_t(struct cxd2880_tnrdmd *tnrdmd,
u32 *block_err,
u32 *block_count)
{ … }
static int cxd2880_read_block_err_t2(struct cxd2880_tnrdmd *tnrdmd,
u32 *block_err,
u32 *block_count)
{ … }
static void cxd2880_release(struct dvb_frontend *fe)
{ … }
static int cxd2880_init(struct dvb_frontend *fe)
{ … }
static int cxd2880_sleep(struct dvb_frontend *fe)
{ … }
static int cxd2880_read_signal_strength(struct dvb_frontend *fe,
u16 *strength)
{ … }
static int cxd2880_read_snr(struct dvb_frontend *fe, u16 *snr)
{ … }
static int cxd2880_read_ucblocks(struct dvb_frontend *fe, u32 *ucblocks)
{ … }
static int cxd2880_read_ber(struct dvb_frontend *fe, u32 *ber)
{ … }
static int cxd2880_set_ber_per_period_t(struct dvb_frontend *fe)
{ … }
static int cxd2880_set_ber_per_period_t2(struct dvb_frontend *fe)
{ … }
static int cxd2880_dvbt_tune(struct cxd2880_tnrdmd *tnr_dmd,
struct cxd2880_dvbt_tune_param
*tune_param)
{ … }
static int cxd2880_dvbt2_tune(struct cxd2880_tnrdmd *tnr_dmd,
struct cxd2880_dvbt2_tune_param
*tune_param)
{ … }
static int cxd2880_set_frontend(struct dvb_frontend *fe)
{ … }
static int cxd2880_get_stats(struct dvb_frontend *fe,
enum fe_status status)
{ … }
static int cxd2880_check_l1post_plp(struct dvb_frontend *fe)
{ … }
static int cxd2880_read_status(struct dvb_frontend *fe,
enum fe_status *status)
{ … }
static int cxd2880_tune(struct dvb_frontend *fe,
bool retune,
unsigned int mode_flags,
unsigned int *delay,
enum fe_status *status)
{ … }
static int cxd2880_get_frontend_t(struct dvb_frontend *fe,
struct dtv_frontend_properties *c)
{ … }
static int cxd2880_get_frontend_t2(struct dvb_frontend *fe,
struct dtv_frontend_properties *c)
{ … }
static int cxd2880_get_frontend(struct dvb_frontend *fe,
struct dtv_frontend_properties *props)
{ … }
static enum dvbfe_algo cxd2880_get_frontend_algo(struct dvb_frontend *fe)
{ … }
static struct dvb_frontend_ops cxd2880_dvbt_t2_ops = …;
struct dvb_frontend *cxd2880_attach(struct dvb_frontend *fe,
struct cxd2880_config *cfg)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;