Files
arcs/arcs-sdk/drivers/lisa_camera/sensors/inc/gc0310_settings.h
2026-08-13 16:50:52 +08:00

2518 lines
60 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef _GC0310_SETTINGS_H_
#define _GC0310_SETTINGS_H_
#include <stdint.h>
#include <stdbool.h>
#include "gc0310_regs.h"
#define REG_DLY 0xff
//#define CONFIG_DUAL_SPI 1
/* Initialization sequence for QVGA resolution (320x240) in YUV format */
/* 4lane pclk=3.03MHz V_active:260.5ms V_blank:396.7ms H_active:434.6us H_blank:652.5us */
static const uint8_t gc0310_default_regs[][2] = {
{0xfe,0xf0 },
{0xfe,0xf0 },
{0xfe,0x00 },
{0xfc,0x16 }, //--4e
{0xfc,0x16 }, //--4e -- [0]apwd [6]regf_clk_gate
{0xf2,0x07 }, //--sync output
#ifdef CONFIG_DUAL_SPI
{0xf3,0x83 }, //--ff--1f--01 data output 0x83-2wires 0x8f-4wires
#else
{0xf3,0x8f }, //--ff--1f--01 data output 0x83-2wires 0x8f-4wires
#endif
{0xf5,0x07 }, //--sck_dely
{0xf7,0x18 }, //--f8/ 88 pclk = 1/2 mclk
{0xf8,0x00 }, //-- 00
{0xf9,0x4f }, //--0f--01 4d
{0xfa,0x32 }, //--32
{0xfc,0xce },
{0xfd,0x00 },
//------------------------------------------------/
//------------------ ISP reg ------------------/
//------------------------------------------------/
// 320 * 240
{0x55,0x00 }, // height[8]
{0x56,0xf0 }, // height[7:0]
{0x57,0x01 }, // width[9:8]
{0x58,0x40 }, // width[7:0]
// // somehow, the highest bit of each byte is reversed, and maximum 0xfe
// {0xda,0xda }, // fixed Cb, set to 0xda will output 0x5a
// {0xdb,0xda }, // fixed Cr, set to 0xda will output 0x5a
// {0x43,0x02 }, // enable fixed CbCr
//--------------------/ SPI --------------------
//------------------------------------------------/
{0xfe,0x03 },
{0x01,0x00 },
{0x02,0x00 },
{0x10,0x00 },
{0x15,0x00 },
{0x17,0x00 }, //--01--03
{0x04,0x10 }, //--fifo full level
{0x40,0x00 },
{0x52,0x83 }, //--bit0-CPOL;bit1-CPHA bit7:MSB first
#ifdef CONFIG_DUAL_SPI
{0x53,0x24 }, //--24 // bus width 0x20-spi 0x24-dual_spi 0x28-quad_spi
#else
{0x53,0x28 }, //--24 // bus width 0x20-spi 0x24-dual_spi 0x28-quad_spi
#endif
{0x54,0x20 },
{0x55,0x20 }, //--QQ--01
{0x5a,0x00 }, //--00 --yuv
{0x5b,0x40 },
{0x5c,0x01 },
{0x5d,0xf0 },
{0x5e,0x00 },
{0x51,0x03 },
{0x65,0xFF }, //SYNC HEADER[23:16]
{0x66,0xFF }, //SYNC HEADER[15:8]
{0x67,0xFF }, //SYNC HEADER[7:0]
{0x60,0x11 }, //SYNC CODE0 sof
{0x61,0x22 }, //SYNC CODE1 sol
{0x62,0x44 }, //SYNC CODE2 eol
{0x63,0x88 }, //SYNC CODE3 eof
//{0x60,0xAB }, //SYNC CODE0 sof
//{0x61,0x80 }, //SYNC CODE1 sol
//{0x62,0x9D }, //SYNC CODE2 eol
//{0x63,0xB6 }, //SYNC CODE3 eof
// sync_code = {0xFF0000AB, 0xFF0000B6, 0xFF000080, 0xFF00009D}, // sof/eof/sol/eol
//{0x64,0x0C }, //bit3:BT656
{0xfe,0x00 },
};
/* csdn_sdr 2lane pclk=5.88MHz V_active:102.1ms V_blank:123.9ms H_active:221us H_blank:635us */
static const uint8_t gc0310_default_regs01[][2] = {
{0xfe,0xf0},//
{0xfe,0xf0},//
{0xfe,0x00},//
{0xfc,0x16},// --4e
{0xfc,0x16},// --4e -- [0]apwd [6]regf_clk_gate
{0xf2,0x07},// --sync output
{0xf3,0x83},// --ff--1f--01 data output
{0xf5,0x07},// --sck_dely
{0xf7,0x88},// --f8/ 88
{0xf8,0x00},// -- 00
{0xf9,0x4f},// --0f--01 4d
{0xfa,0x32},// --32
{0xfc,0xce},//
{0xfd,0x00},//
//-------------------------------------/
//-----/ CISCTL reg ----------------/
//-------------------------------------/
{0x00,0x2f},//
{0x01,0x0f},//
{0x02,0x04},//
{0x03,0x02},//
{0x04,0x12},//
{0x09,0x00},//
{0x0a,0x00},//
{0x0b,0x00},//
{0x0c,0x02},//--04
{0x0d,0x01},//
{0x0e,0xec},//--e8
{0x0f,0x02},//
{0x10,0x88},//
{0x16,0x00},//
{0x17,0x14},// --mirror
{0x18,0x6a},//--1a
{0x19,0x14},//
{0x1b,0x48},//
{0x1c,0x1c},//
{0x1e,0x6b},//
{0x1f,0x28},//
{0x20,0x8b},//--0x89 travis20140801
{0x21,0x49},//
{0x22,0xb0},//
{0x23,0x04},//
{0x24,0xff},//
{0x34,0x20},//
//-------------------------------------/
//--------- BLK --------------------
//-------------------------------------/
{0x26,0x23},//
{0x28,0xff},//
{0x29,0x00},//
{0x32,0x00},//
{0x33,0x10},//
{0x37,0x20},//
{0x38,0x10},//
{0x47,0x80},//
{0x4e,0x0f},//--66
{0xa8,0x02},//
{0xa9,0x80},//
//-------------------------------------/
//------- ISP reg ------------------/
//-------------------------------------/
{0x40,0xff},//
{0x41,0x21},//
{0x42,0xcf},//
{0x44,0x02},//
{0x45,0xa8},//
{0x46,0x02},// --sync
{0x4a,0x11},//
{0x4b,0x01},//
{0x4c,0x20},//
{0x4d,0x05},//
{0x4f,0x01},//
{0x50,0x01},//
{0x55,0x00},//
{0x56,0xf0},//
{0x57,0x01},//
{0x58,0x40},//
//-------------------------------------/
//-------/ GAIN --------------------
//-------------------------------------/
{0x70,0x70},//
{0x5a,0x84},//
{0x5b,0xc9},//
{0x5c,0xed},//
{0x77,0x74},//
{0x78,0x40},//
{0x79,0x5f},//
//-------------------------------------/
//-------/ DNDD --------------------/
//-------------------------------------/
{0x82,0x08},//--0x14
{0x83,0x0b},//
{0x89,0xf0},//
//-------------------------------------/
//------- EEINTP --------------------
//-------------------------------------/
{0x8f,0xaa},//
{0x90,0x8c},//
{0x91,0x90},//
{0x92,0x03},//
{0x93,0x03},//
{0x94,0x05},//
{0x95,0x43},// --0x65
{0x96,0xf0},//
//-------------------------------------/
//---------/ ASDE --------------------
//-------------------------------------/
{0xfe,0x00},//
{0x9a,0x20},//
{0x9b,0x80},//
{0x9c,0x40},//
{0x9d,0x80},//
{0xa1,0x30},//
{ 0xa2,0x3},//
{0xa4,0x30},//
{0xa5,0x30},//
{0xaa,0x10},//
{0xac,0x22},//
//-------------------------------------/
//-------/ GAMMA ------------------/
//-------------------------------------/
{0xfe,0x00},//--default
{0xbf,0x08},//
{0xc0,0x16},//
{0xc1,0x28},//
{0xc2,0x41},//
{0xc3,0x5a},//
{0xc4,0x6c},//
{0xc5,0x7a},//
{0xc6,0x96},//
{0xc7,0xac},//
{0xc8,0xbc},//
{0xc9,0xc9},//
{0xca,0xd3},//
{0xcb,0xdd},//
{0xcc,0xe5},//
{0xcd,0xf1},//
{0xce,0xfa},//
{0xcf,0xff},//
//-------------------------------------/
//-------/ YCP ----------------------
//-------------------------------------/
{0xd0,0x40},//
{0xd1,0x38},// --0x34
{0xd2,0x38},// --0x34
{0xd3,0x50},//--0x40
{0xd6,0xf2},//
{0xd7,0x1b},//
{0xd8,0x18},//
{0xdd,0x03},//
//-------------------------------------/
//--------- AEC --------------------
//-------------------------------------/
{0xfe,0x01},//
{0x05,0x30},//
{0x06,0x75},//
{0x07,0x40},//
{0x08,0xb0},//
{0x0a,0xc5},//
{0x0b,0x11},//
{0x0c,0x00},//
{0x12,0x52},//
{0x13,0x38},//
{0x18,0x95},//
{0x19,0x96},//
{0x1f,0x20},//
{0x20,0xc0},//
{0x3e,0x40},//
{0x3f,0x57},//
{0x40,0x7d},//
{0x03,0x60},//
{0x44,0x02},//
//-------------------------------------/
//--------- AWB --------------------
//-------------------------------------/
{0xfe,0x01},//
{0x1c,0x91},//
{0x21,0x15},//
{0x50,0x80},//
{0x56,0x04},//
{0x59,0x08},//
{0x5b,0x02},//
{0x61,0x8d},//
{0x62,0xa7},//
{0x63,0xd0},//
{0x65,0x06},//
{0x66,0x06},//
{0x67,0x84},//
{0x69,0x08},//
{0x6a,0x25},//
{0x6b,0x01},//
{0x6c,0x00},//
{0x6d,0x02},//
{0x6e,0xf0},//
{0x6f,0x80},//
{0x76,0x80},//
{0x78,0xaf},//
{0x79,0x75},//
{0x7a,0x40},//
{0x7b,0x50},//
{0x7c,0x0c},//
{0x90,0xc9},//--stable AWB
{0x91,0xbe},//
{0x92,0xe2},//
{0x93,0xc9},//
{0x95,0x1b},//
{0x96,0xe2},//
{0x97,0x49},//
{0x98,0x1b},//
{0x9a,0x49},//
{0x9b,0x1b},//
{0x9c,0xc3},//
{0x9d,0x49},//
{0x9f,0xc7},//
{0xa0,0xc8},//
{0xa1,0x00},//
{0xa2,0x00},//
{0x86,0x00},//
{0x87,0x00},//
{0x88,0x00},//
{0x89,0x00},//
{0xa4,0xb9},//
{0xa5,0xa0},//
{0xa6,0xba},//
{0xa7,0x92},//
{0xa9,0xba},//
{0xaa,0x80},//
{0xab,0x9d},//
{0xac,0x7f},//
{0xae,0xbb},//
{0xaf,0x9d},//
{0xb0,0xc8},//
{0xb1,0x97},//
{0xb3,0xb7},//
{0xb4,0x7f},//
{0xb5,0x00},//
{0xb6,0x00},//
{0x8b,0x00},//
{0x8c,0x00},//
{0x8d,0x00},//
{0x8e,0x00},//
{0x94,0x55},//
{0x99,0xa6},//
{0x9e,0xaa},//
{0xa3,0x0a},//
{0x8a,0x00},//
{0xa8,0x55},//
{0xad,0x55},//
{0xb2,0x55},//
{0xb7,0x05},//
{0x8f,0x00},//
{0xb8,0xcb},//
{0xb9,0x9b},//
//-------------------------------------/
//--------- CC ------------------------
//-------------------------------------/
{0xfe,0x01},//
{0xd0,0x38},//--skin red
{0xd1,0x00},//
{0xd2,0x02},//
{0xd3,0x04},//
{0xd4,0x38},//
{0xd5,0x12},//
{0xd6,0x30},//
{0xd7,0x00},//
{0xd8,0x0a},//
{0xd9,0x16},//
{0xda,0x39},//
{0xdb,0xf8},//
//-------------------------------------/
//--------- LSC --------------------
//-------------------------------------/
{0xfe,0x01},//
{0xc1,0x3c},//
{0xc2,0x50},//
{0xc3,0x00},//
{0xc4,0x40},//
{0xc5,0x30},//
{0xc6,0x30},//
{0xc7,0x10},//
{0xc8,0x00},//
{0xc9,0x00},//
{0xdc,0x20},//
{0xdd,0x10},//
{0xdf,0x00},//
{0xde,0x00},//
//-------------------------------------/
//-------/ Histogram ----------------/
//-------------------------------------/
{0x01,0x10},//
{0x0b,0x31},//
{0x0e,0x50},//
{0x0f,0x0f},//
{0x10,0x6e},//
{0x12,0xa0},//
{0x15,0x60},//
{0x16,0x60},//
{0x17,0xe0},//
//-------------------------------------/
//--- Measure Window --------------/
//-------------------------------------/
{0xcc,0x0c},//
{0xcd,0x10},//
{0xce,0xa0},//
{0xcf,0xe6},//
//-------------------------------------/
//-----/ dark sun ------------------
//-------------------------------------/
{0x45,0xf7},//
{0x46,0xff},//
{0x47,0x15},//
{0x48,0x03},//
{0x4f,0x60},//
//-------------------------------------/
//-------/ banding ------------------/
//-------------------------------------/
{0xfe,0x00},//
{0x05,0x01},//
{0x06,0x12},// --HB
{0x07,0x00},//
{0x08,0x1c},// --VB
{0xfe,0x01},//
{0x25,0x00},// --step
{0x26,0x1f},//
{0x27,0x01},// --6fps
{0x28,0xf0},//
{0x29,0x01},// --6fps
{0x2a,0xf0},//
{0x2b,0x01},// --6fps
{0x2c,0xf0},//
{0x2d,0x03},// --3.3fps
{0x2e,0xe0},//
{0x3c,0x20},//
//---------/ SPI --------------------
//-------------------------------------/
{0xfe,0x03},//
{0x01,0x00},//
{0x02,0x00},//
{0x10,0x00},//
{0x15,0x00},//
{0x17,0x00},// --01--03
{0x04,0x10},//--fifo full level
{0x40,0x00},//
{0x52,0x82},// --zwb 02<30>ij<EFBFBD>da
{0x53,0x24},// --24
{0x54,0x20},//
{0x55,0x20},// --QQ--01
{0x5a,0x00},// --00 --yuv
{0x5b,0x40},//
{0x5c,0x01},//
{0x5d,0xf0},//
{0x5e,0x00},//
{0x51,0x03},//
{0xfe,0x00},//
};
/* csdn_ddr 2lane pclk=5.88MHz V_active:173.56ms V_blank:216.36ms H_active:317us H_blank:408us */
static const uint8_t gc0310_default_regs02[][2] = {
{0xfe,0xf0},
{0xfe,0xf0},
{0xfe,0x00},
{0xfc,0x16},
{0xfc,0x16},
{0xf2,0x07},
{0xf3,0x83},
{0xf5,0x07},
{0xf7,0x89},
{0xf8,0x01},
{0xf9,0x4f},
{0xfa,0x11},
{0xfc,0xce},
{0xfd,0x00},
{0x00,0x2f},
{0x01,0x0f},
{0x02,0x04},
{0x03,0x02},
{0x04,0x12},
{0x09,0x00},
{0x0a,0x00},
{0x0b,0x00},
{0x0c,0x04},
{0x0d,0x01},
{0x0e,0xe8},
{0x0f,0x02},
{0x10,0x88},
{0x16,0x00},
{0x17,0x14},
{0x18,0x1a},
{0x19,0x14},
{0x1b,0x48},
{0x1c,0x6c},
{0x1e,0x6b},
{0x1f,0x28},
{0x20,0x8b},
{0x21,0x49},
{0x22,0xd0},
{0x23,0x04},
{0x24,0xff},
{0x34,0x20},
{0x26,0x23},
{0x28,0xff},
{0x29,0x00},
{0x32,0x04},
{0x33,0x10},
{0x37,0x20},
{0x38,0x10},
{0x47,0x80},
{0x4e,0x66},
{0xa8,0x02},
{0xa9,0x80},
{0x40,0xff},
{0x41,0x21},
{0x42,0xcf},
{0x44,0x02},
{0x45,0xa8},
{0x46,0x02},
{0x4a,0x11},
{0x4b,0x01},
{0x4c,0x20},
{0x4d,0x05},
{0x4f,0x01},
{0x50,0x01},
{0x55,0x01},
{0x56,0xe0},
{0x57,0x02},
{0x58,0x80},
{0x70,0x70},
{0x5a,0x84},
{0x5b,0xc9},
{0x5c,0xed},
{0x77,0x74},
{0x78,0x40},
{0x79,0x5f},
{0x82,0x08},
{0x83,0x0b},
{0x89,0xf0},
{0x8f,0xaa},
{0x90,0x8c},
{0x91,0x90},
{0x92,0x03},
{0x93,0x03},
{0x94,0x05},
{0x95,0x43},
{0x96,0xf0},
{0xfe,0x00},
{0x9a,0x20},
{0x9b,0x80},
{0x9c,0x40},
{0x9d,0x80},
{0xa1,0x30},
{0xa2,0x32},
{0xa4,0x80},
{0xa5,0x28},
{0xaa,0x30},
{0xac,0x22},
{0xfe,0x00},
{0xbf,0x08},
{0xc0,0x16},
{0xc1,0x28},
{0xc2,0x41},
{0xc3,0x5a},
{0xc4,0x6c},
{0xc5,0x7a},
{0xc6,0x96},
{0xc7,0xac},
{0xc8,0xbc},
{0xc9,0xc9},
{0xca,0xd3},
{0xcb,0xdd},
{0xcc,0xe5},
{0xcd,0xf1},
{0xce,0xfa},
{0xcf,0xff},
{0xd0,0x40},
{0xd1,0x38},
{0xd2,0x38},
{0xd3,0x50},
{0xd6,0xf2},
{0xd7,0x1b},
{0xd8,0x18},
{0xdd,0x03},
{0xfe,0x01},
{0x05,0x30},
{0x06,0x75},
{0x07,0x40},
{0x08,0xb0},
{0x0a,0xc5},
{0x0b,0x11},
{0x0c,0x00},
{0x12,0x52},
{0x13,0x38},
{0x18,0x95},
{0x19,0x96},
{0x1f,0x20},
{0x20,0xc0},
{0x3e,0x40},
{0x3f,0x57},
{0x40,0x7d},
{0x03,0x60},
{0x44,0x02},
{0xfe,0x01},
{0x1c,0x91},
{0x21,0x15},
{0x50,0x80},
{0x56,0x04},
{0x59,0x08},
{0x5b,0x02},
{0x61,0x8d},
{0x62,0xa7},
{0x63,0xd0},
{0x65,0x06},
{0x66,0x06},
{0x67,0x84},
{0x69,0x08},
{0x6a,0x25},
{0x6b,0x01},
{0x6c,0x00},
{0x6d,0x02},
{0x6e,0xf0},
{0x6f,0x80},
{0x76,0x80},
{0x78,0xaf},
{0x79,0x75},
{0x7a,0x40},
{0x7b,0x50},
{0x7c,0x0c},
{0x90,0xc9},
{0x91,0xbe},
{0x92,0xe2},
{0x93,0xc9},
{0x95,0x1b},
{0x96,0xe2},
{0x97,0x49},
{0x98,0x1b},
{0x9a,0x49},
{0x9b,0x1b},
{0x9c,0xc3},
{0x9d,0x49},
{0x9f,0xc7},
{0xa0,0xc8},
{0xa1,0x00},
{0xa2,0x00},
{0x86,0x00},
{0x87,0x00},
{0x88,0x00},
{0x89,0x00},
{0xa4,0xb9},
{0xa5,0xa0},
{0xa6,0xba},
{0xa7,0x92},
{0xa9,0xba},
{0xaa,0x80},
{0xab,0x9d},
{0xac,0x7f},
{0xae,0xbb},
{0xaf,0x9d},
{0xb0,0xc8},
{0xb1,0x97},
{0xb3,0xb7},
{0xb4,0x7f},
{0xb5,0x00},
{0xb6,0x00},
{0x8b,0x00},
{0x8c,0x00},
{0x8d,0x00},
{0x8e,0x00},
{0x94,0x55},
{0x99,0xa6},
{0x9e,0xaa},
{0xa3,0x0a},
{0x8a,0x00},
{0xa8,0x55},
{0xad,0x55},
{0xb2,0x55},
{0xb7,0x05},
{0x8f,0x00},
{0xb8,0xcb},
{0xb9,0x9b},
{0xfe,0x01},
{0xd0,0x38},
{0xd1,0x00},
{0xd2,0x02},
{0xd3,0x04},
{0xd4,0x38},
{0xd5,0x12},
{0xd6,0x30},
{0xd7,0x00},
{0xd8,0x0a},
{0xd9,0x16},
{0xda,0x39},
{0xdb,0xf8},
{0xfe,0x01},
{0xc1,0x3c},
{0xc2,0x50},
{0xc3,0x00},
{0xc4,0x40},
{0xc5,0x30},
{0xc6,0x30},
{0xc7,0x10},
{0xc8,0x00},
{0xc9,0x00},
{0xdc,0x20},
{0xdd,0x10},
{0xdf,0x00},
{0xde,0x00},
{0x01,0x10},
{0x0b,0x31},
{0x0e,0x50},
{0x0f,0x0f},
{0x10,0x6e},
{0x12,0xa0},
{0x15,0x60},
{0x16,0x60},
{0x17,0xe0},
{0xcc,0x0c},
{0xcd,0x10},
{0xce,0xa0},
{0xcf,0xe6},
{0x45,0xf7},
{0x46,0xff},
{0x47,0x15},
{0x48,0x03},
{0x4f,0x60},
{0xfe,0x00},
{0x05,0x01},
{0x06,0x89},
{0x07,0x00},
{0x08,0x2a},
{0xfe,0x01},
{0x25,0x00},
{0x26,0x6d},
{0x27,0x01},
{0x28,0xb4},
{0x29,0x02},
{0x2a,0x8e},
{0x2b,0x02},
{0x2c,0xfb},
{0x2d,0x07},
{0x2e,0x3d},
{0x3c,0x20},
{0x50,0x01},
{0x51,0x00},
{0x52,0x78},
{0x53,0x00},
{0x54,0xa0},
{0x55,0x00},
{0x56,0xf0},
{0x57,0x01},
{0x58,0x40},
{0xfe,0x03},
{0x01,0x00},
{0x02,0x00},
{0x10,0x00},
{0x15,0x00},
{0x17,0x00},
{0x04,0x10},
{0x05,0x00},
{0x40,0x00},
{0x52,0xa0},
{0x53,0x24},
{0x54,0x20},
{0x55,0x20},
{0x5a,0x00},
{0x51,0x03},
{0x64,0x06},
{0xfe,0x00},
};
/* luat 2lane pclk=5.88MHz V_active:102.3ms V_blank:123.7ms H_active:432us H_blank:424us */
static const uint8_t gc0310_default_regs03[][2] = {
{0xfe,0xf0},
{0xfe,0xf0},
{0xfe,0x00},
{0xfc,0x16}, //4e
{0xfc,0x16}, //4e // [0]apwd [6]regf_clk_gate
{0xf2,0x07}, //sync output
{0xf3,0x83}, //ff//1f//01 data output
{0xf5,0x07}, //sck_dely
{0xf7,0x88}, //f8/ 88
{0xf8,0x00}, // 00
{0xf9,0x4f}, //0f//01 4d
{0xfa,0x32}, //32
{0xfc,0xce},
{0xfd,0x00},
/////////////////////////////////////////////////
///////////////// CISCTL reg /////////////////
/////////////////////////////////////////////////
#if 1//def DSS_AIR202_LUA_CAMERA
{0x00,0x2f},
{0x01,0x0f},
{0x02,0x04},
{0x03,0x02},
{0x04,0x12},
{0x09,0x00},
{0x0a,0x00},
{0x0b,0x00},
{0x0c,0x02},//04
{0x0d,0x01},
{0x0e,0xec},//e8
{0x0f,0x02},
{0x10,0x88},
{0x16,0x00},
#if 0//def CAMERA_MIRROR
{0x17,0x15},
#else
{0x17,0x14},
#endif
{0x18,0x6a},//1a
{0x19,0x14},
{0x1b,0x48},
{0x1c,0x1c},
{0x1e,0x6b},
{0x1f,0x28},
{0x20,0x8b},//0x89 travis20140801
{0x21,0x49},
{0x22,0xb0},
{0x23,0x04},
{0x24,0xff},
{0x34,0x20},
/////////////////////////////////////////////////
//////////////////// BLK ////////////////////
/////////////////////////////////////////////////
{0x26,0x23},
{0x28,0xff},
{0x29,0x00},
{0x32,0x00},
{0x33,0x10},
{0x37,0x20},
{0x38,0x10},
{0x47,0x80},
{0x4e,0x0f},//66
{0xa8,0x02},
{0xa9,0x80},
/////////////////////////////////////////////////
////////////////// ISP reg ///////////////////
/////////////////////////////////////////////////
{0x40,0xff},
{0x41,0x21},
{0x42,0xcf},
{0x44,0x02},
{0x45,0xa8},
{0x46,0x02}, //sync
{0x4a,0x11},
{0x4b,0x01},
{0x4c,0x20},
{0x4d,0x05},
{0x4f,0x01},
{0x50,0x01},
{0x55,0x00},
{0x56,0xf0},
{0x57,0x01},
{0x58,0x40},
#else
{0x00,0x2f},
{0x01,0x0f},
{0x02,0x04},
{0x03,0x02},
{0x04,0x12},
{0x09,0x00},
{0x0a,0x00},
{0x0b,0x00},
{0x0c,0x04},
{0x0d,0x01},
{0x0e,0xe8},
{0x0f,0x02},
{0x10,0x88},
{0x16,0x00},
{0x17,0x14},
{0x18,0x1a},
{0x19,0x14},
{0x1b,0x48},
{0x1c,0x1c},
{0x1e,0x6b},
{0x1f,0x28},
{0x20,0x8b},//0x89 travis20140801
{0x21,0x49},
{0x22,0xb0},
{0x23,0x04},
{0x24,0xff},
{0x34,0x20},
/////////////////////////////////////////////////
//////////////////// BLK ////////////////////
/////////////////////////////////////////////////
{0x26,0x23},
{0x28,0xff},
{0x29,0x00},
{0x32,0x00},
{0x33,0x10},
{0x37,0x20},
{0x38,0x10},
{0x47,0x80},
{0x4e,0x66},
{0xa8,0x02},
{0xa9,0x80},
/////////////////////////////////////////////////
////////////////// ISP reg ///////////////////
/////////////////////////////////////////////////
{0x40,0xff},
{0x41,0x21},
{0x42,0xcf},
{0x44,0x02},
{0x45,0xa8},
{0x46,0x02}, //sync
{0x4a,0x11},
{0x4b,0x01},
{0x4c,0x20},
{0x4d,0x05},
{0x4f,0x01},
{0x50,0x01},
{0x55,0x01},
{0x56,0xe0},
{0x57,0x02},
{0x58,0x80},
#endif
/////////////////////////////////////////////////
/////////////////// GAIN ////////////////////
/////////////////////////////////////////////////
{0x70,0x70},
{0x5a,0x84},
{0x5b,0xc9},
{0x5c,0xed},
{0x77,0x74},
{0x78,0x40},
{0x79,0x5f},
/////////////////////////////////////////////////
/////////////////// DNDD /////////////////////
/////////////////////////////////////////////////
{0x82,0x08},//0x14
{0x83,0x0b},
{0x89,0xf0},
/////////////////////////////////////////////////
////////////////// EEINTP ////////////////////
/////////////////////////////////////////////////
{0x8f,0xaa},
{0x90,0x8c},
{0x91,0x90},
{0x92,0x03},
{0x93,0x03},
{0x94,0x05},
{0x95,0x43}, //0x65
{0x96,0xf0},
/////////////////////////////////////////////////
///////////////////// ASDE ////////////////////
/////////////////////////////////////////////////
{0xfe,0x00},
{0x9a,0x20},
{0x9b,0x80},
{0x9c,0x40},
{0x9d,0x80},
{0xa1,0x30},
{0xa2,0x32},
{0xa4,0x30},
{0xa5,0x30},
{0xaa,0x10},
{0xac,0x22},
/////////////////////////////////////////////////
/////////////////// GAMMA ///////////////////
/////////////////////////////////////////////////
{0xfe,0x00},//default
{0xbf,0x08},
{0xc0,0x16},
{0xc1,0x28},
{0xc2,0x41},
{0xc3,0x5a},
{0xc4,0x6c},
{0xc5,0x7a},
{0xc6,0x96},
{0xc7,0xac},
{0xc8,0xbc},
{0xc9,0xc9},
{0xca,0xd3},
{0xcb,0xdd},
{0xcc,0xe5},
{0xcd,0xf1},
{0xce,0xfa},
{0xcf,0xff},
/*
{0xfe,0x00},//big gamma
{0xbf,0x08},
{0xc0,0x1d},
{0xc1,0x34},
{0xc2,0x4b},
{0xc3,0x60},
{0xc4,0x73},
{0xc5,0x85},
{0xc6,0x9f},
{0xc7,0xb5},
{0xc8,0xc7},
{0xc9,0xd5},
{0xca,0xe0},
{0xcb,0xe7},
{0xcc,0xec},
{0xcd,0xf4},
{0xce,0xfa},
{0xcf,0xff},
*/
/*
{0xfe,0x00},//small gamma
{0xbf,0x08},
{0xc0,0x18},
{0xc1,0x2c},
{0xc2,0x41},
{0xc3,0x59},
{0xc4,0x6e},
{0xc5,0x81},
{0xc6,0x9f},
{0xc7,0xb5},
{0xc8,0xc7},
{0xc9,0xd5},
{0xca,0xe0},
{0xcb,0xe7},
{0xcc,0xec},
{0xcd,0xf4},
{0xce,0xfa},
{0xcf,0xff},
*/
/////////////////////////////////////////////////
/////////////////// YCP //////////////////////
/////////////////////////////////////////////////
{0xd0,0x40},
{0xd1,0x38}, //0x34
{0xd2,0x38}, //0x34
{0xd3,0x50},//0x40
{0xd6,0xf2},
{0xd7,0x1b},
{0xd8,0x18},
{0xdd,0x03},
/////////////////////////////////////////////////
//////////////////// AEC ////////////////////
/////////////////////////////////////////////////
{0xfe,0x01},
{0x05,0x30},
{0x06,0x75},
{0x07,0x40},
{0x08,0xb0},
{0x0a,0xc5},
{0x0b,0x11},
{0x0c,0x00},
{0x12,0x52},
{0x13,0x38},
{0x18,0x95},
{0x19,0x96},
{0x1f,0x20},
{0x20,0xc0},
{0x3e,0x40},
{0x3f,0x57},
{0x40,0x7d},
{0x03,0x60},
{0x44,0x02},
/////////////////////////////////////////////////
//////////////////// AWB ////////////////////
/////////////////////////////////////////////////
{0xfe,0x01},
{0x1c,0x91},
{0x21,0x15},
{0x50,0x80},
{0x56,0x04},
{0x59,0x08},
{0x5b,0x02},
{0x61,0x8d},
{0x62,0xa7},
{0x63,0xd0},
{0x65,0x06},
{0x66,0x06},
{0x67,0x84},
{0x69,0x08},
{0x6a,0x25},
{0x6b,0x01},
{0x6c,0x00},
{0x6d,0x02},
{0x6e,0xf0},
{0x6f,0x80},
{0x76,0x80},
{0x78,0xaf},
{0x79,0x75},
{0x7a,0x40},
{0x7b,0x50},
{0x7c,0x0c},
{0x90,0xc9},//stable AWB
{0x91,0xbe},
{0x92,0xe2},
{0x93,0xc9},
{0x95,0x1b},
{0x96,0xe2},
{0x97,0x49},
{0x98,0x1b},
{0x9a,0x49},
{0x9b,0x1b},
{0x9c,0xc3},
{0x9d,0x49},
{0x9f,0xc7},
{0xa0,0xc8},
{0xa1,0x00},
{0xa2,0x00},
{0x86,0x00},
{0x87,0x00},
{0x88,0x00},
{0x89,0x00},
{0xa4,0xb9},
{0xa5,0xa0},
{0xa6,0xba},
{0xa7,0x92},
{0xa9,0xba},
{0xaa,0x80},
{0xab,0x9d},
{0xac,0x7f},
{0xae,0xbb},
{0xaf,0x9d},
{0xb0,0xc8},
{0xb1,0x97},
{0xb3,0xb7},
{0xb4,0x7f},
{0xb5,0x00},
{0xb6,0x00},
{0x8b,0x00},
{0x8c,0x00},
{0x8d,0x00},
{0x8e,0x00},
{0x94,0x55},
{0x99,0xa6},
{0x9e,0xaa},
{0xa3,0x0a},
{0x8a,0x00},
{0xa8,0x55},
{0xad,0x55},
{0xb2,0x55},
{0xb7,0x05},
{0x8f,0x00},
{0xb8,0xcb},
{0xb9,0x9b},
/*
{0xa4,0xb9}, //default AWB
{0xa5,0xa0},
{0x90,0xc9},
{0x91,0xbe},
{0xa6,0xb8},
{0xa7,0x95},
{0x92,0xe6},
{0x93,0xca},
{0xa9,0xbc},
{0xaa,0x95},
{0x95,0x23},
{0x96,0xe7},
{0xab,0x9d},
{0xac,0x80},
{0x97,0x43},
{0x98,0x24},
{0xae,0xb7},
{0xaf,0x9e},
{0x9a,0x43},
{0x9b,0x24},
{0xb0,0xc8},
{0xb1,0x97},
{0x9c,0xc4},
{0x9d,0x44},
{0xb3,0xb7},
{0xb4,0x7f},
{0x9f,0xc7},
{0xa0,0xc8},
{0xb5,0x00},
{0xb6,0x00},
{0xa1,0x00},
{0xa2,0x00},
{0x86,0x60},
{0x87,0x08},
{0x88,0x00},
{0x89,0x00},
{0x8b,0xde},
{0x8c,0x80},
{0x8d,0x00},
{0x8e,0x00},
{0x94,0x55},
{0x99,0xa6},
{0x9e,0xaa},
{0xa3,0x0a},
{0x8a,0x0a},
{0xa8,0x55},
{0xad,0x55},
{0xb2,0x55},
{0xb7,0x05},
{0x8f,0x05},
{0xb8,0xcc},
{0xb9,0x9a},
*/
/////////////////////////////////////////////////
//////////////////// CC ////////////////////////
/////////////////////////////////////////////////
{0xfe,0x01},
{0xd0,0x38},//skin red
{0xd1,0x00},
{0xd2,0x02},
{0xd3,0x04},
{0xd4,0x38},
{0xd5,0x12},
/*
{0xd0,0x38},//skin white
{0xd1,0xfd},
{0xd2,0x06},
{0xd3,0xf0},
{0xd4,0x40},
{0xd5,0x08},
*/
/*
{0xd0,0x38},//guodengxiang
{0xd1,0xf8},
{0xd2,0x06},
{0xd3,0xfd},
{0xd4,0x40},
{0xd5,0x00},
*/
{0xd6,0x30},
{0xd7,0x00},
{0xd8,0x0a},
{0xd9,0x16},
{0xda,0x39},
{0xdb,0xf8},
/////////////////////////////////////////////////
//////////////////// LSC ////////////////////
/////////////////////////////////////////////////
{0xfe,0x01},
{0xc1,0x3c},
{0xc2,0x50},
{0xc3,0x00},
{0xc4,0x40},
{0xc5,0x30},
{0xc6,0x30},
{0xc7,0x10},
{0xc8,0x00},
{0xc9,0x00},
{0xdc,0x20},
{0xdd,0x10},
{0xdf,0x00},
{0xde,0x00},
/////////////////////////////////////////////////
/////////////////// Histogram /////////////////
/////////////////////////////////////////////////
{0x01,0x10},
{0x0b,0x31},
{0x0e,0x50},
{0x0f,0x0f},
{0x10,0x6e},
{0x12,0xa0},
{0x15,0x60},
{0x16,0x60},
{0x17,0xe0},
/////////////////////////////////////////////////
////////////// Measure Window ///////////////
/////////////////////////////////////////////////
{0xcc,0x0c},
{0xcd,0x10},
{0xce,0xa0},
{0xcf,0xe6},
/////////////////////////////////////////////////
///////////////// dark sun //////////////////
/////////////////////////////////////////////////
{0x45,0xf7},
{0x46,0xff},
{0x47,0x15},
{0x48,0x03},
{0x4f,0x60},
/////////////////////////////////////////////////
/////////////////// banding ///////////////////
/////////////////////////////////////////////////
{0xfe,0x00},
{0x05,0x01},
{0x06,0x12}, //HB
{0x07,0x00},
{0x08,0x1c}, //VB
{0xfe,0x01},
{0x25,0x00}, //step
{0x26,0x1f},
{0x27,0x01}, //6fps
{0x28,0xf0},
{0x29,0x01}, //6fps
{0x2a,0xf0},
{0x2b,0x01}, //6fps
{0x2c,0xf0},
{0x2d,0x03}, //3.3fps
{0x2e,0xe0},
{0x3c,0x20},
///////////////////// SPI ////////////////////
/////////////////////////////////////////////////
{0xfe,0x03},
{0x01,0x00},
{0x02,0x00},
{0x10,0x00},
{0x15,0x00},
{0x17,0x00}, //01//03
{0x04,0x10},//fifo full level
{0x40,0x00},
{0x52,0x82}, //zwb 02<30>ij<EFBFBD>da
{0x53,0x24}, //24
{0x54,0x20},
{0x55,0x20}, //QQ//01
{0x5a,0x00}, //00 //yuv
#if 1//def DSS_AIR202_LUA_CAMERA
{0x5b,0x40},
{0x5c,0x01},
{0x5d,0xf0},
{0x5e,0x00},
#else
{0x5b,0x80},
{0x5c,0x02},
{0x5d,0xe0},
{0x5e,0x01},
#endif
{0x51,0x03},
{0xfe,0x00},
};
/* jieli 2lane pclk=5.88MHz V_active:413ms V_blank:490ms H_active:861us H_blank:863us */
static const uint8_t gc0310_default_regs04[][2] = {
{0xfe, 0xf0},
{0xfe, 0xf0},
{0xfe, 0x00},
{0xfc, 0x16}, //4e
{0xfc, 0x16}, //4e // [0]apwd [6]regf_clk_gate
{0xf2, 0x07}, //sync output
{0xf3, 0x83}, //ff//1f//01 data output
{0xf5, 0x07}, //sck_dely
{0xf7, 0x88}, //f8//fd 88
{0xf8, 0x00}, // 00
{0xf9, 0x4f}, //0f//01 4d
{0xfa, 0x32}, //32
{0xfc, 0xce},
{0xfd, 0x00},
{0x00, 0x2f},
{0x01, 0x0f},
{0x02, 0x04},
{0x03, 0x02},
{0x04, 0x12},
{0x09, 0x00},
{0x0a, 0x00},
{0x0b, 0x00},
{0x0c, 0x04},
{0x0d, 0x01},
{0x0e, 0xe8},
{0x0f, 0x02},
{0x10, 0x88},
{0x16, 0x00},
{0x17, 0x14},
{0x18, 0x1a},
{0x19, 0x14},
{0x1b, 0x48},
{0x1c, 0x1c},
{0x1e, 0x6b},
{0x1f, 0x28},
{0x20, 0x8b},
{0x21, 0x49},
{0x22, 0xb0},
{0x23, 0x04},
{0x24, 0xf2},
{0x34, 0x20},
{0x26, 0x23},
{0x28, 0xff},
{0x29, 0x00},
{0x32, 0x00},
{0x33, 0x10},
{0x37, 0x20},
{0x38, 0x10},
{0x47, 0x80},
{0x4e, 0x66},
{0xa8, 0x02},
{0xa9, 0x80},
{0x40, 0xff},
{0x41, 0x21},
{0x42, 0xcf},
{0x44, 0x02},
{0x45, 0xa8},
{0x46, 0x02}, //sync
{0x4a, 0x11},
{0x4b, 0x01},
{0x4c, 0x20},
{0x4d, 0x05},
{0x4f, 0x01},
{0x50, 0x01},
{0x55, 0x01},
{0x56, 0xe0},
{0x57, 0x02},
{0x58, 0x80},
{0x70, 0x70},
{0x5a, 0x84},
{0x5b, 0xc9},
{0x5c, 0xed},
{0x77, 0x74},
{0x78, 0x40},
{0x79, 0x5f},
{0x82, 0x14},
{0x83, 0x0b},
{0x89, 0xf0},
{0x8f, 0xaa},
{0x90, 0x8c},
{0x91, 0x90},
{0x92, 0x03},
{0x93, 0x03},
{0x94, 0x05},
{0x95, 0x65},
{0x96, 0xf0},
{0xfe, 0x00},
{0x9a, 0x20},
{0x9b, 0x80},
{0x9c, 0x40},
{0x9d, 0x80},
{0xa1, 0x30},
{0xa2, 0x32},
{0xa4, 0x30},
{0xa5, 0x30},
{0xaa, 0x10},
{0xac, 0x22},
{0xfe, 0x00}, //default
{0xbf, 0x08},
{0xc0, 0x16},
{0xc1, 0x28},
{0xc2, 0x41},
{0xc3, 0x5a},
{0xc4, 0x6c},
{0xc5, 0x7a},
{0xc6, 0x96},
{0xc7, 0xac},
{0xc8, 0xbc},
{0xc9, 0xc9},
{0xca, 0xd3},
{0xcb, 0xdd},
{0xcc, 0xe5},
{0xcd, 0xf1},
{0xce, 0xfa},
{0xcf, 0xff},
{0xd0, 0x40},
{0xd1, 0x34},
{0xd2, 0x34},
{0xd3, 0x40},
{0xd6, 0xf2},
{0xd7, 0x1b},
{0xd8, 0x18},
{0xdd, 0x03},
{0xfe, 0x01},
{0x05, 0x30},
{0x06, 0x75},
{0x07, 0x40},
{0x08, 0xb0},
{0x0a, 0xc5},
{0x0b, 0x11},
{0x0c, 0x00},
{0x12, 0x52},
{0x13, 0x38},
{0x18, 0x95},
{0x19, 0x96},
{0x1f, 0x20},
{0x20, 0xc0},
{0x3e, 0x40},
{0x3f, 0x57},
{0x40, 0x7d},
{0x03, 0x60},
{0x44, 0x02},
{0xfe, 0x01},
{0x1c, 0x91},
{0x21, 0x15},
{0x50, 0x80},
{0x56, 0x04},
{0x59, 0x08},
{0x5b, 0x02},
{0x61, 0x8d},
{0x62, 0xa7},
{0x63, 0xd0},
{0x65, 0x06},
{0x66, 0x06},
{0x67, 0x84},
{0x69, 0x08},
{0x6a, 0x25},
{0x6b, 0x01},
{0x6c, 0x00},
{0x6d, 0x02},
{0x6e, 0xf0},
{0x6f, 0x80},
{0x76, 0x80},
{0x78, 0xaf},
{0x79, 0x75},
{0x7a, 0x40},
{0x7b, 0x50},
{0x7c, 0x0c},
{0x90, 0xc9}, //stable AWB
{0x91, 0xbe},
{0x92, 0xe2},
{0x93, 0xc9},
{0x95, 0x1b},
{0x96, 0xe2},
{0x97, 0x49},
{0x98, 0x1b},
{0x9a, 0x49},
{0x9b, 0x1b},
{0x9c, 0xc3},
{0x9d, 0x49},
{0x9f, 0xc7},
{0xa0, 0xc8},
{0xa1, 0x00},
{0xa2, 0x00},
{0x86, 0x00},
{0x87, 0x00},
{0x88, 0x00},
{0x89, 0x00},
{0xa4, 0xb9},
{0xa5, 0xa0},
{0xa6, 0xba},
{0xa7, 0x92},
{0xa9, 0xba},
{0xaa, 0x80},
{0xab, 0x9d},
{0xac, 0x7f},
{0xae, 0xbb},
{0xaf, 0x9d},
{0xb0, 0xc8},
{0xb1, 0x97},
{0xb3, 0xb7},
{0xb4, 0x7f},
{0xb5, 0x00},
{0xb6, 0x00},
{0x8b, 0x00},
{0x8c, 0x00},
{0x8d, 0x00},
{0x8e, 0x00},
{0x94, 0x55},
{0x99, 0xa6},
{0x9e, 0xaa},
{0xa3, 0x0a},
{0x8a, 0x00},
{0xa8, 0x55},
{0xad, 0x55},
{0xb2, 0x55},
{0xb7, 0x05},
{0x8f, 0x00},
{0xb8, 0xcb},
{0xb9, 0x9b},
{0xfe, 0x01},
{0xd0, 0x38}, //skin red
{0xd1, 0x00},
{0xd2, 0x02},
{0xd3, 0x04},
{0xd4, 0x38},
{0xd5, 0x12},
{0xd6, 0x30},
{0xd7, 0x00},
{0xd8, 0x0a},
{0xd9, 0x16},
{0xda, 0x39},
{0xdb, 0xf8},
{0xfe, 0x01},
{0xc1, 0x3c},
{0xc2, 0x50},
{0xc3, 0x00},
{0xc4, 0x40},
{0xc5, 0x30},
{0xc6, 0x30},
{0xc7, 0x10},
{0xc8, 0x00},
{0xc9, 0x00},
{0xdc, 0x20},
{0xdd, 0x10},
{0xdf, 0x00},
{0xde, 0x00},
{0x01, 0x10},
{0x0b, 0x31},
{0x0e, 0x50},
{0x0f, 0x0f},
{0x10, 0x6e},
{0x12, 0xa0},
{0x15, 0x60},
{0x16, 0x60},
{0x17, 0xe0},
{0xcc, 0x0c},
{0xcd, 0x10},
{0xce, 0xa0},
{0xcf, 0xe6},
{0x45, 0xf7},
{0x46, 0xff},
{0x47, 0x15},
{0x48, 0x03},
{0x4f, 0x60},
{0xfe, 0x00},
{0x05, 0x02},
{0x06, 0x55}, //HB //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD>
{0x07, 0x00},
{0x08, 0x1c}, //VB
{0xfe, 0x01},
{0x25, 0x00}, //step
{0x26, 0x1f},
{0x27, 0x01}, //6fps
{0x28, 0xf0},
{0x29, 0x01}, //6fps
{0x2a, 0xf0},
{0x2b, 0x01}, //6fps
{0x2c, 0xf0},
{0x2d, 0x03}, //3.3fps
{0x2e, 0xe0},
{0x3c, 0x20},
{0xfe, 0x03},
{0x02, 0xff},
{0x03, 0xff},
{0x51, 0x01},
{0x52, 0xd8},
{0x53, 0x25}, //[7]crc [3:2]line_num
{0x54, 0x20},
{0x55, 0x00}, //20
{0x59, 0x10},
{0x5a, 0x00},
{0x5b, 0x80},
{0x5c, 0x02},
{0x5d, 0xe0},
{0x5e, 0x01},
{0x60, 0xab},
{0x61, 0x80},
{0x62, 0x9d},
{0x63, 0xb6},
{0x64, 0x01}, //[1]sck always 06 04
{0x65, 0xff}, //head sync code
{0x66, 0x00},
{0x67, 0x00},
};
/* Initialization sequence for QVGA resolution (320x240) in YUV format */
static const uint8_t gc0310_default_regs1[][2] = {
{0xfe,0xf0 },
{0xfe,0xf0 },
{0xfe,0x00 },
{0xfc,0x16 }, //--4e
{0xfc,0x16 }, //--4e -- [0]apwd [6]regf_clk_gate
{0xf2,0x07 }, //--sync output
{0xf3,0x83 }, //--ff--1f--01 data output
{0xf5,0x07 }, //--sck_dely
{0xf7,0x88 }, //--f8/ 88
{0xf8,0x00 }, //-- 00
{0xf9,0x4f }, //--0f--01 4d
{0xfa,0x32 }, //--32
{0xfc,0xce },
{0xfd,0x00 },
//------------------------------------------------/
//----------------/ CISCTL reg ----------------/
//------------------------------------------------/
{0x00,0x2f },
{0x01,0x0f },
{0x02,0x04 },
{0x03,0x02 },
{0x04,0x12 },
{0x09,0x00 },
{0x0a,0x00 },
{0x0b,0x00 },
{0x0c,0x02 }, //--04
{0x0d,0x01 },
{0x0e,0xec }, //--e8
{0x0f,0x02 },
{0x10,0x88 },
{0x16,0x00 },
{0x17,0x14 }, //--mirror
{0x18,0x6a }, //--1a
{0x19,0x14 },
{0x1b,0x48 },
{0x1c,0x1c },
{0x1e,0x6b },
{0x1f,0x28 },
{0x20,0x8b }, //--0x89 travis20140801
{0x21,0x49 },
{0x22,0xb0 },
{0x23,0x04 },
{0x24,0xff },
{0x34,0x20 },
//------------------------------------------------/
//-------------------- BLK --------------------
//------------------------------------------------/
// {0x26,0x23 },
// {0x28,0xff },
// {0x29,0x00 },
// {0x32,0x00 },
// {0x33,0x10 },
// {0x37,0x20 },
// {0x38,0x10 },
// {0x47,0x80 },
// {0x4e,0x0f }, //--66
// {0xa8,0x02 },
// {0xa9,0x80 },
//------------------------------------------------/
//------------------ ISP reg ------------------/
//------------------------------------------------/
{0x40,0xff },
{0x41,0x21 },
{0x42,0xcf },
{0x44,0x02 },
{0x45,0xa8 },
{0x46,0x02 }, //--sync
{0x4a,0x11 },
{0x4b,0x01 },
{0x4c,0x20 },
{0x4d,0x05 },
{0x4f,0x01 },
{0x50,0x01 },
{0x55,0x00 },
{0x56,0xf0 },
{0x57,0x01 },
{0x58,0x40 },
//------------------------------------------------/
//------------------/ GAIN --------------------
//------------------------------------------------/
{0x70,0x70 },
{0x5a,0x84 },
{0x5b,0xc9 },
{0x5c,0xed },
{0x77,0x74 },
{0x78,0x40 },
{0x79,0x5f },
//------------------------------------------------/
//------------------/ DNDD --------------------/
//------------------------------------------------/
// {0x82,0x08 }, //--0x14
// {0x83,0x0b },
// {0x89,0xf0 },
// //------------------------------------------------/
// //------------------ EEINTP --------------------
// //------------------------------------------------/
// {0x8f,0xaa },
// {0x90,0x8c },
// {0x91,0x90 },
// {0x92,0x03 },
// {0x93,0x03 },
// {0x94,0x05 },
// {0x95,0x43 }, //--0x65
// {0x96,0xf0 },
// //------------------------------------------------/
// //--------------------/ ASDE --------------------
// //------------------------------------------------/
// {0xfe,0x00 },
// {0x9a,0x20 },
// {0x9b,0x80 },
// {0x9c,0x40 },
// {0x9d,0x80 },
// {0xa1,0x30 },
// {0xa2,0x32 },
// {0xa4,0x30 },
// {0xa5,0x30 },
// {0xaa,0x10 },
// {0xac,0x22 },
// //------------------------------------------------/
// //------------------/ GAMMA ------------------/
// //------------------------------------------------/
// {0xfe,0x00 }, //--default
// {0xbf,0x08 },
// {0xc0,0x16 },
// {0xc1,0x28 },
// {0xc2,0x41 },
// {0xc3,0x5a },
// {0xc4,0x6c },
// {0xc5,0x7a },
// {0xc6,0x96 },
// {0xc7,0xac },
// {0xc8,0xbc },
// {0xc9,0xc9 },
// {0xca,0xd3 },
// {0xcb,0xdd },
// {0xcc,0xe5 },
// {0xcd,0xf1 },
// {0xce,0xfa },
// {0xcf,0xff },
// //------------------------------------------------/
// //------------------/ YCP ----------------------
// //------------------------------------------------/
// {0xd0,0x40 },
// {0xd1,0x38 }, //--0x34
// {0xd2,0x38 }, //--0x34
// {0xd3,0x50 }, //--0x40
// {0xd6,0xf2 },
// {0xd7,0x1b },
// {0xd8,0x18 },
// {0xdd,0x03 },
// //------------------------------------------------/
// //-------------------- AEC --------------------
// //------------------------------------------------/
// {0xfe,0x01 },
// {0x05,0x30 },
// {0x06,0x75 },
// {0x07,0x40 },
// {0x08,0xb0 },
// {0x0a,0xc5 },
// {0x0b,0x11 },
// {0x0c,0x00 },
// {0x12,0x52 },
// {0x13,0x38 },
// {0x18,0x95 },
// {0x19,0x96 },
// {0x1f,0x20 },
// {0x20,0xc0 },
// {0x3e,0x40 },
// {0x3f,0x57 },
// {0x40,0x7d },
// {0x03,0x60 },
// {0x44,0x02 },
// //------------------------------------------------/
// //-------------------- AWB --------------------
// //------------------------------------------------/
// {0xfe,0x01 },
// {0x1c,0x91 },
// {0x21,0x15 },
// {0x50,0x80 },
// {0x56,0x04 },
// {0x59,0x08 },
// {0x5b,0x02 },
// {0x61,0x8d },
// {0x62,0xa7 },
// {0x63,0xd0 },
// {0x65,0x06 },
// {0x66,0x06 },
// {0x67,0x84 },
// {0x69,0x08 },
// {0x6a,0x25 },
// {0x6b,0x01 },
// {0x6c,0x00 },
// {0x6d,0x02 },
// {0x6e,0xf0 },
// {0x6f,0x80 },
// {0x76,0x80 },
// {0x78,0xaf },
// {0x79,0x75 },
// {0x7a,0x40 },
// {0x7b,0x50 },
// {0x7c,0x0c },
// {0x90,0xc9 }, //--stable AWB
// {0x91,0xbe },
// {0x92,0xe2 },
// {0x93,0xc9 },
// {0x95,0x1b },
// {0x96,0xe2 },
// {0x97,0x49 },
// {0x98,0x1b },
// {0x9a,0x49 },
// {0x9b,0x1b },
// {0x9c,0xc3 },
// {0x9d,0x49 },
// {0x9f,0xc7 },
// {0xa0,0xc8 },
// {0xa1,0x00 },
// {0xa2,0x00 },
// {0x86,0x00 },
// {0x87,0x00 },
// {0x88,0x00 },
// {0x89,0x00 },
// {0xa4,0xb9 },
// {0xa5,0xa0 },
// {0xa6,0xba },
// {0xa7,0x92 },
// {0xa9,0xba },
// {0xaa,0x80 },
// {0xab,0x9d },
// {0xac,0x7f },
// {0xae,0xbb },
// {0xaf,0x9d },
// {0xb0,0xc8 },
// {0xb1,0x97 },
// {0xb3,0xb7 },
// {0xb4,0x7f },
// {0xb5,0x00 },
// {0xb6,0x00 },
// {0x8b,0x00 },
// {0x8c,0x00 },
// {0x8d,0x00 },
// {0x8e,0x00 },
// {0x94,0x55 },
// {0x99,0xa6 },
// {0x9e,0xaa },
// {0xa3,0x0a },
// {0x8a,0x00 },
// {0xa8,0x55 },
// {0xad,0x55 },
// {0xb2,0x55 },
// {0xb7,0x05 },
// {0x8f,0x00 },
// {0xb8,0xcb },
// {0xb9,0x9b },
// //------------------------------------------------/
// //-------------------- CC ------------------------
// //------------------------------------------------/
// {0xfe,0x01 },
// {0xd0,0x38 }, //--skin red
// {0xd1,0x00 },
// {0xd2,0x02 },
// {0xd3,0x04 },
// {0xd4,0x38 },
// {0xd5,0x12 },
// {0xd6,0x30 },
// {0xd7,0x00 },
// {0xd8,0x0a },
// {0xd9,0x16 },
// {0xda,0x39 },
// {0xdb,0xf8 },
// //------------------------------------------------/
// //-------------------- LSC --------------------
// //------------------------------------------------/
// {0xfe,0x01 },
// {0xc1,0x3c },
// {0xc2,0x50 },
// {0xc3,0x00 },
// {0xc4,0x40 },
// {0xc5,0x30 },
// {0xc6,0x30 },
// {0xc7,0x10 },
// {0xc8,0x00 },
// {0xc9,0x00 },
// {0xdc,0x20 },
// {0xdd,0x10 },
// {0xdf,0x00 },
// {0xde,0x00 },
// //------------------------------------------------/
// //------------------/ Histogram ----------------/
// //------------------------------------------------/
// {0x01,0x10 },
// {0x0b,0x31 },
// {0x0e,0x50 },
// {0x0f,0x0f },
// {0x10,0x6e },
// {0x12,0xa0 },
// {0x15,0x60 },
// {0x16,0x60 },
// {0x17,0xe0 },
// //------------------------------------------------/
// //-------------- Measure Window --------------/
// //------------------------------------------------/
// {0xcc,0x0c },
// {0xcd,0x10 },
// {0xce,0xa0 },
// {0xcf,0xe6 },
// //------------------------------------------------/
// //----------------/ dark sun ------------------
// //------------------------------------------------/
// {0x45,0xf7 },
// {0x46,0xff },
// {0x47,0x15 },
// {0x48,0x03 },
// {0x4f,0x60 },
// //------------------------------------------------/
// //------------------/ banding ------------------/
// //------------------------------------------------/
// {0xfe,0x00 },
// {0x05,0x01 },
// {0x06,0x12 }, //--HB
// {0x07,0x00 },
// {0x08,0x1c }, //--VB
// {0xfe,0x01 },
// {0x25,0x00 }, //--step
// {0x26,0x1f },
// {0x27,0x01 }, //--6fps
// {0x28,0xf0 },
// {0x29,0x01 }, //--6fps
// {0x2a,0xf0 },
// {0x2b,0x01 }, //--6fps
// {0x2c,0xf0 },
// {0x2d,0x03 }, //--3.3fps
// {0x2e,0xe0 },
// {0x3c,0x20 },
//--------------------/ SPI --------------------
//------------------------------------------------/
{0xfe,0x03 },
{0x01,0x00 },
{0x02,0x00 },
{0x10,0x00 },
{0x15,0x00 },
{0x17,0x00 }, //--01--03
{0x04,0x10 }, //--fifo full level
{0x40,0x00 },
{0x52,0x82 }, //--zwb 02改成da
{0x53,0x24 }, //--24
{0x54,0x20 },
{0x55,0x20 }, //--QQ--01
{0x5a,0x00 }, //--00 --yuv
{0x5b,0x40 },
{0x5c,0x01 },
{0x5d,0xf0 },
{0x5e,0x00 },
{0x51,0x03 },
{0xfe,0x00 },
// {0xfe,0x80}, // soft reset
// {0xfe,0x00}, // page0 select
// gc0310_init_common
// {0xfe,0xf0},
// {0xfe,0xf0},
// {0xfe,0x00},
// {0xfc,0x0e},
// {0xfc,0x0e},
// {0xf2,0x80},
// {0xf3,0x00},
// {0xf7,0x13},
// {0xf8,0x04},
// {0xf9,0x0e},
// {0xfa,0x11},
// {0x00,0x2f},
// {0x01,0x0f},
// {0x02,0x04},
// {0x4f,0x00},
// {0x03,0x02},
// {0x04,0x40},
// {0x05,0x01},
// {0x06,0x26},
// {0x07,0x00},
// {0x08,0x31},
// {0x09,0x00},
// {0x0a,0x00},
// {0x0b,0x00},
// {0x0c,0x00},
// {0x0d,0x01},
// {0x0e,0xf2},
// {0x0f,0x02},
// {0x10,0x94},
// {0x11,0x2a},
// {0x12,0x12},
// {0x17,0x14},
// {0x18,0x1a},
// {0x19,0x14},
// {0x1b,0x48},
// {0x1e,0x6b},
// {0x1f,0x28},
// {0x20,0x89},
// {0x21,0x49},
// {0x22,0xb0},
// {0x23,0x04},
// {0x24,0x16},
// {0x34,0x20},
// {0x26,0x23},
// {0x28,0xff},
// {0x29,0x00},
// {0x33,0x18},
// {0x37,0x20},
// {0x32,0x06},
// {0x2a,0x00},
// {0x2b,0x00},
// {0x2c,0x00},
// {0x2d,0x00},
// {0x2e,0x00},
// {0x2f,0x00},
// {0x30,0x00},
// {0x31,0x00},
// {0x47,0x80},
// {0x4e,0x66},
// {0xa8,0x02},
// {0xa9,0x80},
// {0x40,0x06},
// {0x41,0x00},
// {0x42,0x04},
// {0x44,0x18},
// {0x46,0x02},
// {0x49,0x03},
// {0x4c,0x20},
// {0x50,0x01},
// {0x55,0x01},
// {0x56,0xf0},
// {0x57,0x02},
// {0x58,0x90},
// {0x70,0x50},
// {0x71,0x20},
// {0x72,0x40},
// {0x5a,0x84},
// {0x5b,0xc9},
// {0x5c,0xed},
// {0x77,0x40},
// {0x78,0x40},
// {0x79,0x40},
// {0x48,0x00},
// {0xfe,0x01},
// {0x0a,0x45},
// {0x3e,0x40},
// {0x3f,0x57},
// {0x40,0x7d},
// {0x41,0xbd},
// {0x42,0xf6},
// {0x43,0x63},
// {0x03,0x60},
// {0x44,0x03},
// {0xfe,0x01},
// {0x45,0xa4},
// {0x46,0xf0},
// {0x48,0x03},
// {0x4f,0x60},
// {0xfe,0x00},
// // {0xf3,0xff}, // sync & data enable
// {0xfe,0x03}, // page3 select
// {0x51,0x01}, // spi enable
// gc0310_set_suspend(struct v4l2_subdev *sd)
// {
// gc0310_write_reg(client, MISENSOR_8BIT, 0xfe, 0x03);
// gc0310_write_reg(client, MISENSOR_8BIT, 0x16, 0x05);
// msleep(200);
// gc0310_write_reg(client, MISENSOR_8BIT, 0x10, 0x84); /*8bit raw disable*/
// gc0310_write_reg(client, MISENSOR_8BIT, 0x01, 0x00);
// gc0310_write_reg(client, MISENSOR_8BIT, 0xfe, 0x00);
// }
// gc0310_set_streaming(struct v4l2_subdev *sd)
// gc0310_write_reg(client, MISENSOR_8BIT, 0xfe, 0x30); //Wesley_Kao, enable per frame MIPI reset
// gc0310_write_reg(client, MISENSOR_8BIT, 0xfe, 0x03);
// gc0310_write_reg(client, MISENSOR_8BIT, 0x16, 0x09);
// gc0310_write_reg(client, MISENSOR_8BIT, 0x10, 0x94);
// gc0310_write_reg(client, MISENSOR_8BIT, 0x01, 0x03);
// gc0310_write_reg(client, MISENSOR_8BIT, 0xfe, 0x00);
// {0xec,0x20},
// {0x05,0x00},
// {0x06,0x00},
// {0x07,0x00},
// {0x08,0x00},
// {0x09,0x01},
// {0x0a,0xe8},
// {0x0b,0x02},
// {0x0c,0x88},
// {0x0d,0x02},
// {0x0e,0x02},
// {0x10,0x26},
// {0x11,0x0d},
// {0x12,0x2a},
// {0x13,0x00},
// {0x14,0x11},
// {0x15,0x0a},
// {0x16,0x05},
// {0x17,0x01},
// {0x18,0x44},
// {0x19,0x44},
// {0x1a,0x2a},
// {0x1b,0x00},
// {0x1c,0x49},
// {0x1d,0x9a},
// {0x1e,0x61},
// {0x1f,0x16},
// {0x20,0x7f},
// {0x21,0xfa},
// {0x22,0x57},
// {0x24,0xa2}, //YCbYCr
// {0x25,0x0f},
// {0x26,0x03}, // 0x01
// {0x28,0x00},
// {0x2d,0x0a},
// {0x2f,0x01},
// {0x30,0xf7},
// {0x31,0x50},
// {0x32,0x00},
// {0x33,0x28},
// {0x34,0x2a},
// {0x35,0x28},
// {0x39,0x04},
// {0x3a,0x20},
// {0x3b,0x20},
// {0x3c,0x00},
// {0x3d,0x00},
// {0x3e,0x00},
// {0x3f,0x00},
// {0x50,0x14}, // 0x14
// {0x52,0x41},
// {0x53,0x80},
// {0x54,0x80},
// {0x55,0x80},
// {0x56,0x80},
// {0x8b,0x20},
// {0x8c,0x20},
// {0x8d,0x20},
// {0x8e,0x14},
// {0x8f,0x10},
// {0x90,0x14},
// {0x91,0x3c},
// {0x92,0x50},
// //{0x8b,0x10},
// //{0x8c,0x10},
// //{0x8d,0x10},
// //{0x8e,0x10},
// //{0x8f,0x10},
// //{0x90,0x10},
// //{0x91,0x3c},
// //{0x92,0x50},
// {0x5d,0x12},
// {0x5e,0x1a},
// {0x5f,0x24},
// {0x60,0x07},
// {0x61,0x15},
// {0x62,0x08}, // 0x08
// {0x64,0x03}, // 0x03
// {0x66,0xe8},
// {0x67,0x86},
// {0x68,0x82},
// {0x69,0x18},
// {0x6a,0x0f},
// {0x6b,0x00},
// {0x6c,0x5f},
// {0x6d,0x8f},
// {0x6e,0x55},
// {0x6f,0x38},
// {0x70,0x15},
// {0x71,0x33},
// {0x72,0xdc},
// {0x73,0x00},
// {0x74,0x02},
// {0x75,0x3f},
// {0x76,0x02},
// {0x77,0x38}, // 0x47
// {0x78,0x88},
// {0x79,0x81},
// {0x7a,0x81},
// {0x7b,0x22},
// {0x7c,0xff},
// {0x93,0x48}, //color matrix default
// {0x94,0x02},
// {0x95,0x07},
// {0x96,0xe0},
// {0x97,0x40},
// {0x98,0xf0},
// {0xb1,0x40},
// {0xb2,0x40},
// {0xb3,0x40}, //0x40
// {0xb6,0xe0},
// {0xbd,0x38},
// {0xbe,0x36},
// {0xd0,0xCB},
// {0xd1,0x10},
// {0xd2,0x90},
// {0xd3,0x48},
// {0xd5,0xF2},
// {0xd6,0x16},
// {0xdb,0x92},
// {0xdc,0xA5},
// {0xdf,0x23},
// {0xd9,0x00},
// {0xda,0x00},
// {0xe0,0x09},
// {0xed,0x04},
// {0xee,0xa0},
// {0xef,0x40},
// {0x80,0x03},
// {0x9F,0x10},
// {0xA0,0x20},
// {0xA1,0x38},
// {0xA2,0x4e},
// {0xA3,0x63},
// {0xA4,0x76},
// {0xA5,0x87},
// {0xA6,0xa2},
// {0xA7,0xb8},
// {0xA8,0xca},
// {0xA9,0xd8},
// {0xAA,0xe3},
// {0xAB,0xeb},
// {0xAC,0xf0},
// {0xAD,0xF8},
// {0xAE,0xFd},
// {0xAF,0xFF},
// {0xc0,0x00},
// {0xc1,0x10},
// {0xc2,0x1c},
// {0xc3,0x30},
// {0xc4,0x43},
// {0xc5,0x54},
// {0xc6,0x65},
// {0xc7,0x75},
// {0xc8,0x93},
// {0xc9,0xB0},
// {0xca,0xCB},
// {0xcb,0xE6},
// {0xcc,0xFF},
// {0xf0,0x02},
// {0xf1,0x01},
// {0xf2,0x02},
// {0xf3,0x30},
// {0xf7,0x12},
// {0xf8,0x0a},
// {0xf9,0x9f},
// {0xfa,0x78},
// {0xfe,0x01},
// {0x00,0xf5},
// {0x02,0x20},
// {0x04,0x10},
// {0x05,0x08},
// {0x06,0x20},
// {0x08,0x0a},
// {0x0a,0xa0},
// {0x0b,0x60},
// {0x0c,0x08},
// {0x0e,0x44},
// {0x0f,0x32},
// {0x10,0x41},
// {0x11,0x37},
// {0x12,0x22},
// {0x13,0x19},
// {0x14,0x44},
// {0x15,0x44},
// {0x16,0xc2},
// {0x17,0xA8},
// {0x18,0x18},
// {0x19,0x50},
// {0x1a,0xd8},
// {0x1b,0xf5},
// {0x70,0x40},
// {0x71,0x58},
// {0x72,0x30},
// {0x73,0x48},
// {0x74,0x20},
// {0x75,0x60},
// {0x77,0x20},
// {0x78,0x32},
// {0x30,0x03},
// {0x31,0x40},
// {0x32,0x10},
// {0x33,0xe0},
// {0x34,0xe0},
// {0x35,0x00},
// {0x36,0x80},
// {0x37,0x00},
// {0x38,0x04},
// {0x39,0x09},
// {0x3a,0x12},
// {0x3b,0x1C},
// {0x3c,0x28},
// {0x3d,0x31},
// {0x3e,0x44},
// {0x3f,0x57},
// {0x40,0x6C},
// {0x41,0x81},
// {0x42,0x94},
// {0x43,0xA7},
// {0x44,0xB8},
// {0x45,0xD6},
// {0x46,0xEE},
// {0x47,0x0d},
// {0x62,0xf7},
// {0x63,0x68},
// {0x64,0xd3},
// {0x65,0xd3},
// {0x66,0x60},
// {0xfe,0x00},
};
#endif