#define pr_fmt(fmt) …
#include "gspca.h"
#include "gl860.h"
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
static void (*dev_init_settings)(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_isoc_init(struct gspca_dev *gspca_dev);
static int sd_start(struct gspca_dev *gspca_dev);
static void sd_stop0(struct gspca_dev *gspca_dev);
static void sd_pkt_scan(struct gspca_dev *gspca_dev,
u8 *data, int len);
static void sd_callback(struct gspca_dev *gspca_dev);
static int gl860_guess_sensor(struct gspca_dev *gspca_dev,
u16 vendor_id, u16 product_id);
static s32 AC50Hz = …;
module_param(AC50Hz, int, 0644);
MODULE_PARM_DESC(…) …;
static char sensor[7];
module_param_string(…);
MODULE_PARM_DESC(…) …;
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_mi1320 = …;
static const struct sd_desc sd_desc_mi2020 = …;
static const struct sd_desc sd_desc_ov2640 = …;
static const struct sd_desc sd_desc_ov9655 = …;
static struct v4l2_pix_format mi2020_mode[] = …;
static struct v4l2_pix_format ov2640_mode[] = …;
static struct v4l2_pix_format mi1320_mode[] = …;
static struct v4l2_pix_format ov9655_mode[] = …;
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_isoc_init(struct gspca_dev *gspca_dev)
{ … }
static int sd_start(struct gspca_dev *gspca_dev)
{ … }
static void sd_stop0(struct gspca_dev *gspca_dev)
{ … }
static void sd_pkt_scan(struct gspca_dev *gspca_dev,
u8 *data, int len)
{ … }
static void sd_callback(struct gspca_dev *gspca_dev)
{ … }
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 void sd_disconnect(struct usb_interface *intf)
{ … }
static struct usb_driver sd_driver = …;
module_usb_driver(…) …;
int gl860_RTx(struct gspca_dev *gspca_dev,
unsigned char pref, u32 req, u16 val, u16 index,
s32 len, void *pdata)
{ … }
int fetch_validx(struct gspca_dev *gspca_dev, struct validx *tbl, int len)
{ … }
int keep_on_fetching_validx(struct gspca_dev *gspca_dev, struct validx *tbl,
int len, int n)
{ … }
void fetch_idxdata(struct gspca_dev *gspca_dev, struct idxdata *tbl, int len)
{ … }
static int gl860_guess_sensor(struct gspca_dev *gspca_dev,
u16 vendor_id, u16 product_id)
{ … }