Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/drivers/media/usb/gspca/m5602/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 3 kB image not shown  

Quelle  m5602_mt9m111.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Driver for the mt9m111 sensor
 *
 * Copyright (C) 2008 Erik Andrén
 * Copyright (C) 2007 Ilyes Gouta. Based on the m5603x Linux Driver Project.
 * Copyright (C) 2005 m5603x Linux Driver Project <m5602@x3ng.com.br>
 *
 * Portions of code to USB interface and ALi driver software,
 * Copyright (c) 2006 Willem Duinker
 * v4l2 interface modeled after the V4L2 driver
 * for SN9C10x PC Camera Controllers
 *
 * Some defines taken from the mt9m111 sensor driver
 * Copyright (C) 2008, Robert Jarzmik <robert.jarzmik@free.fr>
 */


#ifndef M5602_MT9M111_H_
#define M5602_MT9M111_H_

#include "m5602_sensor.h"

/*****************************************************************************/

#define MT9M111_SC_CHIPVER   0x00
#define MT9M111_SC_ROWSTART   0x01
#define MT9M111_SC_COLSTART   0x02
#define MT9M111_SC_WINDOW_HEIGHT  0x03
#define MT9M111_SC_WINDOW_WIDTH   0x04
#define MT9M111_SC_HBLANK_CONTEXT_B  0x05
#define MT9M111_SC_VBLANK_CONTEXT_B  0x06
#define MT9M111_SC_HBLANK_CONTEXT_A  0x07
#define MT9M111_SC_VBLANK_CONTEXT_A  0x08
#define MT9M111_SC_SHUTTER_WIDTH  0x09
#define MT9M111_SC_ROW_SPEED   0x0a
#define MT9M111_SC_EXTRA_DELAY   0x0b
#define MT9M111_SC_SHUTTER_DELAY  0x0c
#define MT9M111_SC_RESET   0x0d
#define MT9M111_SC_R_MODE_CONTEXT_B  0x20
#define MT9M111_SC_R_MODE_CONTEXT_A  0x21
#define MT9M111_SC_FLASH_CONTROL  0x23
#define MT9M111_SC_GREEN_1_GAIN   0x2b
#define MT9M111_SC_BLUE_GAIN   0x2c
#define MT9M111_SC_RED_GAIN   0x2d
#define MT9M111_SC_GREEN_2_GAIN   0x2e
#define MT9M111_SC_GLOBAL_GAIN   0x2f

#define MT9M111_CONTEXT_CONTROL   0xc8
#define MT9M111_PAGE_MAP   0xf0
#define MT9M111_BYTEWISE_ADDRESS  0xf1

#define MT9M111_CP_OPERATING_MODE_CTL  0x06
#define MT9M111_CP_LUMA_OFFSET   0x34
#define MT9M111_CP_LUMA_CLIP   0x35
#define MT9M111_CP_OUTPUT_FORMAT_CTL2_CONTEXT_A 0x3a
#define MT9M111_CP_LENS_CORRECTION_1  0x3b
#define MT9M111_CP_DEFECT_CORR_CONTEXT_A 0x4c
#define MT9M111_CP_DEFECT_CORR_CONTEXT_B 0x4d
#define MT9M111_CP_OUTPUT_FORMAT_CTL2_CONTEXT_B 0x9b
#define MT9M111_CP_GLOBAL_CLK_CONTROL  0xb3

#define MT9M111_CC_AUTO_EXPOSURE_PARAMETER_18   0x65
#define MT9M111_CC_AWB_PARAMETER_7  0x28

#define MT9M111_SENSOR_CORE   0x00
#define MT9M111_COLORPIPE   0x01
#define MT9M111_CAMERA_CONTROL   0x02

#define MT9M111_RESET    (1 << 0)
#define MT9M111_RESTART    (1 << 1)
#define MT9M111_ANALOG_STANDBY   (1 << 2)
#define MT9M111_CHIP_ENABLE   (1 << 3)
#define MT9M111_CHIP_DISABLE   (0 << 3)
#define MT9M111_OUTPUT_DISABLE   (1 << 4)
#define MT9M111_SHOW_BAD_FRAMES   (1 << 0)
#define MT9M111_RESTART_BAD_FRAMES  (1 << 1)
#define MT9M111_SYNCHRONIZE_CHANGES  (1 << 7)

#define MT9M111_RMB_OVER_SIZED   (1 << 0)
#define MT9M111_RMB_MIRROR_ROWS   (1 << 0)
#define MT9M111_RMB_MIRROR_COLS   (1 << 1)
#define MT9M111_RMB_ROW_SKIP_2X   (1 << 2)
#define MT9M111_RMB_COLUMN_SKIP_2X  (1 << 3)
#define MT9M111_RMB_ROW_SKIP_4X   (1 << 4)
#define MT9M111_RMB_COLUMN_SKIP_4X  (1 << 5)

#define MT9M111_COLOR_MATRIX_BYPASS  (1 << 4)
#define MT9M111_SEL_CONTEXT_B   (1 << 3)

#define MT9M111_TRISTATE_PIN_IN_STANDBY  (1 << 1)
#define MT9M111_SOC_SOFT_STANDBY  (1 << 0)

#define MT9M111_2D_DEFECT_CORRECTION_ENABLE (1 << 0)

#define INITIAL_MAX_GAIN   64
#define MT9M111_DEFAULT_GAIN   283
#define MT9M111_GREEN_GAIN_DEFAULT  0x20
#define MT9M111_BLUE_GAIN_DEFAULT  0x20
#define MT9M111_RED_GAIN_DEFAULT  0x20

/*****************************************************************************/

/* Kernel module parameters */
extern int force_sensor;
extern bool dump_sensor;

int mt9m111_probe(struct sd *sd);
int mt9m111_init(struct sd *sd);
int mt9m111_init_controls(struct sd *sd);
int mt9m111_start(struct sd *sd);
void mt9m111_disconnect(struct sd *sd);

static const struct m5602_sensor mt9m111 = {
 .name = "MT9M111",

 .i2c_slave_id = 0xba,
 .i2c_regW = 2,

 .probe = mt9m111_probe,
 .init = mt9m111_init,
 .init_controls = mt9m111_init_controls,
 .disconnect = mt9m111_disconnect,
 .start = mt9m111_start,
};
#endif

Messung V0.5
C=97 H=100 G=98

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.