#include <linux/slab.h>
#include <linux/module.h>
#include <linux/dvb/frontend.h>
#include <linux/types.h>
#include "helene.h"
#include <media/dvb_frontend.h>
#define MAX_WRITE_REGSIZE …
enum helene_state { … };
struct helene_priv { … };
#define TERR_INTERNAL_LOOPFILTER_AVAILABLE(tv_system) …
#define HELENE_AUTO …
#define HELENE_OFFSET(ofs) …
#define HELENE_BW_6 …
#define HELENE_BW_7 …
#define HELENE_BW_8 …
#define HELENE_BW_1_7 …
enum helene_tv_system_t { … };
struct helene_terr_adjust_param_t { … };
static const struct helene_terr_adjust_param_t
terr_params[SONY_HELENE_TERR_TV_SYSTEM_NUM] = …;
static void helene_i2c_debug(struct helene_priv *priv,
u8 reg, u8 write, const u8 *data, u32 len)
{ … }
static int helene_write_regs(struct helene_priv *priv,
u8 reg, const u8 *data, u32 len)
{ … }
static int helene_write_reg(struct helene_priv *priv, u8 reg, u8 val)
{ … }
static int helene_read_regs(struct helene_priv *priv,
u8 reg, u8 *val, u32 len)
{ … }
static int helene_read_reg(struct helene_priv *priv, u8 reg, u8 *val)
{ … }
static int helene_set_reg_bits(struct helene_priv *priv,
u8 reg, u8 data, u8 mask)
{ … }
static int helene_enter_power_save(struct helene_priv *priv)
{ … }
static int helene_leave_power_save(struct helene_priv *priv)
{ … }
static int helene_init(struct dvb_frontend *fe)
{ … }
static void helene_release(struct dvb_frontend *fe)
{ … }
static int helene_sleep(struct dvb_frontend *fe)
{ … }
static enum helene_tv_system_t helene_get_tv_system(struct dvb_frontend *fe)
{ … }
static int helene_set_params_s(struct dvb_frontend *fe)
{ … }
static int helene_set_params_t(struct dvb_frontend *fe)
{ … }
static int helene_set_params(struct dvb_frontend *fe)
{ … }
static int helene_get_frequency(struct dvb_frontend *fe, u32 *frequency)
{ … }
static const struct dvb_tuner_ops helene_tuner_ops_t = …;
static const struct dvb_tuner_ops helene_tuner_ops_s = …;
static const struct dvb_tuner_ops helene_tuner_ops = …;
static int helene_x_pon(struct helene_priv *priv)
{ … }
struct dvb_frontend *helene_attach_s(struct dvb_frontend *fe,
const struct helene_config *config,
struct i2c_adapter *i2c)
{ … }
EXPORT_SYMBOL_GPL(…);
struct dvb_frontend *helene_attach(struct dvb_frontend *fe,
const struct helene_config *config,
struct i2c_adapter *i2c)
{ … }
EXPORT_SYMBOL_GPL(…);
static int helene_probe(struct i2c_client *client)
{ … }
static const struct i2c_device_id helene_id[] = …;
MODULE_DEVICE_TABLE(i2c, helene_id);
static struct i2c_driver helene_driver = …;
module_i2c_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;