#include <linux/slab.h>
#include <linux/module.h>
#include <linux/dvb/frontend.h>
#include <linux/types.h>
#include "horus3a.h"
#include <media/dvb_frontend.h>
#define MAX_WRITE_REGSIZE …
enum horus3a_state { … };
struct horus3a_priv { … };
static void horus3a_i2c_debug(struct horus3a_priv *priv,
u8 reg, u8 write, const u8 *data, u32 len)
{ … }
static int horus3a_write_regs(struct horus3a_priv *priv,
u8 reg, const u8 *data, u32 len)
{ … }
static int horus3a_write_reg(struct horus3a_priv *priv, u8 reg, u8 val)
{ … }
static int horus3a_enter_power_save(struct horus3a_priv *priv)
{ … }
static int horus3a_leave_power_save(struct horus3a_priv *priv)
{ … }
static int horus3a_init(struct dvb_frontend *fe)
{ … }
static void horus3a_release(struct dvb_frontend *fe)
{ … }
static int horus3a_sleep(struct dvb_frontend *fe)
{ … }
static int horus3a_set_params(struct dvb_frontend *fe)
{ … }
static int horus3a_get_frequency(struct dvb_frontend *fe, u32 *frequency)
{ … }
static const struct dvb_tuner_ops horus3a_tuner_ops = …;
struct dvb_frontend *horus3a_attach(struct dvb_frontend *fe,
const struct horus3a_config *config,
struct i2c_adapter *i2c)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;