#define pr_fmt(fmt) …
#define MODULE_NAME …
#include "gspca.h"
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
struct sd { … };
static const struct v4l2_pix_format vga_mode[] = …;
static const struct v4l2_pix_format sif_mode[] = …;
#define ETOMS_ALT_SIZE_1000 …
#define ET_GPIO_DIR_CTRL …
#define ET_GPIO_OUT …
#define ET_GPIO_IN …
#define ET_RESET_ALL …
#define ET_ClCK …
#define ET_CTRL …
#define ET_COMP …
#define ET_MAXQt …
#define ET_MINQt …
#define ET_COMP_VAL0 …
#define ET_COMP_VAL1 …
#define ET_REG1d …
#define ET_REG1e …
#define ET_REG1f …
#define ET_REG20 …
#define ET_REG21 …
#define ET_REG22 …
#define ET_REG23 …
#define ET_REG24 …
#define ET_REG25 …
#define ET_LUMA_CENTER …
#define ET_G_RED …
#define ET_G_GREEN1 …
#define ET_G_BLUE …
#define ET_G_GREEN2 …
#define ET_G_GR_H …
#define ET_G_GB_H …
#define ET_O_RED …
#define ET_O_GREEN1 …
#define ET_O_BLUE …
#define ET_O_GREEN2 …
#define ET_SYNCHRO …
#define ET_STARTX …
#define ET_STARTY …
#define ET_WIDTH_LOW …
#define ET_HEIGTH_LOW …
#define ET_W_H_HEIGTH …
#define ET_REG6e …
#define ET_REG6f …
#define ET_REG70 …
#define ET_REG71 …
#define ET_REG72 …
#define ET_REG73 …
#define ET_REG74 …
#define ET_REG75 …
#define ET_I2C_CLK …
#define ET_PXL_CLK …
#define ET_I2C_BASE …
#define ET_I2C_COUNT …
#define ET_I2C_PREFETCH …
#define ET_I2C_REG …
#define ET_I2C_DATA7 …
#define ET_I2C_DATA6 …
#define ET_I2C_DATA5 …
#define ET_I2C_DATA4 …
#define ET_I2C_DATA3 …
#define ET_I2C_DATA2 …
#define ET_I2C_DATA1 …
#define ET_I2C_DATA0 …
#define PAS106_REG2 …
#define PAS106_REG3 …
#define PAS106_REG4 …
#define PAS106_REG5 …
#define PAS106_REG6 …
#define PAS106_REG7 …
#define PAS106_REG9 …
#define PAS106_REG0e …
#define PAS106_REG13 …
static const __u8 GainRGBG[] = …;
static const __u8 I2c2[] = …;
static const __u8 I2c3[] = …;
static const __u8 I2c4[] = …;
static void reg_r(struct gspca_dev *gspca_dev,
__u16 index,
__u16 len)
{ … }
static void reg_w_val(struct gspca_dev *gspca_dev,
__u16 index,
__u8 val)
{ … }
static void reg_w(struct gspca_dev *gspca_dev,
__u16 index,
const __u8 *buffer,
__u16 len)
{ … }
static int i2c_w(struct gspca_dev *gspca_dev,
__u8 reg,
const __u8 *buffer,
int len, __u8 mode)
{ … }
static int i2c_r(struct gspca_dev *gspca_dev,
__u8 reg)
{ … }
static int Et_WaitStatus(struct gspca_dev *gspca_dev)
{ … }
static int et_video(struct gspca_dev *gspca_dev,
int on)
{ … }
static void Et_init2(struct gspca_dev *gspca_dev)
{ … }
static void setbrightness(struct gspca_dev *gspca_dev, s32 val)
{ … }
static void setcontrast(struct gspca_dev *gspca_dev, s32 val)
{ … }
static void setcolors(struct gspca_dev *gspca_dev, s32 val)
{ … }
static s32 getcolors(struct gspca_dev *gspca_dev)
{ … }
static void setautogain(struct gspca_dev *gspca_dev)
{ … }
static void Et_init1(struct gspca_dev *gspca_dev)
{ … }
static int sd_config(struct gspca_dev *gspca_dev,
const struct usb_device_id *id)
{ … }
static int sd_init(struct gspca_dev *gspca_dev)
{ … }
static int sd_start(struct gspca_dev *gspca_dev)
{ … }
static void sd_stopN(struct gspca_dev *gspca_dev)
{ … }
static __u8 Et_getgainG(struct gspca_dev *gspca_dev)
{ … }
static void Et_setgainG(struct gspca_dev *gspca_dev, __u8 gain)
{ … }
#define BLIMIT …
#define LIMIT …
static void do_autogain(struct gspca_dev *gspca_dev)
{ … }
#undef BLIMIT
#undef LIMIT
static void sd_pkt_scan(struct gspca_dev *gspca_dev,
u8 *data,
int len)
{ … }
static int sd_s_ctrl(struct v4l2_ctrl *ctrl)
{ … }
static const struct v4l2_ctrl_ops sd_ctrl_ops = …;
static int sd_init_controls(struct gspca_dev *gspca_dev)
{ … }
static const struct sd_desc sd_desc = …;
static const struct usb_device_id device_table[] = …;
MODULE_DEVICE_TABLE(usb, device_table);
static int sd_probe(struct usb_interface *intf,
const struct usb_device_id *id)
{ … }
static struct usb_driver sd_driver = …;
module_usb_driver(…) …;