cregit-Linux how code gets into the kernel

Release 4.7 drivers/media/usb/gspca/gl860/gl860.h

/* GSPCA subdrivers for Genesys Logic webcams with the GL860 chip
 * Subdriver declarations
 *
 * 2009/10/14 Olivier LORIN <o.lorin@laposte.net>
 *
 * 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/>.
 */
#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

Overall Contributors

PersonTokensPropCommitsCommitProp
olivier lorinolivier lorin350100.00%2100.00%
Total350100.00%2100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
{% endraw %}