linux_dsm_epyc7002/drivers/media/usb/gspca/gl860/gl860.h
Thomas Gleixner a112cc3966 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 65
Based on 1 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license as published by
  the free software foundation either version 2 of the license or any
  later version this program is distributed in the hope that it will
  be useful but without any warranty without even the implied warranty
  of merchantability or fitness for a particular purpose see the gnu
  general public license for more details you should have received a
  copy of the gnu general public license along with this program if
  not see http www gnu org licenses

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-or-later

has been chosen to replace the boilerplate/reference in 6 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Richard Fontana <rfontana@redhat.com>
Reviewed-by: Allison Randal <allison@lohutok.net>
Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190520071859.105288849@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-24 17:36:46 +02:00

94 lines
2.1 KiB
C

/* SPDX-License-Identifier: GPL-2.0-or-later */
/* GSPCA subdrivers for Genesys Logic webcams with the GL860 chip
* Subdriver declarations
*
* 2009/10/14 Olivier LORIN <o.lorin@laposte.net>
*/
#ifndef GL860_DEV_H
#define GL860_DEV_H
#include "gspca.h"
#define MODULE_NAME "gspca_gl860"
#define DRIVER_VERSION "0.9d10"
#define ctrl_in gl860_RTx
#define ctrl_out gl860_RTx
#define ID_MI1320 1
#define ID_OV2640 2
#define ID_OV9655 4
#define ID_MI2020 8
#define _MI1320_ (((struct sd *) gspca_dev)->sensor == ID_MI1320)
#define _MI2020_ (((struct sd *) gspca_dev)->sensor == ID_MI2020)
#define _OV2640_ (((struct sd *) gspca_dev)->sensor == ID_OV2640)
#define _OV9655_ (((struct sd *) gspca_dev)->sensor == ID_OV9655)
#define IMAGE_640 0
#define IMAGE_800 1
#define IMAGE_1280 2
#define IMAGE_1600 3
struct sd_gl860 {
u16 backlight;
u16 brightness;
u16 sharpness;
u16 contrast;
u16 gamma;
u16 hue;
u16 saturation;
u16 whitebal;
u8 mirror;
u8 flip;
u8 AC50Hz;
};
/* Specific webcam descriptor */
struct sd {
struct gspca_dev gspca_dev; /* !! must be the first item */
struct sd_gl860 vcur;
struct sd_gl860 vold;
struct sd_gl860 vmax;
int (*dev_configure_alt) (struct gspca_dev *);
int (*dev_init_at_startup)(struct gspca_dev *);
int (*dev_init_pre_alt) (struct gspca_dev *);
void (*dev_post_unset_alt) (struct gspca_dev *);
int (*dev_camera_settings)(struct gspca_dev *);
u8 swapRB;
u8 mirrorMask;
u8 sensor;
s32 nbIm;
s32 nbRightUp;
u8 waitSet;
};
struct validx {
u16 val;
u16 idx;
};
struct idxdata {
u8 idx;
u8 data[3];
};
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);
int gl860_RTx(struct gspca_dev *gspca_dev,
unsigned char pref, u32 req, u16 val, u16 index,
s32 len, void *pdata);
void mi1320_init_settings(struct gspca_dev *);
void ov2640_init_settings(struct gspca_dev *);
void ov9655_init_settings(struct gspca_dev *);
void mi2020_init_settings(struct gspca_dev *);
#endif