Source
x
static int ov7670_s_register(struct v4l2_subdev *sd, const struct v4l2_dbg_register *reg)
/*
* A V4L2 driver for OmniVision OV7670 cameras.
*
* Copyright 2006 One Laptop Per Child Association, Inc. Written
* by Jonathan Corbet with substantial inspiration from Mark
* McClelland's ovcamchip code.
*
* Copyright 2006-7 Jonathan Corbet <corbet@lwn.net>
*
* This file may be distributed under the terms of the GNU General
* Public License, version 2.
*/
MODULE_AUTHOR("Jonathan Corbet <corbet@lwn.net>");
MODULE_DESCRIPTION("A low-level driver for OmniVision ov7670 sensors");
MODULE_LICENSE("GPL");
static bool debug;
module_param(debug, bool, 0644);
MODULE_PARM_DESC(debug, "Debug level (0-1)");
/*
* The 7670 sits on i2c with ID 0x42
*/
/* Registers */
/* Gain lower 8 bits (rest in vref) */
/* blue gain */
/* red gain */
/* Pieces of GAIN, VSTART, VSTOP */
/* Control 1 */
/* CCIR656 enable */
/* U/B Average level */
/* Y/Gb Average level */
/* AEC MS 5 bits */
/* V/R Average level */
/* Control 2 */
/* Soft sleep mode */
/* Product ID MSB */
/* Product ID LSB */
/* Control 3 */
/* Byte swap */
/* Enable scaling */
/* Enable downsamp/crop/window */
/* Control 4 */
/* All "reserved" */
/* Control 6 */
/* More bits of AEC value */
/* Clocl control */
/* Use external clock directly */
/* Mask for internal clock scale */
/* Control 7 */
/* Register reset */
/* CIF format */
/* QVGA format */
/* QCIF format */
/* bits 0 and 2 - RGB format */
/* YUV */
/* Bayer format */
/* "Processed bayer" */
/* Control 8 */
/* Enable fast AGC/AEC */
/* Unlimited AEC step size */
/* Band filter enable */
/* Auto gain enable */
/* White balance enable */
/* Auto exposure enable */
/* Control 9 - gain ceiling */
/* Control 10 */
/* HSYNC instead of HREF */
/* Suppress PCLK on horiz blank */