linux/drivers/media/usb/gspca/se401.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * GSPCA Endpoints (formerly known as AOX) se401 USB Camera sub Driver
 *
 * Copyright (C) 2011 Hans de Goede <[email protected]>
 *
 * Based on the v4l1 se401 driver which is:
 *
 * Copyright (c) 2000 Jeroen B. Vreeken ([email protected])
 */

#define pr_fmt(fmt)

#define MODULE_NAME

#define BULK_SIZE
#define PACKET_SIZE
#define READ_REQ_SIZE
#define MAX_MODES
/* The se401 compression algorithm uses a fixed quant factor, which
   can be configured by setting the high nibble of the SE401_OPERATINGMODE
   feature. This needs to exactly match what is in libv4l! */
#define SE401_QUANT_FACT

#include <linux/input.h>
#include <linux/slab.h>
#include "gspca.h"
#include "se401.h"

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();

/* exposure change state machine states */
enum {};

/* specific webcam descriptor */
struct sd {};


static void se401_write_req(struct gspca_dev *gspca_dev, u16 req, u16 value,
			    int silent)
{}

static void se401_read_req(struct gspca_dev *gspca_dev, u16 req, int silent)
{}

static void se401_set_feature(struct gspca_dev *gspca_dev,
			      u16 selector, u16 param)
{}

static int se401_get_feature(struct gspca_dev *gspca_dev, u16 selector)
{}

static void setbrightness(struct gspca_dev *gspca_dev, s32 val)
{}

static void setgain(struct gspca_dev *gspca_dev, s32 val)
{}

static void setexposure(struct gspca_dev *gspca_dev, s32 val, s32 freq)
{}

static int sd_config(struct gspca_dev *gspca_dev,
			const struct usb_device_id *id)
{}

/* this function is called at probe and resume time */
static int sd_init(struct gspca_dev *gspca_dev)
{}

/* function called at start time before URB creation */
static int sd_isoc_init(struct gspca_dev *gspca_dev)
{}

/* -- start the camera -- */
static int sd_start(struct gspca_dev *gspca_dev)
{}

static void sd_stopN(struct gspca_dev *gspca_dev)
{}

static void sd_dq_callback(struct gspca_dev *gspca_dev)
{}

static void sd_complete_frame(struct gspca_dev *gspca_dev, u8 *data, int len)
{}

static void sd_pkt_scan_janggu(struct gspca_dev *gspca_dev, u8 *data, int len)
{}

static void sd_pkt_scan_bayer(struct gspca_dev *gspca_dev, u8 *data, int len)
{}

static void sd_pkt_scan(struct gspca_dev *gspca_dev, u8 *data, int len)
{}

#if IS_ENABLED(CONFIG_INPUT)
static int sd_int_pkt_scan(struct gspca_dev *gspca_dev, u8 *data, int len)
{}
#endif

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)
{}

/* sub-driver description */
static const struct sd_desc sd_desc =;

/* -- module initialisation -- */
static const struct usb_device_id device_table[] =;
MODULE_DEVICE_TABLE(usb, device_table);

/* -- device connect -- */
static int sd_probe(struct usb_interface *intf,
			const struct usb_device_id *id)
{}

static int sd_pre_reset(struct usb_interface *intf)
{}

static int sd_post_reset(struct usb_interface *intf)
{}

static struct usb_driver sd_driver =;

module_usb_driver();