Linux Kernel
3.7.1
|
Go to the source code of this file.
Data Structures | |
struct | sd |
struct | ctrl_valid |
struct | ov_regvals |
struct | ov_i2c_regvals |
Macros | |
#define | pr_fmt(fmt) KBUILD_MODNAME ": " fmt |
#define | MODULE_NAME "ov519" |
#define | CONEX_CAM |
#define | BRIDGE_OV511 0 |
#define | BRIDGE_OV511PLUS 1 |
#define | BRIDGE_OV518 2 |
#define | BRIDGE_OV518PLUS 3 |
#define | BRIDGE_OV519 4 /* = ov530 */ |
#define | BRIDGE_OVFX2 5 |
#define | BRIDGE_W9968CF 6 |
#define | BRIDGE_MASK 7 |
#define | BRIDGE_INVERT_LED 8 |
#define | QUALITY_MIN 50 |
#define | QUALITY_MAX 70 |
#define | QUALITY_DEF 50 |
#define | R51x_FIFO_PSIZE 0x30 /* 2 bytes wide w/ OV518(+) */ |
#define | R51x_SYS_RESET 0x50 |
#define | OV511_RESET_OMNICE 0x08 |
#define | R51x_SYS_INIT 0x53 |
#define | R51x_SYS_SNAP 0x52 |
#define | R51x_SYS_CUST_ID 0x5f |
#define | R51x_COMP_LUT_BEGIN 0x80 |
#define | R511_CAM_DELAY 0x10 |
#define | R511_CAM_EDGE 0x11 |
#define | R511_CAM_PXCNT 0x12 |
#define | R511_CAM_LNCNT 0x13 |
#define | R511_CAM_PXDIV 0x14 |
#define | R511_CAM_LNDIV 0x15 |
#define | R511_CAM_UV_EN 0x16 |
#define | R511_CAM_LINE_MODE 0x17 |
#define | R511_CAM_OPTS 0x18 |
#define | R511_SNAP_FRAME 0x19 |
#define | R511_SNAP_PXCNT 0x1a |
#define | R511_SNAP_LNCNT 0x1b |
#define | R511_SNAP_PXDIV 0x1c |
#define | R511_SNAP_LNDIV 0x1d |
#define | R511_SNAP_UV_EN 0x1e |
#define | R511_SNAP_OPTS 0x1f |
#define | R511_DRAM_FLOW_CTL 0x20 |
#define | R511_FIFO_OPTS 0x31 |
#define | R511_I2C_CTL 0x40 |
#define | R511_SYS_LED_CTL 0x55 /* OV511+ only */ |
#define | R511_COMP_EN 0x78 |
#define | R511_COMP_LUT_EN 0x79 |
#define | R518_GPIO_OUT 0x56 /* OV518(+) only */ |
#define | R518_GPIO_CTL 0x57 /* OV518(+) only */ |
#define | OV519_R10_H_SIZE 0x10 |
#define | OV519_R11_V_SIZE 0x11 |
#define | OV519_R12_X_OFFSETL 0x12 |
#define | OV519_R13_X_OFFSETH 0x13 |
#define | OV519_R14_Y_OFFSETL 0x14 |
#define | OV519_R15_Y_OFFSETH 0x15 |
#define | OV519_R16_DIVIDER 0x16 |
#define | OV519_R20_DFR 0x20 |
#define | OV519_R25_FORMAT 0x25 |
#define | OV519_R51_RESET1 0x51 |
#define | OV519_R54_EN_CLK1 0x54 |
#define | OV519_R57_SNAPSHOT 0x57 |
#define | OV519_GPIO_DATA_OUT0 0x71 |
#define | OV519_GPIO_IO_CTRL0 0x72 |
#define | OVFX2_BULK_SIZE (13 * 4096) |
#define | R51x_I2C_W_SID 0x41 |
#define | R51x_I2C_SADDR_3 0x42 |
#define | R51x_I2C_SADDR_2 0x43 |
#define | R51x_I2C_R_SID 0x44 |
#define | R51x_I2C_DATA 0x45 |
#define | R518_I2C_CTL 0x47 /* OV518(+) only */ |
#define | OVFX2_I2C_ADDR 0x00 |
#define | OV7xx0_SID 0x42 |
#define | OV_HIRES_SID 0x60 /* OV9xxx / OV2xxx / OV3xxx */ |
#define | OV8xx0_SID 0xa0 |
#define | OV6xx0_SID 0xc0 |
#define | OV7610_REG_GAIN 0x00 /* gain setting (5:0) */ |
#define | OV7610_REG_BLUE 0x01 /* blue channel balance */ |
#define | OV7610_REG_RED 0x02 /* red channel balance */ |
#define | OV7610_REG_SAT 0x03 /* saturation */ |
#define | OV8610_REG_HUE 0x04 /* 04 reserved */ |
#define | OV7610_REG_CNT 0x05 /* Y contrast */ |
#define | OV7610_REG_BRT 0x06 /* Y brightness */ |
#define | OV7610_REG_COM_C 0x14 /* misc common regs */ |
#define | OV7610_REG_ID_HIGH 0x1c /* manufacturer ID MSB */ |
#define | OV7610_REG_ID_LOW 0x1d /* manufacturer ID LSB */ |
#define | OV7610_REG_COM_I 0x29 /* misc settings */ |
#define | OV7670_R00_GAIN 0x00 /* Gain lower 8 bits (rest in vref) */ |
#define | OV7670_R01_BLUE 0x01 /* blue gain */ |
#define | OV7670_R02_RED 0x02 /* red gain */ |
#define | OV7670_R03_VREF 0x03 /* Pieces of GAIN, VSTART, VSTOP */ |
#define | OV7670_R04_COM1 0x04 /* Control 1 */ |
#define | OV7670_R0C_COM3 0x0c /* Control 3 */ |
#define | OV7670_R0D_COM4 0x0d /* Control 4 */ |
#define | OV7670_R0E_COM5 0x0e /* All "reserved" */ |
#define | OV7670_R0F_COM6 0x0f /* Control 6 */ |
#define | OV7670_R10_AECH 0x10 /* More bits of AEC value */ |
#define | OV7670_R11_CLKRC 0x11 /* Clock control */ |
#define | OV7670_R12_COM7 0x12 /* Control 7 */ |
#define | OV7670_COM7_FMT_VGA 0x00 |
#define | OV7670_COM7_FMT_QVGA 0x10 /* QVGA format */ |
#define | OV7670_COM7_FMT_MASK 0x38 |
#define | OV7670_COM7_RESET 0x80 /* Register reset */ |
#define | OV7670_R13_COM8 0x13 /* Control 8 */ |
#define | OV7670_COM8_AEC 0x01 /* Auto exposure enable */ |
#define | OV7670_COM8_AWB 0x02 /* White balance enable */ |
#define | OV7670_COM8_AGC 0x04 /* Auto gain enable */ |
#define | OV7670_COM8_BFILT 0x20 /* Band filter enable */ |
#define | OV7670_COM8_AECSTEP 0x40 /* Unlimited AEC step size */ |
#define | OV7670_COM8_FASTAEC 0x80 /* Enable fast AGC/AEC */ |
#define | OV7670_R14_COM9 0x14 /* Control 9 - gain ceiling */ |
#define | OV7670_R15_COM10 0x15 /* Control 10 */ |
#define | OV7670_R17_HSTART 0x17 /* Horiz start high bits */ |
#define | OV7670_R18_HSTOP 0x18 /* Horiz stop high bits */ |
#define | OV7670_R19_VSTART 0x19 /* Vert start high bits */ |
#define | OV7670_R1A_VSTOP 0x1a /* Vert stop high bits */ |
#define | OV7670_R1E_MVFP 0x1e /* Mirror / vflip */ |
#define | OV7670_MVFP_VFLIP 0x10 /* vertical flip */ |
#define | OV7670_MVFP_MIRROR 0x20 /* Mirror image */ |
#define | OV7670_R24_AEW 0x24 /* AGC upper limit */ |
#define | OV7670_R25_AEB 0x25 /* AGC lower limit */ |
#define | OV7670_R26_VPT 0x26 /* AGC/AEC fast mode op region */ |
#define | OV7670_R32_HREF 0x32 /* HREF pieces */ |
#define | OV7670_R3A_TSLB 0x3a /* lots of stuff */ |
#define | OV7670_R3B_COM11 0x3b /* Control 11 */ |
#define | OV7670_COM11_EXP 0x02 |
#define | OV7670_COM11_HZAUTO 0x10 /* Auto detect 50/60 Hz */ |
#define | OV7670_R3C_COM12 0x3c /* Control 12 */ |
#define | OV7670_R3D_COM13 0x3d /* Control 13 */ |
#define | OV7670_COM13_GAMMA 0x80 /* Gamma enable */ |
#define | OV7670_COM13_UVSAT 0x40 /* UV saturation auto adjustment */ |
#define | OV7670_R3E_COM14 0x3e /* Control 14 */ |
#define | OV7670_R3F_EDGE 0x3f /* Edge enhancement factor */ |
#define | OV7670_R40_COM15 0x40 /* Control 15 */ |
#define | OV7670_R41_COM16 0x41 /* Control 16 */ |
#define | OV7670_COM16_AWBGAIN 0x08 /* AWB gain enable */ |
#define | OV7670_R55_BRIGHT 0x55 /* Brightness */ |
#define | OV7670_R56_CONTRAS 0x56 /* Contrast control */ |
#define | OV7670_R69_GFIX 0x69 /* Fix gain control */ |
#define | OV7670_R9F_HAECC1 0x9f /* Hist AEC/AGC control 1 */ |
#define | OV7670_RA0_HAECC2 0xa0 /* Hist AEC/AGC control 2 */ |
#define | OV7670_RA5_BD50MAX 0xa5 /* 50hz banding step limit */ |
#define | OV7670_RA6_HAECC3 0xa6 /* Hist AEC/AGC control 3 */ |
#define | OV7670_RA7_HAECC4 0xa7 /* Hist AEC/AGC control 4 */ |
#define | OV7670_RA8_HAECC5 0xa8 /* Hist AEC/AGC control 5 */ |
#define | OV7670_RA9_HAECC6 0xa9 /* Hist AEC/AGC control 6 */ |
#define | OV7670_RAA_HAECC7 0xaa /* Hist AEC/AGC control 7 */ |
#define | OV7670_RAB_BD60MAX 0xab /* 60hz banding step limit */ |
#define | HDRSZ 16 |
Functions | |
MODULE_AUTHOR ("Jean-Francois Moine <http://moinejf.free.fr>") | |
MODULE_DESCRIPTION ("OV519 USB Camera Driver") | |
MODULE_LICENSE ("GPL") | |
MODULE_DEVICE_TABLE (usb, device_table) | |
module_usb_driver (sd_driver) | |
module_param (frame_rate, int, 0644) | |
MODULE_PARM_DESC (frame_rate,"Frame rate (5, 10, 15, 20 or 30 fps)") | |
#define HDRSZ 16 |
#define OV7670_COM13_UVSAT 0x40 /* UV saturation auto adjustment */ |
#define OV7670_COM8_AECSTEP 0x40 /* Unlimited AEC step size */ |
#define OV7670_R00_GAIN 0x00 /* Gain lower 8 bits (rest in vref) */ |
#define OV7670_R03_VREF 0x03 /* Pieces of GAIN, VSTART, VSTOP */ |
#define OV7670_R26_VPT 0x26 /* AGC/AEC fast mode op region */ |
#define OV7670_RA5_BD50MAX 0xa5 /* 50hz banding step limit */ |
#define OV7670_RAB_BD60MAX 0xab /* 60hz banding step limit */ |
OV519 driver
Copyright (C) 2008-2011 Jean-François Moine moine Copyright (C) 2009 Hans de Goede jf@f ree.f rhdego ede@ redha t.co m
This module is adapted from the ov51x-jpeg package, which itself was adapted from the ov511 driver.
Original copyright for the ov511 driver is:
Copyright (c) 1999-2006 Mark W. McClelland Support for OV519, OV8610 Copyright (c) 2003 Joerg Heckenbach Many improvements by Bret Wallach bwall Color fixes by by Orion Sky Lawlor ac1@ san.r r.co molawl (2/26/2000) OV7620 fixes by Charl P. Botha or@a cm.or gcpbot Changes by Claudio Matsuoka ha@i eee.o rgclaud io@c onect iva. com
ov51x-jpeg original copyright is:
Copyright (c) 2004-2007 Romain Beauxis toots Support for OV7670 sensors was contributed by Sam Skipsey @ras tagee ks.o rgaoanl a@ya hoo.c om
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, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
enum sensors |
MODULE_AUTHOR | ( | "Jean-Francois Moine <http://moinejf.free.fr>" | ) |
MODULE_DESCRIPTION | ( | "OV519 USB Camera Driver" | ) |
MODULE_DEVICE_TABLE | ( | usb | , |
device_table | |||
) |
MODULE_LICENSE | ( | "GPL" | ) |
module_param | ( | frame_rate | , |
int | , | ||
0644 | |||
) |
module_usb_driver | ( | sd_driver | ) |