#include "cx231xx.h"
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/i2c.h>
#include <linux/i2c-mux.h>
#include <media/v4l2-common.h>
#include <media/tuner.h>
static unsigned int i2c_scan;
module_param(i2c_scan, int, 0444);
MODULE_PARM_DESC(…) …;
static unsigned int i2c_debug;
module_param(i2c_debug, int, 0644);
MODULE_PARM_DESC(…) …;
#define dprintk1(lvl, fmt, args...) …
#define dprintk2(lvl, fmt, args...) …
static inline int get_real_i2c_port(struct cx231xx *dev, int bus_nr)
{ … }
static inline bool is_tuner(struct cx231xx *dev, struct cx231xx_i2c *bus,
const struct i2c_msg *msg, int tuner_type)
{ … }
static int cx231xx_i2c_send_bytes(struct i2c_adapter *i2c_adap,
const struct i2c_msg *msg)
{ … }
static int cx231xx_i2c_recv_bytes(struct i2c_adapter *i2c_adap,
const struct i2c_msg *msg)
{ … }
static int cx231xx_i2c_recv_bytes_with_saddr(struct i2c_adapter *i2c_adap,
const struct i2c_msg *msg1,
const struct i2c_msg *msg2)
{ … }
static int cx231xx_i2c_check_for_device(struct i2c_adapter *i2c_adap,
const struct i2c_msg *msg)
{ … }
static int cx231xx_i2c_xfer(struct i2c_adapter *i2c_adap,
struct i2c_msg msgs[], int num)
{ … }
static u32 functionality(struct i2c_adapter *adap)
{ … }
static const struct i2c_algorithm cx231xx_algo = …;
static const struct i2c_adapter cx231xx_adap_template = …;
static const char *i2c_devs[128] = …;
void cx231xx_do_i2c_scan(struct cx231xx *dev, int i2c_port)
{ … }
int cx231xx_i2c_register(struct cx231xx_i2c *bus)
{ … }
void cx231xx_i2c_unregister(struct cx231xx_i2c *bus)
{ … }
static int cx231xx_i2c_mux_select(struct i2c_mux_core *muxc, u32 chan_id)
{ … }
int cx231xx_i2c_mux_create(struct cx231xx *dev)
{ … }
int cx231xx_i2c_mux_register(struct cx231xx *dev, int mux_no)
{ … }
void cx231xx_i2c_mux_unregister(struct cx231xx *dev)
{ … }
struct i2c_adapter *cx231xx_get_i2c_adap(struct cx231xx *dev, int i2c_port)
{ … }
EXPORT_SYMBOL_GPL(…);