android_kernel_samsung_msm8226/drivers/media/platform/msm/camera_v2/sensor/sr130pc20_yuv_millet_usa.h

2969 lines
72 KiB
C

/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* 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.
*
*/
#include "msm_sensor.h"
#include "msm_cci.h"
#include "msm_camera_io_util.h"
static struct msm_camera_i2c_reg_conf sr130pc20_Snapshot[] = {
{0x03, 0x00,},
{0x01, 0x01,},/*sleep*/
{0xd0, 0x05,},/*Pll off*/
{0x03, 0x22,},
{0x10, 0x7d,},/*AWB off*/
{0x03, 0x00,},
{0x10, 0x00,},
{0x03, 0x02,},
{0x2f, 0xaa,},
{0x03, 0x11,},
{0x5b, 0x00,},/*don't touch*/
{0x03, 0x12,},
{0x20, 0x0f,},
{0x21, 0x0f,},
{0xd2, 0x67,},
{0xd5, 0x02,},
{0xd7, 0x18,},
{0x03, 0x13,},
{0x10, 0xc5,},
{0x80, 0xc1,},/*Sharpness 2D On[0xc1] Off[0xc0]*/
{0x03, 0x18,},
{0x14, 0x00,},
{0x03, 0x00,},
{0xd0, 0x05,},/*pll on*/
{0xd1, 0x30,},
{0xd2, 0x01,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x03, 0x48,},
{0x10, 0x1c,},
{0x11, 0x00,},
{0x12, 0x00,},
{0x14, 0x00,},
{0x16, 0x04,},
{0x17, 0x00,},
{0x18, 0x80,},
{0x19, 0x00,},
{0x1a, 0xa0,},
{0x1c, 0x02,},
{0x1d, 0x0d,}, /* 0c:90ns , 0b:110ns */
{0x1e, 0x0f,},
{0x1f, 0x0a,},
{0x22, 0x00,},
{0x23, 0x01,},
{0x24, 0x1e,},
{0x25, 0x00,},
{0x26, 0x00,},
{0x27, 0x08,},
{0x28, 0x00,},
{0x30, 0x0a,},
{0x31, 0x00,},
{0x32, 0x0d,},
{0x33, 0x0b,},
{0x34, 0x02,},
{0x35, 0x04,},
{0x36, 0x01,},
{0x37, 0x09,},
{0x03, 0x00,},
{0x01, 0x00,},/*sleep off*/
{0xff, 0x03,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_Init_Reg[] = {
{0x03, 0x00,},
{0x01, 0x01,}, /*sleep*/
{0x01, 0x03,}, /*s/w reset*/
{0x01, 0x01,}, /*sleep*/
{0x08, 0x00,}, /*Don't touch*/
{0x09, 0x37,}, /*Don't touch*/
{0x0a, 0x33,}, /*Don't touch*/
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x01,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x10, 0x11,},
{0x11, 0x90,}, /*xy flip*/
{0x12, 0x00,},
{0x14, 0x88,},
{0x03, 0x00,},
{0x20, 0x00,},
{0x21, 0x04,},
{0x22, 0x00,},
{0x23, 0x04,},
{0x24, 0x03,},
{0x25, 0xC0,},
{0x26, 0x05,},
{0x27, 0x00,},
{0x40, 0x01,}, /*Hblank_280*/
{0x41, 0x18,},
{0x42, 0x00,}, /*Vblank 124*/
{0x43, 0x7c,},
{0x80, 0x08,}, /*Don't touch */
{0x81, 0x97,}, /*Don't touch */
{0x82, 0x90,}, /*Don't touch */
{0x83, 0x30,}, /*Don't touch */
{0x84, 0xcc,}, /*Don't touch*/
{0x85, 0x00,}, /*Don't touch*/
{0x86, 0xd4,}, /*Don' t touch*/
{0x87, 0x0f,}, /*Don't touch*/
{0x88, 0x34,}, /*Don't touch*/
{0x90, 0x0f,}, /*BLC_TIME_TH_ON*/
{0x91, 0x0f,}, /*BLC_TIME_TH_OFF */
{0x92, 0xf0,}, /*BLC_AG_TH_ON*/
{0x93, 0xe8,}, /*BLC_AG_TH_OFF*/
{0x94, 0x95,}, /*091202*/
{0x95, 0x90,}, /*091202 */
{0x98, 0x38,}, /*Don't touch*/
{0xa0, 0x01,}, /* 20100309*/
{0xa2, 0x01,}, /* 20100309*/
{0xa4, 0x01,}, /* 20100309*/
{0xa6, 0x01,}, /* 20100309*/
{0xa8, 0x00,},
{0xaa, 0x00,},
{0xac, 0x00,},
{0xae, 0x00,},
{0x99, 0x00,},
{0x9a, 0x00,},
{0x9b, 0x00,},
{0x9c, 0x00,},
{0x03, 0x02,},
{0x12, 0x00,}, /*Don't touch*/
{0x14, 0x00,}, /*Don't touch*/
{0x15, 0x00,}, /*Don't touch*/
{0x18, 0x4C,}, /*Don't touch*/
{0x19, 0x00,}, /*Don't touch*/
{0x1A, 0x39,}, /*Don't touch*/
{0x1B, 0x00,}, /*Don't touch*/
{0x1C, 0x1a,}, /*Don't touch*/
{0x1D, 0x14,}, /*Don't touch*/
{0x1E, 0x30,}, /*Don't touch*/
{0x1F, 0x10,}, /*Don't touch*/
{0x20, 0x77,},
{0x21, 0xde,},
{0x22, 0xa7,},
{0x23, 0x30,},
{0x24, 0x77,},
{0x25, 0x10,},
{0x26, 0x10,},
{0x27, 0x3c,},
{0x2b, 0x80,},
{0x2c, 0x02,},
{0x2d, 0xa0,},
{0x2e, 0x00,},
{0x2f, 0xa7,},
{0x30, 0x00,},
{0x31, 0x99,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x22,},
{0x36, 0x01,},
{0x37, 0x01,},
{0x38, 0x88,},
{0x39, 0x88,},
{0x3d, 0x03,},
{0x3e, 0x0d,},
{0x3f, 0x02,},
{0x49, 0xd1,},
{0x4a, 0x14,},
{0x50, 0x21,},
{0x52, 0x01,},
{0x53, 0x81,},
{0x54, 0x10,},
{0x55, 0x1c,},
{0x56, 0x11,},
{0x58, 0x18,},
{0x59, 0x16,},
{0x5d, 0xa2,},
{0x5e, 0x5a,},
{0x60, 0x93,}, /* 20120517 modify*/
{0x61, 0xa4,}, /* 20120517 modify*/
{0x62, 0x94,}, /* 20120517 modify*/
{0x63, 0xa3,}, /* 20120517 modify*/
{0x64, 0x94,}, /* 20120517 modify*/
{0x65, 0xa3,}, /* 20120517 modify*/
{0x67, 0x0c,},
{0x68, 0x0c,},
{0x69, 0x0c,},
{0x6a, 0xb4,},
{0x6b, 0xc4,},
{0x6c, 0xb5,},
{0x6d, 0xc2,},
{0x6e, 0xb5,},
{0x6f, 0xc0,},
{0x70, 0xb6,},
{0x71, 0xb8,},
{0x72, 0x95,}, /* 20120517 modify*/
{0x73, 0xa2,}, /* 20120517 modify*/
{0x74, 0x95,}, /* 20120517 modify*/
{0x75, 0xa2,}, /* 20120517 modify*/
{0x76, 0x95,}, /* 20120517 modify*/
{0x77, 0xa2,}, /* 20120517 modify*/
{0x7C, 0x92,}, /* 20120517 modify*/
{0x7D, 0xff,}, /* 20120517 modify*/
{0x80, 0x01,}, /* 20120517 modify*/
{0x81, 0x8a,}, /* 20120517 modify*/
{0x82, 0x1e,}, /* 20120517 modify*/
{0x83, 0x36,}, /* 20120517 modify*/
{0x84, 0x89,}, /* 20120517 modify*/
{0x85, 0x8b,}, /* 20120517 modify*/
{0x86, 0x89,}, /* 20120517 modify*/
{0x87, 0x8b,}, /* 20120517 modify*/
{0x88, 0xab,},
{0x89, 0xbc,},
{0x8a, 0xac,},
{0x8b, 0xba,},
{0x8c, 0xad,},
{0x8d, 0xb8,},
{0x8e, 0xae,},
{0x8f, 0xb2,},
{0x90, 0xb3,},
{0x91, 0xb7,},
{0x92, 0x52,}, /* 20120517 modify*/
{0x93, 0x6a,}, /* 20120517 modify*/
{0x94, 0x89,}, /* 20120517 modify*/
{0x95, 0x8b,}, /* 20120517 modify*/
{0x96, 0x89,}, /* 20120517 modify*/
{0x97, 0x8b,}, /* 20120517 modify*/
{0xA0, 0x02,},
{0xA1, 0x86,}, /* 20120517 modify*/
{0xA2, 0x02,},
{0xA3, 0x86,}, /* 20120517 modify*/
{0xA4, 0x86,}, /* 20120517 modify*/
{0xA5, 0x02,},
{0xA6, 0x86,}, /* 20120517 modify*/
{0xA7, 0x02,},
{0xA8, 0x92,}, /* 20120517 modify*/
{0xA9, 0x94,}, /* 20120517 modify*/
{0xAA, 0x92,}, /* 20120517 modify*/
{0xAB, 0x94,}, /* 20120517 modify*/
{0xAC, 0x1c,},
{0xAD, 0x22,},
{0xAE, 0x1c,},
{0xAF, 0x22,},
{0xB0, 0xa4,}, /* 20120517 modify*/
{0xB1, 0xae,}, /* 20120517 modify*/
{0xB2, 0xa4,}, /* 20120517 modify*/
{0xB3, 0xae,}, /* 20120517 modify*/
{0xB4, 0xa6,}, /* 20120517 modify*/
{0xB5, 0xac,}, /* 20120517 modify*/
{0xB6, 0xa6,}, /* 20120517 modify*/
{0xB7, 0xac,}, /* 20120517 modify*/
{0xB8, 0xa6,}, /* 20120517 modify*/
{0xB9, 0xab,}, /* 20120517 modify*/
{0xBA, 0xa6,}, /* 20120517 modify*/
{0xBB, 0xab,}, /* 20120517 modify*/
{0xBC, 0xa6,}, /* 20120517 modify*/
{0xBD, 0xab,}, /* 20120517 modify*/
{0xBE, 0xa6,}, /* 20120517 modify*/
{0xBF, 0xab,}, /* 20120517 modify*/
{0xc4, 0x37,},
{0xc5, 0x52,},
{0xc6, 0x6b,},
{0xc7, 0x86,},
{0xc8, 0x38,}, /* 20120517 modify*/
{0xc9, 0x50,}, /* 20120517 modify*/
{0xca, 0x38,}, /* 20120517 modify*/
{0xcb, 0x50,}, /* 20120517 modify*/
{0xcc, 0x6c,}, /* 20120517 modify*/
{0xcd, 0x84,}, /* 20120517 modify*/
{0xce, 0x6c,}, /* 20120517 modify*/
{0xcf, 0x84,}, /* 20120517 modify*/
{0xdc, 0x00,}, /* Added*/
{0xdd, 0xaf,}, /* Added*/
{0xde, 0x00,}, /* Added*/
{0xdf, 0x90,}, /* Added*/
{0xd0, 0x10,},
{0xd1, 0x14,},
{0xd2, 0x20,},
{0xd3, 0x00,},
{0xd4, 0x0c,}, /*DCDC_TIME_TH_ON*/
{0xd5, 0x0c,}, /*DCDC_TIME_TH_OFF */
{0xd6, 0xf0,}, /*DCDC_AG_TH_ON*/
{0xd7, 0xe8,}, /*DCDC_AG_TH_OFF*/
{0xea, 0x8a,},
{0xF0, 0x01,}, /* clock inversion*/
{0xF1, 0x01,},
{0xF2, 0x01,},
{0xF3, 0x01,},
{0xF4, 0x01,},
{0xF5, 0x00,},
{0x03, 0x10,}, /*page 10*/
{0x10, 0x01,}, /*Ycbcr422_bit Order: YUYV*/
{0x11, 0x03,},
{0x12, 0x30,}, /*y offset[4], dif_offset[5]*/
{0x13, 0x02,}, /*contrast effet enable : 0x02*/
{0x34, 0x00,}, /*hidden 10->00 100209*/
{0x37, 0x01,}, /*yc2d power save */
{0x3f, 0x04,}, /*100825*/
{0x40, 0x80,}, /*Y offset */
{0x48, 0x80,},
{0x53, 0x00,}, /*dif_offset option */
{0x55, 0x30,}, /*dif_offset option diff_offset max */
{0x60, 0x4f,}, /*out color sat en[7] | auto color decrement en[1] / | manual color sat en[0]*/
{0x61, 0x83,}, /*blue saturation_C0*/
{0x62, 0x80,}, /*red saturation_B0*/
{0x63, 0xff,}, /*auto decresment on AG th*/
{0x64, 0xc0,}, /*auto decresment on DG th*/
{0x66, 0xe4,}, /*Outdoor saturation step 137fps apply out th */
{0x67, 0x03,}, /*OutdoorsaturationB/R*/
{0x76, 0x01,}, /* ADD 20121031 */
{0x79, 0x04,}, /* ADD 20121031 */
{0x03, 0x10,},
{0x80, 0x00,}, /* dsshin --> color enhance*/
{0xf5, 0x00,}, /* dsshin --> h blank option*/
{0x03, 0x11,}, /*page 11 D_LPF */
{0x10, 0x3f,}, /*B[6]:Blue En Dlpf on[4:0] Sky over off : 0x7f->3f*/
{0x11, 0x20,}, /* Uniform Full GbGr/OV-Nr*/
{0x12, 0x80,}, /*Blue MaxOpt blue sky max filter optoin rate : 0 0xc0->80*/
{0x13, 0xb8,}, /*dark2[7] | ratio[6:4] | dark3[3] | dark3 maxfilter ratio[2:0] */
{0x30, 0xba,}, /*Outdoor2 H th*/
{0x31, 0x10,}, /*Outdoor2 L th*/
{0x32, 0x50,}, /*Outdoor2 gain ratio*/
{0x33, 0x1d,}, /*Outdoor2 H lum*/
{0x34, 0x20,}, /*Outdoor2 M lum*/
{0x35, 0x1f,}, /*Outdoor2 L lum*/
{0x36, 0xb0,}, /*Outdoor1 H th*/
{0x37, 0x18,}, /*Outdoor1 L th*/
{0x38, 0x50,}, /*Outdoor1 gain ratio 0x80->40*/
{0x39, 0x1d,}, /*Outdoor1 H lum 0x28->1e*/
{0x3a, 0x20,}, /*Outdoor1 M lum 0x10->15*/
{0x3b, 0x1f,}, /*Outdoor1 L lum 0x08->20*/
{0x3c, 0x3f,}, /*indoor H th*/
{0x3d, 0x16,}, /*indoor L th*/
{0x3e, 0x30,}, /*indoor gain ratio 0x44 6a */
{0x3f, 0x1a,}, /*indoor H lum 0x12 18 */
{0x40, 0x60,}, /*indoor M lum 0x18 1c*/
{0x41, 0x1a,}, /*indoor L lum 0x18 3e*/
{0x42, 0x98,}, /*dark1 H th*/
{0x43, 0x28,}, /*dark1 L th*/
{0x44, 0x65,}, /*dark1 gain ratio*/
{0x45, 0x16,}, /*dark1 H lum 0x38->0x28 */
{0x46, 0x30,}, /*dark1 M lum 0x27->0x17*/
{0x47, 0x34,}, /*dark1 L lum 0x20->0x1a */
{0x48, 0x90,}, /*dark2 H th*/
{0x49, 0x2a,}, /*dark2 L th*/
{0x4a, 0x65,}, /*dark2 gain ratio*/
{0x4b, 0x18,}, /*dark2 H lum */
{0x4c, 0x31,}, /*dark2 M lum*/
{0x4d, 0x36,}, /*dark2 L lum */
{0x4e, 0x80,}, /*dark3 H th*/
{0x4f, 0x30,}, /*dark3 L th*/
{0x50, 0x65,}, /*dark3 gain ratio*/
{0x51, 0x19,}, /*dark3 H lum */
{0x52, 0x31,}, /*dark3 M lum */
{0x53, 0x36,}, /*dark3 L lum */
{0x5a, 0x3f,}, /*blue sky mode out1/2 enable 0x27->3f */
{0x5b, 0x00,}, /*Impulse pixel enable dark123,in,out123 :: must be 0x07*/
{0x5c, 0x9f,}, /*Indoor maxfilter rate[7:5] | Uncertain onoff[4:0] 0x1f ->0x9f*/
{0x60, 0x3f,}, /*GbGr all enable*/
{0x62, 0x0f,}, /*GbGr offset*/
{0x65, 0x0c,}, /*Outdoor GbGr rate H 100% M 25% L 100%*/
{0x66, 0x0c,}, /*Indoor GbGr rate H 100% M 25% L 100%*/
{0x67, 0x00,}, /*dark GbGr rate H/M/L 100%*/
{0x70, 0x0c,}, /* Abberation On/Off B[1]: Outdoor B[0]: Indoor 07>>c*/
{0x75, 0xa0,}, /* Outdoor2 Abberation Luminance lvl */
{0x7d, 0xb4,}, /* Indoor Abberation Luminance lvl*/
{0x96, 0x08,}, /*indoor/Dark1 edgeoffset1*/
{0x97, 0x14,}, /*indoor/Dark1 center G value*/
{0x98, 0xf5,}, /*slope indoor :: left/right graph polarity, slope*/
{0x99, 0x2a,}, /*indoor uncertain ratio control*/
{0x9a, 0x20,}, /*Edgeoffset_dark*/
{0x03, 0x12,}, /*Preview DPC off[0x5c] on[0x5d]*/
{0x20, 0x0f,},
{0x21, 0x0f,},
{0x25, 0x00,}, /* 0x30*/
{0x2a, 0x01,},
{0x2e, 0x00,}, /*2010.8.25*/
{0x30, 0x35,}, /*Texture region(most detail)*/
{0x31, 0xa0,}, /*STD uniform1 most blur region*/
{0x32, 0xb0,}, /*STD uniform2 2nd blur*/
{0x33, 0xc0,}, /*STD uniform3 3rd blur*/
{0x34, 0xd0,}, /*STD normal noise1 4th blur */
{0x35, 0xe0,}, /*STD normal noise2 5th blur*/
{0x36, 0xff,}, /*STD normal noise3 6th blur*/
{0x40, 0x83,}, /*Outdoor2 H th*/
{0x41, 0x20,}, /*Outdoor2 L th */
{0x42, 0x08,}, /*Outdoor2 H luminance */
{0x43, 0x10,}, /*Outdoor2 M luminance */
{0x44, 0x10,}, /*Outdoor2 l luminance */
{0x45, 0x50,}, /*Outdoor2 ratio*/
{0x46, 0x83,}, /*Outdoor1 H th*/
{0x47, 0x20,}, /*Outdoor1 L th */
{0x48, 0x08,}, /*Outdoor1 H luminance*/
{0x49, 0x10,}, /*Outdoor1 M luminance*/
{0x4a, 0x10,}, /*Outdoor1 L luminance*/
{0x4b, 0x50,}, /*Outdoor1 ratio*/
{0x4c, 0x80,}, /*Indoor H th*/
{0x4d, 0x48,}, /*Indoor L th*/
{0x4e, 0x30,}, /*indoor H lum*/
{0x4f, 0x30,}, /*indoor M lum*/
{0x50, 0x12,}, /*indoor L lum */
{0x51, 0x70,}, /*indoor ratio 0x10 -> 0x45*/
{0x52, 0xa8,}, /*dark1 H th*/
{0x53, 0x30,}, /*dark1 L th */
{0x54, 0x28,}, /*dark1 H lum */
{0x55, 0x3e,}, /*dark1 M lum*/
{0x56, 0x67,}, /*dark1 L lum*/
{0x57, 0x6a,}, /*dark1 ratio*/
{0x58, 0xa0,}, /*dark2 H th*/
{0x59, 0x40,}, /*dark2 L th*/
{0x5a, 0x28,}, /*dark2 H lum*/
{0x5b, 0x3f,}, /*dark2 M lum*/
{0x5c, 0x68,}, /*dark2 L lum*/
{0x5d, 0x70,}, /*dark2 ratio*/
{0x5e, 0xa0,}, /*dark3 H th*/
{0x5f, 0x40,}, /*dark3 L th*/
{0x60, 0x29,}, /*dark3 H lum*/
{0x61, 0x3f,}, /*dark3 M lum*/
{0x62, 0x69,}, /*dark3 L lum*/
{0x63, 0x6a,}, /*dark3 ratio*/
{0x70, 0x10,},
{0x71, 0x0a,},
{0x72, 0x10,},
{0x73, 0x0a,},
{0x74, 0x18,},
{0x75, 0x12,},
{0x80, 0x20,},
{0x81, 0x40,},
{0x82, 0x65,},
{0x85, 0x1a,},
{0x88, 0x00,},
{0x89, 0x00,},
{0x90, 0x5d,}, /*Preview DPC off[0x5c] on[0x5d]*/
{0xad, 0x07,}, /*10825*/
{0xae, 0x07,}, /*10825*/
{0xaf, 0x07,}, /*10825*/
{0xc5, 0x58,}, /*BlueRange 2010.8.25 0x40->23 */
{0xc6, 0x20,}, /*GreenRange 2010.8.25 0x3b->20 */
{0xd0, 0x88,}, /*2010.8.25*/
{0xd1, 0x80,},
{0xd2, 0x17,}, /*preview 17, full 67*/
{0xd3, 0x00,},
{0xd4, 0x00,},
{0xd5, 0x0f,}, /*preview 0f, full 02*/
{0xd6, 0xff,},
{0xd7, 0xff,}, /*preview ff, full 18*/
{0xd8, 0x00,},
{0xd9, 0x04,},
{0xdb, 0x38,}, /*resolution issue 0x00->0x18->0x38 */
{0xd9, 0x04,}, /*strong_edge detect ratio*/
{0xe0, 0x01,}, /*strong_edge detect ratio*/
{0x03, 0x13,}, /*page 13 sharpness 1D*/
{0x10, 0xc5,},
{0x11, 0x7b,},
{0x12, 0x0e,},
{0x14, 0x00,},
{0x15, 0x11,}, /*added option 1.3M*/
{0x18, 0x30,}, /*added option 1.3M*/
{0x20, 0x15,},
{0x21, 0x13,},
{0x22, 0x33,},
{0x23, 0x08,}, /*hi_clip th1*/
{0x24, 0x1a,}, /*hi_clip th2*/
{0x25, 0x06,}, /*low clip th*/
{0x26, 0x18,},
{0x27, 0x30,},
{0x29, 0x10,}, /*time th*/
{0x2a, 0x30,}, /*pga th*/
{0x2b, 0x03,}, /*lpf out2*/
{0x2c, 0x03,}, /*lpf out1*/
{0x2d, 0x0c,},
{0x2e, 0x12,},
{0x2f, 0x12,},
{0x50, 0x0a,}, /*out2 hi nega*/
{0x53, 0x07,}, /* hi pos*/
{0x51, 0x0c,}, /* mi nega*/
{0x54, 0x07,}, /* mi pos*/
{0x52, 0x0b,}, /* lo nega*/
{0x55, 0x08,}, /* lo pos*/
{0x56, 0x0a,}, /*out1 hi nega*/
{0x59, 0x07,}, /* hi pos */
{0x57, 0x0c,}, /* mi nega*/
{0x5a, 0x07,}, /* mi pos */
{0x58, 0x0b,}, /* lo nega*/
{0x5b, 0x08,}, /* lo pos */
{0x5c, 0x08,}, /*indoor hi nega*/
{0x5f, 0x07,}, /* hi pos*/
{0x5d, 0x14,},
{0x60, 0x12,},
{0x5e, 0x0a,},
{0x61, 0x08,}, /* low pos*/
{0x62, 0x08,}, /*dark1 hi nega*/
{0x65, 0x06,}, /* hi pos */
{0x63, 0x08,}, /* mid nega */
{0x66, 0x06,}, /* mid pos */
{0x64, 0x08,}, /* low nega */
{0x67, 0x06,}, /* low pos */
{0x68, 0x07,}, /*dark2 hi nega*/
{0x6b, 0x05,}, /* hi pos */
{0x69, 0x07,}, /* mid nega */
{0x6c, 0x05,}, /* mid pos */
{0x6a, 0x07,}, /* low nega */
{0x6d, 0x05,}, /* low pos */
{0x6e, 0x0a,}, /*dark3 hi nega*/
{0x71, 0x09,}, /* hi pos */
{0x6f, 0x0a,}, /* mid nega */
{0x72, 0x09,}, /* mid pos */
{0x70, 0x0a,}, /* low nega */
{0x73, 0x09,}, /* low pos */
{0x80, 0xc1,},
{0x81, 0x1f,},
{0x82, 0xe1,},
{0x83, 0x33,},
{0x90, 0x05,},
{0x91, 0x05,},
{0x92, 0x33,},
{0x93, 0x30,},
{0x94, 0x03,},
{0x95, 0x14,},
{0x97, 0x30,},
{0x99, 0x30,},
{0xa0, 0x02,}, /*2d lclp out2 nega*/
{0xa1, 0x03,}, /*2d lclp out2 pos*/
{0xa2, 0x02,}, /*2d lclp out1 nega*/
{0xa3, 0x03,}, /*2d lclp out1 pos*/
{0xa4, 0x03,}, /*2d lclp in nega*/
{0xa5, 0x04,}, /*2d lclp in pos*/
{0xa6, 0x07,}, /*2d lclp dark1 nega*/
{0xa7, 0x08,}, /*2d lclp dark1 pos*/
{0xa8, 0x07,}, /*2d lclp dark2 nega*/
{0xa9, 0x08,}, /*2d lclp dark2 pos*/
{0xaa, 0x07,}, /*2d lclp dark3 nega*/
{0xab, 0x08,}, /*2d lclp dark3 pos*/
{0xb0, 0x10,}, /*out2 H Ne*/
{0xb3, 0x10,}, /* H Po*/
{0xb1, 0x1e,}, /* M Ne*/
{0xb4, 0x1e,}, /* M Po*/
{0xb2, 0x1f,}, /* L Ne*/
{0xb5, 0x1e,}, /* L Po*/
{0xb6, 0x10,}, /*out1 H Ne */
{0xb9, 0x10,}, /* H Po */
{0xb7, 0x1e,}, /* M Ne */
{0xba, 0x1e,}, /* M Po */
{0xb8, 0x1f,}, /* L Ne */
{0xbb, 0x1e,}, /* L Po */
{0xbc, 0x20,}, /*indoor H Ne*/
{0xbf, 0x1e,}, /* H Po*/
{0xbd, 0x25,}, /* M Ne*/
{0xc0, 0x23,}, /* M Po*/
{0xbe, 0x24,}, /* L Ne*/
{0xc1, 0x22,}, /* L Po*/
{0xc2, 0x23,}, /*dark1 H Ne*/
{0xc5, 0x23,}, /* H Po*/
{0xc3, 0x29,}, /* M Ne*/
{0xc6, 0x29,}, /* M Po*/
{0xc4, 0x25,}, /* L Ne*/
{0xc7, 0x25,}, /* L Po*/
{0xc8, 0x1c,}, /*dark2 H Ne*/
{0xcb, 0x1c,}, /* H Po*/
{0xc9, 0x25,}, /* M Ne*/
{0xcc, 0x25,}, /* M Po*/
{0xca, 0x23,}, /* L Ne*/
{0xcd, 0x23,}, /* L Po*/
{0xce, 0x1c,}, /*dark3 H Ne*/
{0xd1, 0x1c,}, /* H Po*/
{0xcf, 0x25,}, /* M Ne*/
{0xd2, 0x25,}, /* M Po*/
{0xd0, 0x23,}, /* L Ne*/
{0xd3, 0x23,}, /* L Po*/
{0x03, 0x14,},
{0x10, 0x31,},
{0x14, 0x80,}, /* GX*/
{0x15, 0x80,}, /* GY*/
{0x16, 0x80,}, /* RX*/
{0x17, 0x80,}, /* RY*/
{0x18, 0x80,}, /* BX*/
{0x19, 0x80,}, /* BY*/
{0x20, 0x60,}, /* X Center*/
{0x21, 0x80,}, /* Y Center*/
{0x22, 0x80,},
{0x23, 0x80,},
{0x24, 0x80,},
{0x30, 0xc8,},
{0x31, 0x2b,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x90,},
{0x40, 0x56,}, /*Rmin'sset4e*/
{0x41, 0x3a,}, /*Gr*/
{0x42, 0x37,}, /*B*/
{0x43, 0x3a,}, /*Gb*/
{0x03, 0x15,},
{0x10, 0x21,},
{0x14, 0x44,}, /*49*/
{0x15, 0x34,}, /*38*/
{0x16, 0x26,}, /*2b*/
{0x17, 0x2f,},
{0x30, 0xdd,},
{0x31, 0x62,},
{0x32, 0x05,},
{0x33, 0x26,},
{0x34, 0xbd,},
{0x35, 0x17,},
{0x36, 0x18,},
{0x37, 0x38,},
{0x38, 0xd0,},
{0x40, 0xb0,},
{0x41, 0x30,},
{0x42, 0x00,},
{0x43, 0x00,},
{0x44, 0x00,},
{0x45, 0x00,},
{0x46, 0x99,},
{0x47, 0x19,},
{0x48, 0x00,},
{0x50, 0x16,},
{0x51, 0xb2,},
{0x52, 0x1c,},
{0x53, 0x06,},
{0x54, 0x20,},
{0x55, 0xa6,},
{0x56, 0x0e,},
{0x57, 0xb2,},
{0x58, 0x24,},
{0x03, 0x16,},
{0x10, 0x31,}, /*GMA_CTL*/
{0x18, 0x7e,}, /*AG_ON*/
{0x19, 0x7d,}, /*AG_OFF*/
{0x1a, 0x0e,}, /*TIME_ON*/
{0x1b, 0x01,}, /*TIME_OFF*/
{0x1C, 0xdc,}, /*OUT_ON*/
{0x1D, 0xfe,}, /*OUT_OFF*/
{0x30, 0x00,},
{0x31, 0x07,},
{0x32, 0x1a,},
{0x33, 0x35,},
{0x34, 0x5a,},
{0x35, 0x7c,},
{0x36, 0x96,},
{0x37, 0xa9,},
{0x38, 0xb7,},
{0x39, 0xc6,},
{0x3a, 0xd2,},
{0x3b, 0xdc,},
{0x3c, 0xe4,},
{0x3d, 0xeb,},
{0x3e, 0xf1,},
{0x3f, 0xf5,},
{0x40, 0xf9,},
{0x41, 0xfd,},
{0x42, 0xff,},
{0x50, 0x00,},
{0x51, 0x03,},
{0x52, 0x13,},
{0x53, 0x2e,},
{0x54, 0x59,},
{0x55, 0x79,},
{0x56, 0x90,},
{0x57, 0xa3,},
{0x58, 0xb4,},
{0x59, 0xc2,},
{0x5a, 0xcd,},
{0x5b, 0xd7,},
{0x5c, 0xe0,},
{0x5d, 0xe5,},
{0x5e, 0xe9,},
{0x5f, 0xee,},
{0x60, 0xf1,},
{0x61, 0xf3,},
{0x62, 0xf6,},
{0x70, 0x03,},
{0x71, 0x11,},
{0x72, 0x1f,},
{0x73, 0x37,},
{0x74, 0x52,},
{0x75, 0x6c,},
{0x76, 0x85,},
{0x77, 0x9a,},
{0x78, 0xad,},
{0x79, 0xbd,},
{0x7a, 0xcb,},
{0x7b, 0xd6,},
{0x7c, 0xe0,},
{0x7d, 0xe8,},
{0x7e, 0xef,},
{0x7f, 0xf4,},
{0x80, 0xf8,},
{0x81, 0xfb,},
{0x82, 0xfe,},
{0x03, 0x24,}, /*Resol control */
{0x60, 0xc5,}, /*edge even frame | 16bit resol | white edge cnt | scene resol enable*/
{0x61, 0x04,}, /*even frame update */
{0x64, 0x08,},
{0x65, 0x00,},
{0x66, 0x26,}, /*edge th2 H */
{0x67, 0x00,}, /*edge th2 L */
{0x03, 0x13,},
{0x18, 0x31,}, /*flat center Gb/Gr*/
{0x74, 0x02,}, /*det slope en | gausian filter*/
{0x75, 0x0d,}, /*1D negative gain det 09 */
{0x76, 0x0d,}, /*1D postive gain det 08*/
{0x77, 0x10,}, /*1D hclp2 det*/
{0x78, 0x08,}, /*outdoor flat threshold*/
{0x79, 0x10,}, /*indoor flat threshold*/
{0x81, 0xdf,}, /*det gain controler*/
{0x86, 0x90,}, /*2D negative gain det */
{0x87, 0x90,}, /*2D postive gain det */
{0x96, 0x2a,}, /*2D hclp2 det*/
{0x03, 0x12,}, /*0x12 page*/
{0xd0, 0x88,},
{0xd9, 0xe4,},
{0x03, 0x18,},
{0x14, 0x43,}, /*83*/
{0x03, 0x20,},
{0x11, 0x1c,},
{0x18, 0x30,},
{0x1a, 0x08,},
{0x20, 0x45,},/*weight*/
{0x21, 0x30,},
{0x22, 0x10,},
{0x23, 0x00,},
{0x24, 0x00,},
{0x28, 0xe7,}, /* add 20120223*/
{0x29, 0x0d,}, /* 20100305 ad -> 0d*/
{0x2a, 0xfd,},
{0x2b, 0xf8,},
{0x2c, 0x43,}, /* 20140618 c3 -> 43*/
{0x2d, 0x5f,}, /* add 20120223*/
{0x2e, 0x33,},
{0x30, 0xf8,},
{0x32, 0x03,},
{0x33, 0x2e,},
{0x34, 0x30,},
{0x35, 0xd4,},
{0x36, 0xff,}, /*fe*/
{0x37, 0x32,},
{0x38, 0x04,},
{0x39, 0x22,},
{0x3a, 0xde,},
{0x3b, 0x22,},
{0x3c, 0xde,},
{0x3d, 0xe1,},
{0x50, 0x45,},
{0x51, 0x88,},
{0x56, 0x1a,},
{0x57, 0x80,},
{0x58, 0x0e,},
{0x59, 0x6a,},
{0x5a, 0x04,},
{0x5e, 0x9d,}, /*AE_AWB_start*/
{0x5f, 0x76,}, /*AE_AWB_start*/
{0x70, 0x33,}, /* 6c*/
{0x71, 0x82,}, /* 82(+8)*/
{0x76, 0x21,},
{0x77, 0x71,},
{0x78, 0x22,}, /* 24*/
{0x79, 0x23,}, /* Y Target 70 => 25, 72 => 26*/
{0x7a, 0x23,}, /* 23*/
{0x7b, 0x22,}, /* 22*/
{0x7d, 0x23,},
{0x83, 0x01,}, /*EXP Normal 30.00 fps */
{0x84, 0x86,},
{0x85, 0xa0,},
{0x86, 0x01,}, /*EXPMin 7500.00 fps*/
{0x87, 0x90,},
{0x88, 0x05,}, /*EXP Max(120Hz) 8.00 fps */
{0x89, 0xb8,},
{0x8a, 0xd8,},
{0xa5, 0x05,}, /*EXP Max(100Hz) 8.33 fps */
{0xa6, 0x7e,},
{0xa7, 0x40,},
{0x8B, 0x75,}, /*EXP100 */
{0x8C, 0x30,},
{0x8D, 0x61,}, /*EXP120 */
{0x8E, 0xa8,},
{0x9c, 0x09,}, /*EXP Limit 1250.00 fps */
{0x9d, 0x60,},
{0x9e, 0x01,}, /*EXP Unit */
{0x9f, 0x90,},
{0x98, 0x9d,},
{0xb0, 0x16,},
{0xb1, 0x14,},
{0xb2, 0xf8,},
{0xb3, 0x14,},
{0xb4, 0x1b,},
{0xb5, 0x46,},
{0xb6, 0x31,},
{0xb7, 0x29,},
{0xb8, 0x26,},
{0xb9, 0x24,},
{0xba, 0x22,},
{0xbb, 0x42,},
{0xbc, 0x41,},
{0xbd, 0x40,},
{0xc0, 0x10,},
{0xc1, 0x38,},
{0xc2, 0x38,},
{0xc3, 0x38,},
{0xc4, 0x07,},
{0xc8, 0x80,},
{0xc9, 0x80,},
{0x10, 0x8c,}, /* ae enable*/
{0x03, 0x21,},
{0x20, 0x11,},
{0x21, 0x11,},
{0x22, 0x11,},
{0x23, 0x11,},
{0x24, 0x12,},
{0x25, 0x22,},
{0x26, 0x22,},
{0x27, 0x21,},
{0x28, 0x12,},
{0x29, 0x22,},
{0x2a, 0x22,},
{0x2b, 0x21,},
{0x2c, 0x12,},
{0x2d, 0x23,},
{0x2e, 0x32,},
{0x2f, 0x21,},
{0x30, 0x12,},
{0x31, 0x23,},
{0x32, 0x32,},
{0x33, 0x21,},
{0x34, 0x12,},
{0x35, 0x22,},
{0x36, 0x22,},
{0x37, 0x21,},
{0x38, 0x12,},
{0x39, 0x22,},
{0x3a, 0x22,},
{0x3b, 0x21,},
{0x3c, 0x11,},
{0x3d, 0x11,},
{0x3e, 0x11,},
{0x3f, 0x11,},
{0x03, 0x22,},
{0x10, 0xfd,},
{0x11, 0x2e,},
{0x19, 0x01,}, /* Low On*/
{0x20, 0x30,}, /* for wb speed*/
{0x21, 0x40,},
{0x24, 0x01,},
{0x25, 0x7e,}, /* for tracking 20120314 */
{0x30, 0x80,}, /* 20120224 test*/
{0x31, 0x80,},
{0x38, 0x11,},
{0x39, 0x34,},
{0x40, 0xe8,},
{0x41, 0x43,}, /* 33*/
{0x42, 0x22,}, /* 22*/
{0x43, 0xf3,}, /* f6*/
{0x44, 0x54,}, /* 44*/
{0x45, 0x22,}, /* 33*/
{0x46, 0x00,},
{0x48, 0x0a,},
{0x50, 0xb2,},
{0x51, 0x81,},
{0x52, 0x98,},
{0x80, 0x38,},
{0x81, 0x20,},
{0x82, 0x38,}, /* 3a*/
{0x83, 0x56,}, /* R Max*/
{0x84, 0x20,}, /* R Min*/
{0x85, 0x52,}, /* B Max*/
{0x86, 0x20,}, /* B Min*/
{0x87, 0x46,},
{0x88, 0x36,},
{0x89, 0x3a,},
{0x8a, 0x2f,},
{0x8b, 0x3d,},
{0x8c, 0x37,},
{0x8d, 0x35,},
{0x8e, 0x32,},
{0x8f, 0x5a,},
{0x90, 0x59,},
{0x91, 0x55,},
{0x92, 0x4e,},
{0x93, 0x44,},
{0x94, 0x3a,},
{0x95, 0x34,},
{0x96, 0x2c,},
{0x97, 0x23,},
{0x98, 0x20,},
{0x99, 0x1f,},
{0x9a, 0x1f,},
{0x9b, 0x77,},
{0x9c, 0x77,},
{0x9d, 0x48,},
{0x9e, 0x38,},
{0x9f, 0x30,},
{0xa0, 0x40,},
{0xa1, 0x21,},
{0xa2, 0x6f,},
{0xa3, 0xff,},
{0xa4, 0x14,}, /* 1500fps*/
{0xa5, 0x44,}, /* 700fps*/
{0xa6, 0xcf,},
{0xad, 0x40,},
{0xae, 0x4a,},
{0xaf, 0x2a,}, /* low temp Rgain*/
{0xb0, 0x28,}, /* low temp Rgain*/
{0xb1, 0x00,}, /* 0x20 -> 0x00 0405 modify*/
{0xb4, 0xbf,}, /* for tracking 20120314*/
{0xb8, 0xa1,}, /*a2:b-2,R+2b4B-3,R+4lowtempb0a1SpecAWBAmodify*/
{0xb9, 0x00,},
{0x03, 0x00,},
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x05,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x03, 0x48,},
{0x10, 0x1c,},
{0x11, 0x00,},
{0x12, 0x00,},
{0x14, 0x00,},
{0x16, 0x04,},
{0x17, 0x00,},
{0x18, 0x80,},
{0x19, 0x00,},
{0x1a, 0xa0,},
{0x1c, 0x02,},
{0x1d, 0x0e,},
{0x1e, 0x07,},
{0x1f, 0x08,},
{0x22, 0x00,},
{0x23, 0x01,},
{0x24, 0x1e,},
{0x25, 0x00,},
{0x26, 0x00,},
{0x27, 0x08,},
{0x28, 0x00,},
{0x30, 0x05,},
{0x31, 0x00,},
{0x32, 0x07,},
{0x33, 0x09,},
{0x34, 0x01,},
{0x35, 0x01,},
{0x03, 0x00,},
{0x01, 0x01,},
};
#if 1
static struct msm_camera_i2c_reg_conf sr130pc20_VT_Init_Reg[] = {
{0x03, 0x00,},
{0x01, 0x01,}, /*sleep*/
{0x01, 0x03,}, /*s/w reset*/
{0x01, 0x01,}, /*sleep*/
{0x08, 0x00,},/*Don't touch*/
{0x09, 0x37,},/*Don't touch*/
{0x0a, 0x33,},/*Don't touch*/
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x01,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x10, 0x11,},
{0x11, 0x94,}, /*xy flip*/
{0x12, 0x00,}, /*Sync type default:0x00*/
{0x14, 0x88,},
{0x03, 0x00,},
{0x20, 0x00,},
{0x21, 0x04,},
{0x22, 0x00,},
{0x23, 0x04,},
{0x24, 0x03,},
{0x25, 0xC0,},
{0x26, 0x05,},
{0x27, 0x00,},
{0x40, 0x01,}, /*Hblank 280*/
{0x41, 0x18,},
{0x42, 0x00,}, /*Vblank 20*/
{0x43, 0x14,},
{0x80, 0x08,}, /*Don't touch */
{0x81, 0x97,}, /*Don't touch */
{0x82, 0x90,}, /*Don't touch */
{0x83, 0x30,}, /*Don't touch */
{0x84, 0xcc,}, /*Don't touch*/
{0x85, 0x00,}, /*Don't touch*/
{0x86, 0xd4,}, /*Don' t touch*/
{0x87, 0x0f,}, /*Don't touch*/
{0x88, 0x34,}, /*Don't touch*/
{0x90, 0x0b,}, /*BLC_TIME_TH_ON*/
{0x91, 0x0b,}, /*BLC_TIME_TH_OFF */
{0x92, 0xf0,}, /*BLC_AG_TH_ON*/
{0x93, 0xe8,}, /*BLC_AG_TH_OFF*/
{0x94, 0x95,}, /*091202*/
{0x95, 0x90,}, /*091202 */
{0x98, 0x38,}, /*Don't touch*/
{0xa0, 0x01,}, /* 20100309*/
{0xa2, 0x01,}, /* 20100309*/
{0xa4, 0x01,}, /* 20100309*/
{0xa6, 0x01,}, /* 20100309*/
{0xa8, 0x00,},
{0xaa, 0x00,},
{0xac, 0x00,},
{0xae, 0x00,},
{0x99, 0x00,},
{0x9a, 0x00,},
{0x9b, 0x00,},
{0x9c, 0x00,},
{0x03, 0x02,},
{0x12, 0x00,}, /*Don't touch*/
{0x14, 0x00,}, /*Don't touch*/
{0x15, 0x00,}, /*Don't touch*/
{0x18, 0x4C,}, /*Don't touch*/
{0x19, 0x00,}, /*Don't touch*/
{0x1A, 0x39,}, /*Don't touch*/
{0x1B, 0x00,},/*Don't touch*/
{0x1C, 0x1a,}, /*Don't touch*/
{0x1D, 0x14,}, /*Don't touch*/
{0x1E, 0x30,},/*Don't touch*/
{0x1F, 0x10,},/*Don't touch*/
{0x20, 0x77,},
{0x21, 0xde,},
{0x22, 0xa7,},
{0x23, 0x30,},
{0x24, 0x77,},
{0x25, 0x10,},
{0x26, 0x10,},
{0x27, 0x3c,},
{0x2b, 0x80,},
{0x2c, 0x02,},
{0x2d, 0xa0,},
{0x2e, 0x00,},
{0x2f, 0xa7,},
{0x30, 0x00,},
{0x31, 0x99,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x22,},
{0x36, 0x01,},
{0x37, 0x01,},
{0x38, 0x88,},
{0x39, 0x88,},
{0x3d, 0x03,},
{0x3e, 0x0d,},
{0x3f, 0x02,},
{0x49, 0xd1,},
{0x4a, 0x14,},
{0x50, 0x21,},
{0x52, 0x01,},
{0x53, 0x81,},
{0x54, 0x10,},
{0x55, 0x1c,},
{0x56, 0x11,},
{0x58, 0x18,},
{0x59, 0x16,},
{0x5d, 0xa2,},
{0x5e, 0x5a,},
{0x60, 0x93,}, /* 20120517 modify*/
{0x61, 0xa4,}, /* 20120517 modify*/
{0x62, 0x94,}, /* 20120517 modify*/
{0x63, 0xa3,}, /* 20120517 modify*/
{0x64, 0x94,}, /* 20120517 modify*/
{0x65, 0xa3,}, /* 20120517 modify*/
{0x67, 0x0c,},
{0x68, 0x0c,},
{0x69, 0x0c,},
{0x6a, 0xb4,},
{0x6b, 0xc4,},
{0x6c, 0xb5,},
{0x6d, 0xc2,},
{0x6e, 0xb5,},
{0x6f, 0xc0,},
{0x70, 0xb6,},
{0x71, 0xb8,},
{0x72, 0x95,}, /* 20120517 modify*/
{0x73, 0xa2,}, /* 20120517 modify*/
{0x74, 0x95,}, /* 20120517 modify*/
{0x75, 0xa2,}, /* 20120517 modify*/
{0x76, 0x95,}, /* 20120517 modify*/
{0x77, 0xa2,}, /* 20120517 modify*/
{0x7C, 0x92,}, /* 20120517 modify*/
{0x7D, 0xff,}, /* 20120517 modify*/
{0x80, 0x01,}, /* 20120517 modify*/
{0x81, 0x8a,}, /* 20120517 modify*/
{0x82, 0x1e,}, /* 20120517 modify*/
{0x83, 0x36,}, /* 20120517 modify*/
{0x84, 0x89,}, /* 20120517 modify*/
{0x85, 0x8b,}, /* 20120517 modify*/
{0x86, 0x89,}, /* 20120517 modify*/
{0x87, 0x8b,}, /* 20120517 modify*/
{0x88, 0xab,},
{0x89, 0xbc,},
{0x8a, 0xac,},
{0x8b, 0xba,},
{0x8c, 0xad,},
{0x8d, 0xb8,},
{0x8e, 0xae,},
{0x8f, 0xb2,},
{0x90, 0xb3,},
{0x91, 0xb7,},
{0x92, 0x52,}, /* 20120517 modify*/
{0x93, 0x6a,}, /* 20120517 modify*/
{0x94, 0x89,}, /* 20120517 modify*/
{0x95, 0x8b,}, /* 20120517 modify*/
{0x96, 0x89,}, /* 20120517 modify*/
{0x97, 0x8b,}, /* 20120517 modify*/
{0xA0, 0x02,},
{0xA1, 0x86,}, /* 20120517 modify*/
{0xA2, 0x02,},
{0xA3, 0x86,}, /* 20120517 modify*/
{0xA4, 0x86,}, /* 20120517 modify*/
{0xA5, 0x02,},
{0xA6, 0x86,}, /* 20120517 modify*/
{0xA7, 0x02,},
{0xA8, 0x92,}, /* 20120517 modify*/
{0xA9, 0x94,}, /* 20120517 modify*/
{0xAA, 0x92,}, /* 20120517 modify*/
{0xAB, 0x94,}, /* 20120517 modify*/
{0xAC, 0x1c,},
{0xAD, 0x22,},
{0xAE, 0x1c,},
{0xAF, 0x22,},
{0xB0, 0xa4,}, /* 20120517 modify*/
{0xB1, 0xae,}, /* 20120517 modify*/
{0xB2, 0xa4,}, /* 20120517 modify*/
{0xB3, 0xae,}, /* 20120517 modify*/
{0xB4, 0xa6,}, /* 20120517 modify*/
{0xB5, 0xac,}, /* 20120517 modify*/
{0xB6, 0xa6,}, /* 20120517 modify*/
{0xB7, 0xac,}, /* 20120517 modify*/
{0xB8, 0xa6,}, /* 20120517 modify*/
{0xB9, 0xab,}, /* 20120517 modify*/
{0xBA, 0xa6,}, /* 20120517 modify*/
{0xBB, 0xab,}, /* 20120517 modify*/
{0xBC, 0xa6,}, /* 20120517 modify*/
{0xBD, 0xab,}, /* 20120517 modify*/
{0xBE, 0xa6,}, /* 20120517 modify*/
{0xBF, 0xab,}, /* 20120517 modify*/
{0xc4, 0x37,},
{0xc5, 0x52,},
{0xc6, 0x6b,},
{0xc7, 0x86,},
{0xc8, 0x38,}, /* 20120517 modify*/
{0xc9, 0x50,}, /* 20120517 modify*/
{0xca, 0x38,}, /* 20120517 modify*/
{0xcb, 0x50,}, /* 20120517 modify*/
{0xcc, 0x6c,}, /* 20120517 modify*/
{0xcd, 0x84,}, /* 20120517 modify*/
{0xce, 0x6c,}, /* 20120517 modify*/
{0xcf, 0x84,}, /* 20120517 modify*/
{0xdc, 0x00,}, /* Added*/
{0xdd, 0xaf,}, /* Added*/
{0xde, 0x00,}, /* Added*/
{0xdf, 0x90,}, /* Added*/
{0xd0, 0x10,},
{0xd1, 0x14,},
{0xd2, 0x20,},
{0xd3, 0x00,},
{0xd4, 0x0b,}, /*DCDC_TIME_TH_ON*/
{0xd5, 0x0b,}, /*DCDC_TIME_TH_OFF */
{0xd6, 0xf0,}, /*DCDC_AG_TH_ON*/
{0xd7, 0xe8,}, /*DCDC_AG_TH_OFF*/
{0xea, 0x8a,},
{0xF0, 0x01,}, /* clock inversion*/
{0xF1, 0x01,},
{0xF2, 0x01,},
{0xF3, 0x01,},
{0xF4, 0x01,},
{0xF5, 0x00,},
{0x03, 0x10,}, /*page 10*/
{0x10, 0x01,}, /*Ycbcr422_bit Order: YUYV*/
{0x12, 0x30,}, /*y offset[4], dif_offset[5]*/
{0x13, 0x02,}, /*contrast effet enable : 0x02*/
{0x34, 0x00,}, /*hidden 10->00 100209*/
{0x37, 0x01,}, /*yc2d power save */
{0x3f, 0x04,}, /*100825*/
{0x40, 0x80,}, /*Y offset */
{0x41, 0x38,},
{0x48, 0x80,}, /*Contrast (Y = constrast * (Y - 128) + 128)*//*86 */
{0x50, 0xf0,},
{0x53, 0x00,}, /*dif_offset option */
{0x55, 0x30,}, /*dif_offset option diff_offset max */
{0x60, 0x03,}, /*out color sat en[7] | auto color decrement en[1] / | manual color sat en[0]*/
{0x61, 0x83,}, /*blue saturation_C0*/
{0x62, 0x80,}, /*red saturation_B0*/
{0x63, 0xff,}, /*auto decresment on AG th*/
{0x64, 0xff,}, /*auto decresment on DG th*/
{0x66, 0xe4,}, /*Outdoor saturation step 137fps apply out th */
{0x67, 0x03,}, /*OutdoorsaturationB/R*/
{0x76, 0x01,}, /* ADD 20121031 */
{0x79, 0x04,}, /* ADD 20121031 */
{0x03, 0x10,},
{0x80, 0x00,}, /* dsshin --> color enhance*/
{0xf5, 0x00,}, /* dsshin --> h blank option*/
{0x03, 0x11,}, /*page 11 D_LPF */
{0x10, 0x3f,}, /*B[6]:Blue En Dlpf on[4:0] Sky over off : 0x7f->3f*/
{0x11, 0x20,}, /* Uniform Full GbGr/OV-Nr*/
{0x12, 0x80,}, /*Blue MaxOpt blue sky max filter optoin rate : 0 0xc0->80*/
{0x13, 0xb8,}, /*dark2[7] | dark2 maxfilter ratio[6:4] | dark3[3] | dark3 maxfilter ratio[2:0] */
{0x30, 0xba,}, /*Outdoor2 H th*/
{0x31, 0x10,}, /*Outdoor2 L th*/
{0x32, 0x50,}, /*Outdoor2 gain ratio*/
{0x33, 0x1d,}, /*Outdoor2 H lum*/
{0x34, 0x20,}, /*Outdoor2 M lum*/
{0x35, 0x1f,}, /*Outdoor2 L lum*/
{0x36, 0xb0,}, /*Outdoor1 H th*/
{0x37, 0x18,}, /*Outdoor1 L th*/
{0x38, 0x50,}, /*Outdoor1 gain ratio 0x80->40*/
{0x39, 0x1d,}, /*Outdoor1 H lum 0x28->1e*/
{0x3a, 0x20,}, /*Outdoor1 M lum 0x10->15*/
{0x3b, 0x1f,}, /*Outdoor1 L lum 0x08->20*/
{0x3c, 0x3f,}, /*indoor H th*/
{0x3d, 0x16,}, /*indoor L th*/
{0x3e, 0x30,}, /*indoor gain ratio 0x44 6a */
{0x3f, 0x1a,}, /*indoor H lum 0x12 18 */
{0x40, 0x60,}, /*indoor M lum 0x18 1c*/
{0x41, 0x1a,}, /*indoor L lum 0x18 3e*/
{0x42, 0x98,}, /*dark1 H th*/
{0x43, 0x28,}, /*dark1 L th*/
{0x44, 0x65,}, /*dark1 gain ratio*/
{0x45, 0x16,}, /*dark1 H lum 0x38->0x28 */
{0x46, 0x30,}, /*dark1 M lum 0x27->0x17*/
{0x47, 0x34,}, /*dark1 L lum 0x20->0x1a */
{0x48, 0x90,}, /*dark2 H th*/
{0x49, 0x2a,}, /*dark2 L th*/
{0x4a, 0x65,}, /*dark2 gain ratio*/
{0x4b, 0x18,}, /*dark2 H lum */
{0x4c, 0x31,}, /*dark2 M lum*/
{0x4d, 0x36,}, /*dark2 L lum */
{0x4e, 0x80,}, /*dark3 H th*/
{0x4f, 0x30,}, /*dark3 L th*/
{0x50, 0x65,}, /*dark3 gain ratio*/
{0x51, 0x19,}, /*dark3 H lum */
{0x52, 0x31,}, /*dark3 M lum */
{0x53, 0x36,}, /*dark3 L lum */
{0x5a, 0x3f,}, /*blue sky mode out1/2 enable 0x27->3f */
{0x5b, 0x00,}, /*Impulse pixel enable dark123,in,out123:: must be 0x07 fix setting use!*/
{0x5c, 0x9f,}, /*Indoor maxfilter rate[7:5] | Uncertain onoff[4:0] 0x1f ->0x9f*/
{0x60, 0x3f,}, /*GbGr all enable*/
{0x62, 0x0f,}, /*GbGr offset*/
{0x65, 0x0c,}, /*Outdoor GbGr rate H 100% M 25% L 100%*/
{0x66, 0x0c,}, /*Indoor GbGr rate H 100% M 25% L 100%*/
{0x67, 0x00,}, /*dark GbGr rate H/M/L 100%*/
{0x70, 0x0c,}, /* Abberation On/Off B[1]: Outdoor B[0]: Indoor 07>>c*/
{0x75, 0xa0,}, /* Outdoor2 Abberation Luminance lvl */
{0x7d, 0xb4,}, /* Indoor Abberation Luminance lvl*/
{0x96, 0x08,}, /*indoor/Dark1 edgeoffset1*/
{0x97, 0x14,}, /*indoor/Dark1 center G value*/
{0x98, 0xf5,}, /*slope indoor :: left/right graph polarity, slope*/
{0x99, 0x2a,}, /*indoor uncertain ratio control*/
{0x9a, 0x20,}, /*Edgeoffset_dark*/
{0x03, 0x12,}, /*Preview DPC off[0x5c] on[0x5d]*/
{0x20, 0x0e,},
{0x21, 0x0e,},
{0x25, 0x00,}, /* 0x30*/
{0x2a, 0x01,},
{0x2e, 0x00,}, /*2010.8.25*/
{0x30, 0x35,}, /*Texture region(most detail)*/
{0x31, 0xa0,}, /*STD uniform1 most blur region*/
{0x32, 0xb0,}, /*STD uniform2 2nd blur*/
{0x33, 0xc0,}, /*STD uniform3 3rd blur*/
{0x34, 0xd0,}, /*STD normal noise1 4th blur */
{0x35, 0xe0,}, /*STD normal noise2 5th blur*/
{0x36, 0xff,}, /*STD normal noise3 6th blur*/
{0x40, 0x83,}, /*Outdoor2 H th*/
{0x41, 0x20,}, /*Outdoor2 L th */
{0x42, 0x08,}, /*Outdoor2 H luminance */
{0x43, 0x10,}, /*Outdoor2 M luminance */
{0x44, 0x10,}, /*Outdoor2 l luminance */
{0x45, 0x50,}, /*Outdoor2 ratio*/
{0x46, 0x83,}, /*Outdoor1 H th*/
{0x47, 0x20,}, /*Outdoor1 L th */
{0x48, 0x08,}, /*Outdoor1 H luminance*/
{0x49, 0x10,}, /*Outdoor1 M luminance*/
{0x4a, 0x10,}, /*Outdoor1 L luminance*/
{0x4b, 0x50,}, /*Outdoor1 ratio*/
{0x4c, 0x80,}, /*Indoor H th*/
{0x4d, 0x48,}, /*Indoor L th*/
{0x4e, 0x30,}, /*indoor H lum*/
{0x4f, 0x30,}, /*indoor M lum*/
{0x50, 0x12,}, /*indoor L lum */
{0x51, 0x70,}, /*indoor ratio 0x10 -> 0x45*/
{0x52, 0xa8,}, /*dark1 H th*/
{0x53, 0x30,}, /*dark1 L th */
{0x54, 0x28,}, /*dark1 H lum */
{0x55, 0x3e,}, /*dark1 M lum*/
{0x56, 0x67,}, /*dark1 L lum*/
{0x57, 0x6a,}, /*dark1 ratio*/
{0x58, 0xa0,}, /*dark2 H th*/
{0x59, 0x40,}, /*dark2 L th*/
{0x5a, 0x28,}, /*dark2 H lum*/
{0x5b, 0x3f,}, /*dark2 M lum*/
{0x5c, 0x68,}, /*dark2 L lum*/
{0x5d, 0x70,}, /*dark2 ratio*/
{0x5e, 0xa0,}, /*dark3 H th*/
{0x5f, 0x40,}, /*dark3 L th*/
{0x60, 0x29,}, /*dark3 H lum*/
{0x61, 0x3f,}, /*dark3 M lum*/
{0x62, 0x69,}, /*dark3 L lum*/
{0x63, 0x6a,}, /*dark3 ratio*/
{0x70, 0x10,},
{0x71, 0x0a,},
{0x72, 0x10,},
{0x73, 0x0a,},
{0x74, 0x18,},
{0x75, 0x12,},
{0x80, 0x20,},
{0x81, 0x40,},
{0x82, 0x65,},
{0x85, 0x1a,},
{0x88, 0x00,},
{0x89, 0x00,},
{0x90, 0x5d,}, /*Preview DPC off[0x5c] on[0x5d]*/
{0xad, 0x07,}, /*10825*/
{0xae, 0x07,}, /*10825*/
{0xaf, 0x07,}, /*10825*/
{0xc5, 0x58,}, /*BlueRange 2010.8.25 0x40->23 */
{0xc6, 0x20,}, /*GreenRange 2010.8.25 0x3b->20 */
{0xd0, 0x88,}, /*2010.8.25*/
{0xd1, 0x80,},
{0xd2, 0x17,}, /*preview 17, full 67*/
{0xd3, 0x00,},
{0xd4, 0x00,},
{0xd5, 0x0f,}, /*preview 0f, full 02*/
{0xd6, 0xff,},
{0xd7, 0xff,}, /*preview ff, full 18*/
{0xd8, 0x00,},
{0xd9, 0x04,},
{0xdb, 0x38,}, /*resolution issue 0x00->0x18->0x38 */
{0xd9, 0x04,}, /*strong_edge detect ratio*/
{0xe0, 0x01,}, /*strong_edge detect ratio*/
{0x03, 0x13,}, /*page 13 sharpness 1D*/
{0x10, 0xc5,},
{0x11, 0x7b,},
{0x12, 0x0e,},
{0x14, 0x00,},
{0x15, 0x11,}, /*added option 1.3M*/
{0x18, 0x30,}, /*added option 1.3M*/
{0x20, 0x15,},
{0x21, 0x13,},
{0x22, 0x33,},
{0x23, 0x08,}, /*hi_clip th1*/
{0x24, 0x1a,}, /*hi_clip th2*/
{0x25, 0x06,}, /*low clip th*/
{0x26, 0x18,},
{0x27, 0x30,},
{0x29, 0x10,}, /*time th*/
{0x2a, 0x30,}, /*pga th*/
{0x2b, 0x03,}, /*lpf out2*/
{0x2c, 0x03,}, /*lpf out1*/
{0x2d, 0x0c,},
{0x2e, 0x12,},
{0x2f, 0x12,},
{0x50, 0x0a,}, /*out2 hi nega*/
{0x53, 0x07,}, /* hi pos*/
{0x51, 0x0c,}, /* mi nega*/
{0x54, 0x07,}, /* mi pos*/
{0x52, 0x0b,}, /* lo nega*/
{0x55, 0x08,}, /* lo pos*/
{0x56, 0x0a,}, /*out1 hi nega*/
{0x59, 0x07,}, /* hi pos */
{0x57, 0x0c,}, /* mi nega*/
{0x5a, 0x07,}, /* mi pos */
{0x58, 0x0b,}, /* lo nega*/
{0x5b, 0x08,}, /* lo pos */
{0x5c, 0x08,}, /*indoor hi nega*/
{0x5f, 0x07,}, /* hi pos*/
{0x5d, 0x14,}, /* mid nega ,11*/
{0x60, 0x12,}, /* mid pos ,0*/
{0x5e, 0x0a,}, /* low nega */
{0x61, 0x08,}, /* low pos*/
{0x62, 0x08,}, /*dark1 hi nega*/
{0x65, 0x06,}, /* hi pos */
{0x63, 0x08,}, /* mid nega */
{0x66, 0x06,}, /* mid pos */
{0x64, 0x08,}, /* low nega */
{0x67, 0x06,}, /* low pos */
{0x68, 0x07,}, /*dark2 hi nega*/
{0x6b, 0x05,}, /* hi pos */
{0x69, 0x07,}, /* mid nega */
{0x6c, 0x05,}, /* mid pos */
{0x6a, 0x07,}, /* low nega */
{0x6d, 0x05,}, /* low pos */
{0x6e, 0x0a,}, /*dark3 hi nega*/
{0x71, 0x09,}, /* hi pos */
{0x6f, 0x0a,}, /* mid nega */
{0x72, 0x09,}, /* mid pos */
{0x70, 0x0a,}, /* low nega */
{0x73, 0x09,}, /* low pos */
{0x80, 0xc1,},
{0x81, 0x1f,},
{0x82, 0xe1,},
{0x83, 0x33,},
{0x90, 0x05,},
{0x91, 0x05,},
{0x92, 0x33,},
{0x93, 0x30,},
{0x94, 0x03,},
{0x95, 0x14,},
{0x97, 0x30,},
{0x99, 0x30,},
{0xa0, 0x02,}, /*2d lclp out2 nega*/
{0xa1, 0x03,}, /*2d lclp out2 pos*/
{0xa2, 0x02,}, /*2d lclp out1 nega*/
{0xa3, 0x03,}, /*2d lclp out1 pos*/
{0xa4, 0x03,}, /*2d lclp in nega*/
{0xa5, 0x04,}, /*2d lclp in pos*/
{0xa6, 0x07,}, /*2d lclp dark1 nega*/
{0xa7, 0x08,}, /*2d lclp dark1 pos*/
{0xa8, 0x07,}, /*2d lclp dark2 nega*/
{0xa9, 0x08,}, /*2d lclp dark2 pos*/
{0xaa, 0x07,}, /*2d lclp dark3 nega*/
{0xab, 0x08,}, /*2d lclp dark3 pos*/
{0xb0, 0x10,}, /*out2 H Ne*/
{0xb3, 0x10,}, /* H Po*/
{0xb1, 0x1e,}, /* M Ne*/
{0xb4, 0x1e,}, /* M Po*/
{0xb2, 0x1f,}, /* L Ne*/
{0xb5, 0x1e,}, /* L Po*/
{0xb6, 0x10,}, /*out1 H Ne */
{0xb9, 0x10,}, /* H Po */
{0xb7, 0x1e,}, /* M Ne */
{0xba, 0x1e,}, /* M Po */
{0xb8, 0x1f,}, /* L Ne */
{0xbb, 0x1e,}, /* L Po */
{0xbc, 0x20,}, /*indoor H Ne*/
{0xbf, 0x1e,}, /* H Po*/
{0xbd, 0x25,}, /* M Ne*/
{0xc0, 0x23,}, /* M Po*/
{0xbe, 0x24,}, /* L Ne*/
{0xc1, 0x22,}, /* L Po*/
{0xc2, 0x23,}, /*dark1 H Ne*/
{0xc5, 0x23,}, /* H Po*/
{0xc3, 0x29,}, /* M Ne*/
{0xc6, 0x29,}, /* M Po*/
{0xc4, 0x25,}, /* L Ne*/
{0xc7, 0x25,}, /* L Po*/
{0xc8, 0x1c,}, /*dark2 H Ne*/
{0xcb, 0x1c,}, /* H Po*/
{0xc9, 0x25,}, /* M Ne*/
{0xcc, 0x25,}, /* M Po*/
{0xca, 0x23,}, /* L Ne*/
{0xcd, 0x23,}, /* L Po*/
{0xce, 0x1c,}, /*dark3 H Ne*/
{0xd1, 0x1c,}, /* H Po*/
{0xcf, 0x25,}, /* M Ne*/
{0xd2, 0x25,}, /* M Po*/
{0xd0, 0x23,}, /* L Ne*/
{0xd3, 0x23,}, /* L Po*/
{0x03, 0x14,},
{0x10, 0x31,},
{0x14, 0x80,}, /* GX*/
{0x15, 0x80,}, /* GY*/
{0x16, 0x80,}, /* RX*/
{0x17, 0x80,}, /* RY*/
{0x18, 0x80,}, /* BX*/
{0x19, 0x80,}, /* BY*/
{0x20, 0x60,}, /* X Center*/
{0x21, 0x80,}, /* Y Center*/
{0x22, 0x80,},
{0x23, 0x80,},
{0x24, 0x80,},
{0x30, 0xc8,},
{0x31, 0x2b,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x90,},
{0x40, 0x56,}, /*Rmin'sset4e*/
{0x41, 0x3a,}, /*Gr*/
{0x42, 0x37,}, /*B*/
{0x43, 0x3a,}, /*Gb*/
{0x03, 0x15,},
{0x10, 0x21,},
{0x14, 0x44,}, /*49*/
{0x15, 0x34,}, /*38*/
{0x16, 0x26,}, /*2b*/
{0x17, 0x2f,},
{0x30, 0xdd,},
{0x31, 0x62,},
{0x32, 0x05,},
{0x33, 0x26,},
{0x34, 0xbd,},
{0x35, 0x17,},
{0x36, 0x18,},
{0x37, 0x38,},
{0x38, 0xd0,},
{0x40, 0xb0,},
{0x41, 0x30,},
{0x42, 0x00,},
{0x43, 0x00,},
{0x44, 0x00,},
{0x45, 0x00,},
{0x46, 0x99,},
{0x47, 0x19,},
{0x48, 0x00,},
{0x50, 0x16,},
{0x51, 0xb2,},
{0x52, 0x1c,},
{0x53, 0x06,},
{0x54, 0x20,},
{0x55, 0xa6,},
{0x56, 0x0e,},
{0x57, 0xb2,},
{0x58, 0x24,},
{0x03, 0x16,},
{0x10, 0x31,}, /*GMA_CTL*/
{0x18, 0x7e,}, /*AG_ON*/
{0x19, 0x7d,}, /*AG_OFF*/
{0x1a, 0x0e,}, /*TIME_ON*/
{0x1b, 0x01,}, /*TIME_OFF*/
{0x1C, 0xdc,}, /*OUT_ON*/
{0x1D, 0xfe,}, /*OUT_OFF*/
{0x30, 0x00,},
{0x31, 0x07,},
{0x32, 0x1a,},
{0x33, 0x35,},
{0x34, 0x5a,},
{0x35, 0x7c,},
{0x36, 0x96,},
{0x37, 0xa9,},
{0x38, 0xb7,},
{0x39, 0xc6,},
{0x3a, 0xd2,},
{0x3b, 0xdc,},
{0x3c, 0xe4,},
{0x3d, 0xeb,},
{0x3e, 0xf1,},
{0x3f, 0xf5,},
{0x40, 0xf9,},
{0x41, 0xfd,},
{0x42, 0xff,},
{0x50, 0x00,},
{0x51, 0x03,},
{0x52, 0x13,},
{0x53, 0x2e,},
{0x54, 0x59,},
{0x55, 0x79,},
{0x56, 0x90,},
{0x57, 0xa3,},
{0x58, 0xb4,},
{0x59, 0xc2,},
{0x5a, 0xcd,},
{0x5b, 0xd7,},
{0x5c, 0xe0,},
{0x5d, 0xe5,},
{0x5e, 0xe9,},
{0x5f, 0xee,},
{0x60, 0xf1,},
{0x61, 0xf3,},
{0x62, 0xf6,},
{0x70, 0x00,},
{0x71, 0x07,},
{0x72, 0x1a,},
{0x73, 0x35,},
{0x74, 0x5a,},
{0x75, 0x7c,},
{0x76, 0x96,},
{0x77, 0xa9,},
{0x78, 0xb7,},
{0x79, 0xc6,},
{0x7a, 0xd2,},
{0x7b, 0xdc,},
{0x7c, 0xe4,},
{0x7d, 0xeb,},
{0x7e, 0xf1,},
{0x7f, 0xf5,},
{0x80, 0xf9,},
{0x81, 0xfd,},
{0x82, 0xff,},
{0x03, 0x24,}, /*Resol control */
{0x60, 0xc5,}, /*edge even frame | 16bit resol | white edge cnt | scene resol enable*/
{0x61, 0x04,}, /*even frame update */
{0x64, 0x08,}, /* 0x6435, edge th1 H*/
{0x65, 0x00,}, /*edge th1 L*/
{0x66, 0x26,}, /*edge th2 H */
{0x67, 0x00,}, /*edge th2 L */
{0x03, 0x13,},
{0x18, 0x31,}, /*flat center Gb/Gr*/
{0x74, 0x02,}, /*det slope en | gausian filter*/
{0x75, 0x0d,}, /*1D negative gain det 09 */
{0x76, 0x0d,}, /*1D postive gain det 08*/
{0x77, 0x10,}, /*1D hclp2 det*/
{0x78, 0x08,}, /*outdoor flat threshold*/
{0x79, 0x10,}, /*indoor flat threshold*/
{0x81, 0xdf,}, /*det gain controler*/
{0x86, 0x90,}, /*2D negative gain det */
{0x87, 0x90,}, /*2D postive gain det */
{0x96, 0x2a,}, /*2D hclp2 det*/
{0x03, 0x12,}, /*0x12 page*/
{0xd0, 0x88,},
{0xd9, 0xe4,},
{0x03, 0x18,},
{0x14, 0x43,}, /*83*/
{0x03, 0x20,},
{0x11, 0x1c,},
{0x18, 0x30,},
{0x1a, 0x08,},
{0x20, 0x45,}, /*weight*/
{0x21, 0x30,},
{0x22, 0x10,},
{0x23, 0x00,},
{0x24, 0x00,},
{0x28, 0xe7,}, /* add 20120223*/
{0x29, 0x0d,}, /* 20100305 ad -> 0d*/
{0x2a, 0xfd,},
{0x2b, 0xf8,},
{0x2c, 0x43,}, /* 20140618 c3 -> 43*/
{0x2d, 0x5f,}, /* add 20120223*/
{0x2e, 0x33,},
{0x30, 0xf8,},
{0x32, 0x03,},
{0x33, 0x2e,},
{0x34, 0x30,},
{0x35, 0xd4,},
{0x36, 0xfe,},
{0x37, 0x32,},
{0x38, 0x04,},
{0x39, 0x22,},
{0x3a, 0xde,},
{0x3b, 0x22,},
{0x3c, 0xde,},
{0x3d, 0xe1,},
{0x50, 0x45,},
{0x51, 0x88,},
{0x56, 0x1a,},
{0x57, 0x80,},
{0x58, 0x0e,},
{0x59, 0x6a,},
{0x5a, 0x04,},
{0x5e, 0x9d,}, /*AE_AWB_start*/
{0x5f, 0x76,}, /*AE_AWB_start*/
{0x70, 0x40,}, /* 6c*/
{0x71, 0x82,}, /* 82(+8)*/
{0x76, 0x21,},
{0x77, 0x91,},
{0x78, 0x22,}, /* 24*/
{0x79, 0x2b,}, /* Y Target 70 => 25, 72 => 26*/
{0x7a, 0x23,}, /* 23*/
{0x7b, 0x22,}, /* 22*/
{0x7d, 0x23,},
{0x83, 0x01,}, /*EXP Normal 33.33 fps */
{0x84, 0x86,},
{0x85, 0xa0,},
{0x86, 0x01,}, /*EXPMin 7500.00 fps*/
{0x87, 0x90,},
{0x88, 0x03,}, /*EXP Max(120Hz) 12.00 fps*/
{0x89, 0xd0,},
{0x8a, 0x90,},
{0xa5, 0x04,}, /*EXP Max(100Hz) 11.11 fps*/
{0xa6, 0x1e,},
{0xa7, 0xb0,},
{0x8B, 0x75,}, /*EXP100 */
{0x8C, 0x30,},
{0x8D, 0x61,}, /*EXP120 */
{0x8E, 0xa8,},
{0x91, 0x04,}, /*EXP Fix 10.00 fps*/
{0x92, 0x93,},
{0x93, 0xe0,},
{0x9c, 0x0a,}, /*EXP Limit 1071.43 fps*/
{0x9d, 0xf0,},
{0x9e, 0x01,}, /*EXP Unit */
{0x9f, 0x90,},
{0x98, 0x9d,},
{0xb0, 0x16,},
{0xb1, 0x14,},
{0xb2, 0xf8,},
{0xb3, 0x14,},
{0xb4, 0x1b,},
{0xb5, 0x46,},
{0xb6, 0x31,},
{0xb7, 0x29,},
{0xb8, 0x26,},
{0xb9, 0x24,},
{0xba, 0x22,},
{0xbb, 0x42,},
{0xbc, 0x41,},
{0xbd, 0x40,},
{0xc0, 0x10,},
{0xc1, 0x38,},
{0xc2, 0x38,},
{0xc3, 0x38,},
{0xc4, 0x07,},
{0xc8, 0x80,},
{0xc9, 0x80,},
{0x10, 0x8c,}, /* ae enable*/
{0x03, 0x21,},
{0x20, 0x11,},
{0x21, 0x11,},
{0x22, 0x11,},
{0x23, 0x11,},
{0x24, 0x12,},
{0x25, 0x22,},
{0x26, 0x22,},
{0x27, 0x21,},
{0x28, 0x12,},
{0x29, 0x22,},
{0x2a, 0x22,},
{0x2b, 0x21,},
{0x2c, 0x12,},
{0x2d, 0x23,},
{0x2e, 0x32,},
{0x2f, 0x21,},
{0x30, 0x12,},
{0x31, 0x23,},
{0x32, 0x32,},
{0x33, 0x21,},
{0x34, 0x12,},
{0x35, 0x22,},
{0x36, 0x22,},
{0x37, 0x21,},
{0x38, 0x12,},
{0x39, 0x22,},
{0x3a, 0x22,},
{0x3b, 0x21,},
{0x3c, 0x11,},
{0x3d, 0x11,},
{0x3e, 0x11,},
{0x3f, 0x11,},
{0x03, 0x22,},
{0x10, 0xfd,},
{0x11, 0x2e,},
{0x19, 0x01,}, /* Low On*/
{0x20, 0x30,}, /* for wb speed*/
{0x21, 0x40,},
{0x24, 0x01,},
{0x25, 0x7e,}, /* for tracking 20120314 */
{0x30, 0x80,}, /* 20120224 test*/
{0x31, 0x80,},
{0x38, 0x11,},
{0x39, 0x34,},
{0x40, 0xe8,},
{0x41, 0x43,}, /* 33*/
{0x42, 0x22,}, /* 22*/
{0x43, 0xf3,}, /* f6*/
{0x44, 0x54,}, /* 44*/
{0x45, 0x22,}, /* 33*/
{0x46, 0x00,},
{0x48, 0x0a,},
{0x50, 0xb2,},
{0x51, 0x81,},
{0x52, 0x98,},
{0x80, 0x38,},
{0x81, 0x20,},
{0x82, 0x38,}, /* 3a*/
{0x83, 0x56,}, /* R Max*/
{0x84, 0x20,}, /* R Min*/
{0x85, 0x54,}, /* B Max*/
{0x86, 0x20,}, /* B Min*/
{0x87, 0x46,},
{0x88, 0x36,},
{0x89, 0x3a,},
{0x8a, 0x2f,},
{0x8b, 0x3d,},
{0x8c, 0x37,},
{0x8d, 0x35,},
{0x8e, 0x32,},
{0x8f, 0x5a,},
{0x90, 0x59,},
{0x91, 0x55,},
{0x92, 0x4e,},
{0x93, 0x44,},
{0x94, 0x3a,},
{0x95, 0x34,},
{0x96, 0x2c,},
{0x97, 0x23,},
{0x98, 0x20,},
{0x99, 0x1f,},
{0x9a, 0x1f,},
{0x9b, 0x77,},
{0x9c, 0x77,},
{0x9d, 0x48,},
{0x9e, 0x38,},
{0x9f, 0x30,},
{0xa0, 0x40,},
{0xa1, 0x21,},
{0xa2, 0x6f,},
{0xa3, 0xff,},
{0xa4, 0x14,}, /* 1500fps*/
{0xa5, 0x44,}, /* 700fps*/
{0xa6, 0xcf,},
{0xad, 0x40,},
{0xae, 0x4a,},
{0xaf, 0x2a,}, /* low temp Rgain*/
{0xb0, 0x28,}, /* low temp Rgain*/
{0xb1, 0x00,}, /* 0x20 -> 0x00 0405 modify*/
{0xb4, 0xbf,}, /* for tracking 20120314*/
{0xb8, 0xa1,}, /*a2:b-2,R+2b4B-3,R+4lowtempb0a1SpecAWBAmodify*/
{0xb9, 0x00,},
{0x03, 0x00,},
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x05,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x03, 0x48,},
{0x10, 0x1c,},
{0x11, 0x00,},
{0x12, 0x00,},
{0x14, 0x00,},
{0x16, 0x04,},
{0x17, 0x00,},
{0x18, 0x80,},
{0x19, 0x00,},
{0x1a, 0xa0,},
{0x1c, 0x02,},
{0x1d, 0x0e,},
{0x1e, 0x07,},
{0x1f, 0x08,},
{0x22, 0x00,},
{0x23, 0x01,},
{0x24, 0x1e,},
{0x25, 0x00,},
{0x26, 0x00,},
{0x27, 0x08,},
{0x28, 0x00,},
{0x30, 0x05,},
{0x31, 0x00,},
{0x32, 0x07,},
{0x33, 0x09,},
{0x34, 0x01,},
{0x35, 0x01,},
{0x03, 0x00,},
{0x01, 0x01,},
{0xff, 0x28,}, /*400ms Delay*/
};
#endif
static struct msm_camera_i2c_reg_conf sr130pc20_camcorder_mode[] = {
/*0 Page*/
{0x03, 0x00,},
{0x01, 0x01,}, /*sleep*/
{0x01, 0x03,}, /*s/w reset*/
{0x01, 0x01,}, /*sleep*/
{0x08, 0x00,},/*Don't touch*/
{0x09, 0x37,},/*Don't touch*/
{0x0a, 0x33,},/*Don't touch*/
/*PLL Setting*/
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x01,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x10, 0x11,},
{0x11, 0x94,}, /*xy flip*/
{0x12, 0x00,},
{0x14, 0x88,},
{0x03, 0x00,},
{0x20, 0x00,},
{0x21, 0x04,},
{0x22, 0x00,},
{0x23, 0x04,},
{0x24, 0x03,},
{0x25, 0xC0,},
{0x26, 0x05,},
{0x27, 0x00,},
{0x40, 0x01,}, /*Hblank_280*/
{0x41, 0x18,},
{0x42, 0x00,}, /*Vblank 124*/
{0x43, 0x7c,},
{0x03, 0x00,}, /*ESD */
{0x0b, 0xaa,},
{0x0c, 0xaa,},
{0x0d, 0xaa,},
/*--------------- BLC*/
{0x80, 0x08,}, /*Don't touch */
{0x81, 0x97,}, /*Don't touch */
{0x82, 0x90,}, /*Don't touch */
{0x83, 0x30,}, /*Don't touch */
{0x84, 0xcc,}, /*Don't touch*/
{0x85, 0x00,}, /*Don't touch*/
{0x86, 0xd4,}, /*Don' t touch*/
{0x87, 0x0f,}, /*Don't touch*/
{0x88, 0x34,}, /*Don't touch*/
{0x90, 0x04,}, /*BLC_TIME_TH_ON*/
{0x91, 0x04,}, /*BLC_TIME_TH_OFF */
{0x92, 0xe8,}, /*BLC_AG_TH_ON*/
{0x93, 0xe0,}, /*BLC_AG_TH_OFF*/
{0x94, 0x95,}, /*091202*/
{0x95, 0x90,}, /*091202 */
{0x98, 0x38,}, /*Don't touch*/
/*Dark BLC*/
{0xa0, 0x01,}, /* 20100309*/
{0xa2, 0x01,}, /* 20100309*/
{0xa4, 0x01,}, /* 20100309*/
{0xa6, 0x01,}, /* 20100309*/
/*Normal BLC*/
{0xa8, 0x00,},
{0xaa, 0x00,},
{0xac, 0x00,},
{0xae, 0x00,},
/*Out BLC*/
{0x99, 0x00,},
{0x9a, 0x00,},
{0x9b, 0x00,},
{0x9c, 0x00,},
/*2 Page*/
{0x03, 0x02,},
{0x12, 0x00,}, /*Don't touch*/
{0x14, 0x00,}, /*Don't touch*/
{0x15, 0x00,}, /*Don't touch*/
{0x18, 0x4C,}, /*Don't touch*/
{0x19, 0x00,}, /*Don't touch*/
{0x1A, 0x39,}, /*Don't touch*/
{0x1B, 0x00,},/*Don't touch*/
{0x1C, 0x1a,}, /*Don't touch*/
{0x1D, 0x14,}, /*Don't touch*/
{0x1E, 0x30,},/*Don't touch*/
{0x1F, 0x10,},/*Don't touch*/
{0x20, 0x77,},
{0x21, 0xde,},
{0x22, 0xa7,},
{0x23, 0x30,},
{0x24, 0x77,},
{0x25, 0x10,},
{0x26, 0x10,},
{0x27, 0x3c,},
{0x2b, 0x80,},
{0x2c, 0x02,},
{0x2d, 0xa0,},
{0x2e, 0x00,},
{0x2f, 0xa7,},
{0x30, 0x00,},
{0x31, 0x99,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x22,},
{0x36, 0x01,},
{0x37, 0x01,},
{0x38, 0x88,},
{0x39, 0x88,},
{0x3d, 0x03,},
{0x3e, 0x0d,},
{0x3f, 0x02,},
{0x49, 0xd1,},
{0x4a, 0x14,},
{0x50, 0x21,},
{0x52, 0x01,},
{0x53, 0x81,},
{0x54, 0x10,},
{0x55, 0x1c,},
{0x56, 0x11,},
{0x58, 0x18,},
{0x59, 0x16,},
{0x5d, 0xa2,},
{0x5e, 0x5a,},
{0x60, 0x93,}, /* 20120517 modify*/
{0x61, 0xa4,}, /* 20120517 modify*/
{0x62, 0x94,}, /* 20120517 modify*/
{0x63, 0xa3,}, /* 20120517 modify*/
{0x64, 0x94,}, /* 20120517 modify*/
{0x65, 0xa3,}, /* 20120517 modify*/
{0x67, 0x0c,},
{0x68, 0x0c,},
{0x69, 0x0c,},
{0x6a, 0xb4,},
{0x6b, 0xc4,},
{0x6c, 0xb5,},
{0x6d, 0xc2,},
{0x6e, 0xb5,},
{0x6f, 0xc0,},
{0x70, 0xb6,},
{0x71, 0xb8,},
{0x72, 0x95,}, /* 20120517 modify*/
{0x73, 0xa2,}, /* 20120517 modify*/
{0x74, 0x95,}, /* 20120517 modify*/
{0x75, 0xa2,}, /* 20120517 modify*/
{0x76, 0x95,}, /* 20120517 modify*/
{0x77, 0xa2,}, /* 20120517 modify*/
{0x7C, 0x92,}, /* 20120517 modify*/
{0x7D, 0xff,}, /* 20120517 modify*/
{0x80, 0x01,}, /* 20120517 modify*/
{0x81, 0x8a,}, /* 20120517 modify*/
{0x82, 0x1e,}, /* 20120517 modify*/
{0x83, 0x36,}, /* 20120517 modify*/
{0x84, 0x89,}, /* 20120517 modify*/
{0x85, 0x8b,}, /* 20120517 modify*/
{0x86, 0x89,}, /* 20120517 modify*/
{0x87, 0x8b,}, /* 20120517 modify*/
{0x88, 0xab,},
{0x89, 0xbc,},
{0x8a, 0xac,},
{0x8b, 0xba,},
{0x8c, 0xad,},
{0x8d, 0xb8,},
{0x8e, 0xae,},
{0x8f, 0xb2,},
{0x90, 0xb3,},
{0x91, 0xb7,},
{0x92, 0x52,}, /* 20120517 modify*/
{0x93, 0x6a,}, /* 20120517 modify*/
{0x94, 0x89,}, /* 20120517 modify*/
{0x95, 0x8b,}, /* 20120517 modify*/
{0x96, 0x89,}, /* 20120517 modify*/
{0x97, 0x8b,}, /* 20120517 modify*/
{0xA0, 0x02,},
{0xA1, 0x86,}, /* 20120517 modify*/
{0xA2, 0x02,},
{0xA3, 0x86,}, /* 20120517 modify*/
{0xA4, 0x86,}, /* 20120517 modify*/
{0xA5, 0x02,},
{0xA6, 0x86,}, /* 20120517 modify*/
{0xA7, 0x02,},
{0xA8, 0x92,}, /* 20120517 modify*/
{0xA9, 0x94,}, /* 20120517 modify*/
{0xAA, 0x92,}, /* 20120517 modify*/
{0xAB, 0x94,}, /* 20120517 modify*/
{0xAC, 0x1c,},
{0xAD, 0x22,},
{0xAE, 0x1c,},
{0xAF, 0x22,},
{0xB0, 0xa4,}, /* 20120517 modify*/
{0xB1, 0xae,}, /* 20120517 modify*/
{0xB2, 0xa4,}, /* 20120517 modify*/
{0xB3, 0xae,}, /* 20120517 modify*/
{0xB4, 0xa6,}, /* 20120517 modify*/
{0xB5, 0xac,}, /* 20120517 modify*/
{0xB6, 0xa6,}, /* 20120517 modify*/
{0xB7, 0xac,}, /* 20120517 modify*/
{0xB8, 0xa6,}, /* 20120517 modify*/
{0xB9, 0xab,}, /* 20120517 modify*/
{0xBA, 0xa6,}, /* 20120517 modify*/
{0xBB, 0xab,}, /* 20120517 modify*/
{0xBC, 0xa6,}, /* 20120517 modify*/
{0xBD, 0xab,}, /* 20120517 modify*/
{0xBE, 0xa6,}, /* 20120517 modify*/
{0xBF, 0xab,}, /* 20120517 modify*/
{0xc4, 0x37,},
{0xc5, 0x52,},
{0xc6, 0x6b,},
{0xc7, 0x86,},
{0xc8, 0x38,}, /* 20120517 modify*/
{0xc9, 0x50,}, /* 20120517 modify*/
{0xca, 0x38,}, /* 20120517 modify*/
{0xcb, 0x50,}, /* 20120517 modify*/
{0xcc, 0x6c,}, /* 20120517 modify*/
{0xcd, 0x84,}, /* 20120517 modify*/
{0xce, 0x6c,}, /* 20120517 modify*/
{0xcf, 0x84,}, /* 20120517 modify*/
{0xdc, 0x00,}, /* Added*/
{0xdd, 0xaf,}, /* Added*/
{0xde, 0x00,}, /* Added*/
{0xdf, 0x90,}, /* Added*/
{0xd0, 0x10,},
{0xd1, 0x14,},
{0xd2, 0x20,},
{0xd3, 0x00,},
/*DCDC */
{0xd4, 0x04,}, /*DCDC_TIME_TH_ON*/
{0xd5, 0x04,}, /*DCDC_TIME_TH_OFF */
{0xd6, 0xe8,}, /*DCDC_AG_TH_ON*/
{0xd7, 0xe0,}, /*DCDC_AG_TH_OFF*/
{0xea, 0x8a,},
{0xF0, 0x01,}, /* clock inversion*/
{0xF1, 0x01,},
{0xF2, 0x01,},
{0xF3, 0x01,},
{0xF4, 0x01,},
{0xF5, 0x00,},
{0x03, 0x10,}, /*page 10*/
{0x10, 0x01,}, /*Ycbcr422_bit Order: YUYV*/
{0x11, 0x03,},
{0x12, 0x30,}, /*y offset[4], dif_offset[5]*/
{0x13, 0x02,}, /*contrast effet enable : 0x02*/
{0x34, 0x00,}, /*hidden 10->00 100209*/
{0x37, 0x01,}, /*yc2d power save */
{0x3f, 0x04,}, /*100825*/
{0x40, 0x80,}, /*Y offset */
{0x41, 0x0a,},
{0x48, 0x80,}, /*Contrast (Y = constrast * (Y - 128) + 128)/86 */
{0x50, 0xf8,}, /*20140404 Dyoffset TH */
{0x53, 0x00,}, /*dif_offset option */
{0x55, 0x30,}, /*dif_offset option diff_offset max */
{0x60, 0x07,},
{0x61, 0x83,}, /*blue saturation_C0*/
{0x62, 0x80,}, /*red saturation_B0*/
{0x63, 0x80,}, /*auto decresment on AG th*/
{0x64, 0xff,}, /*auto decresment on DG th*/
{0x66, 0xe4,}, /*Outdoor saturation step 137fps apply out th */
{0x67, 0x13,}, /*Outdoor saturation B/R*/
{0x76, 0x01,}, /* ADD 20121031 */
{0x79, 0x04,}, /* ADD 20121031 */
/* Hi 163 */
/* PAGE 10 START*/
{0x03, 0x10,},
{0x80, 0x00,}, /* dsshin --> color enhance*/
{0xf5, 0x00,}, /* dsshin --> h blank option*/
{0x03, 0x11,}, /*page 11 D_LPF */
{0x10, 0x3f,}, /*B[6]:Blue En Dlpf on[4:0] Sky over off : 0x7f->3f*/
{0x11, 0x20,}, /* Uniform Full GbGr/OV-Nr*/
{0x12, 0x80,}, /*Blue MaxOpt blue sky max filter optoin rate : 0 0xc0->80*/
{0x13, 0xb8,},
{0x30, 0xba,}, /*Outdoor2 H th*/
{0x31, 0x10,}, /*Outdoor2 L th*/
{0x32, 0x50,}, /*Outdoor2 gain ratio*/
{0x33, 0x1d,}, /*Outdoor2 H lum*/
{0x34, 0x20,}, /*Outdoor2 M lum*/
{0x35, 0x1f,}, /*Outdoor2 L lum*/
{0x36, 0xb0,}, /*Outdoor1 H th*/
{0x37, 0x18,}, /*Outdoor1 L th*/
{0x38, 0x50,}, /*Outdoor1 gain ratio 0x80->40*/
{0x39, 0x1d,}, /*Outdoor1 H lum 0x28->1e*/
{0x3a, 0x20,}, /*Outdoor1 M lum 0x10->15*/
{0x3b, 0x1f,}, /*Outdoor1 L lum */
{0x3c, 0x3f,}, /*indoor H th*/
{0x3d, 0x16,}, /*indoor L th*/
{0x3e, 0x30,}, /*indoor gain ratio 0x44 6a */
{0x3f, 0x1a,}, /*indoor H lum 0x12 18 */
{0x40, 0x60,}, /*indoor M lum 0x18 1c*/
{0x41, 0x1a,}, /*indoor L lum */
{0x42, 0x98,}, /*dark1 H th*/
{0x43, 0x28,}, /*dark1 L th*/
{0x44, 0x65,}, /*dark1 gain ratio*/
{0x45, 0x16,}, /*dark1 H lum 0x38->0x28 */
{0x46, 0x30,}, /*dark1 M lum 0x27->0x17*/
{0x47, 0x34,}, /*dark1 L lum 0x20->0x1a */
{0x48, 0x90,}, /*dark2 H th*/
{0x49, 0x2a,}, /*dark2 L th*/
{0x4a, 0x65,}, /*dark2 gain ratio*/
{0x4b, 0x18,}, /*dark2 H lum */
{0x4c, 0x31,}, /*dark2 M lum*/
{0x4d, 0x36,}, /*dark2 L lum */
{0x4e, 0x80,}, /*dark3 H th*/
{0x4f, 0x30,}, /*dark3 L th*/
{0x50, 0x65,}, /*dark3 gain ratio*/
{0x51, 0x19,}, /*dark3 H lum */
{0x52, 0x31,}, /*dark3 M lum */
{0x53, 0x36,}, /*dark3 L lum */
{0x5a, 0x3f,}, /*blue sky mode out1/2 enable 0x27->3f */
{0x5b, 0x00,}, /*Impulse pixel enable dark123,in,out123*/
{0x5c, 0x9f,}, /*Indoor maxfilter rate[7:5] | Uncertain onoff[4:0] 0x1f ->0x9f*/
{0x60, 0x3f,}, /*GbGr all enable*/
{0x62, 0x0f,}, /*GbGr offset*/
{0x65, 0x0c,}, /*Outdoor GbGr rate H 100% M 25% L 100%*/
{0x66, 0x0c,}, /*Indoor GbGr rate H 100% M 25% L 100%*/
{0x67, 0x00,}, /*dark GbGr rate H/M/L 100%*/
{0x70, 0x0c,}, /* Abberation On/Off B[1]: Outdoor B[0]: Indoor 07>>c*/
{0x75, 0xa0,}, /* Outdoor2 Abberation Luminance lvl */
{0x7d, 0xb4,}, /* Indoor Abberation Luminance lvl*/
{0x96, 0x08,}, /*indoor/Dark1 edgeoffset1*/
{0x97, 0x14,}, /*indoor/Dark1 center G value*/
{0x98, 0xf5,}, /*slope indoor :: left/right graph polarity, slope*/
{0x99, 0x2a,}, /*indoor uncertain ratio control*/
{0x9a, 0x20,}, /*Edgeoffset_dark*/
/*DPC_CTRL*/
{0x03, 0x12,}, /*Preview DPC off[0x5c] on[0x5d]*/
{0x20, 0x0f,},
{0x21, 0x0f,},
{0x25, 0x00,}, /* 0x30*/
{0x2a, 0x01,},
{0x2e, 0x00,}, /*2010.8.25*/
{0x30, 0x35,}, /*Texture region(most detail)*/
{0x31, 0xa0,}, /*STD uniform1 most blur region*/
{0x32, 0xb0,}, /*STD uniform2 2nd blur*/
{0x33, 0xc0,}, /*STD uniform3 3rd blur*/
{0x34, 0xd0,}, /*STD normal noise1 4th blur */
{0x35, 0xe0,}, /*STD normal noise2 5th blur*/
{0x36, 0xff,}, /*STD normal noise3 6th blur*/
{0x40, 0x83,}, /*Outdoor2 H th*/
{0x41, 0x20,}, /*Outdoor2 L th */
{0x42, 0x08,}, /*Outdoor2 H luminance */
{0x43, 0x10,}, /*Outdoor2 M luminance */
{0x44, 0x10,}, /*Outdoor2 l luminance */
{0x45, 0x50,}, /*Outdoor2 ratio*/
{0x46, 0x83,}, /*Outdoor1 H th*/
{0x47, 0x20,}, /*Outdoor1 L th */
{0x48, 0x08,}, /*Outdoor1 H luminance*/
{0x49, 0x10,}, /*Outdoor1 M luminance*/
{0x4a, 0x10,}, /*Outdoor1 L luminance*/
{0x4b, 0x50,}, /*Outdoor1 ratio*/
{0x4c, 0x80,}, /*Indoor H th*/
{0x4d, 0x48,}, /*Indoor L th*/
{0x4e, 0x30,}, /*indoor H lum*/
{0x4f, 0x30,}, /*indoor M lum*/
{0x50, 0x12,}, /*indoor L lum */
{0x51, 0x70,}, /*indoor ratio 0x10 -> 0x45*/
{0x52, 0xa8,}, /*dark1 H th*/
{0x53, 0x30,}, /*dark1 L th */
{0x54, 0x28,}, /*dark1 H lum */
{0x55, 0x3e,}, /*dark1 M lum*/
{0x56, 0x67,}, /*dark1 L lum*/
{0x57, 0x6a,}, /*dark1 ratio*/
{0x58, 0xa0,}, /*dark2 H th*/
{0x59, 0x40,}, /*dark2 L th*/
{0x5a, 0x28,}, /*dark2 H lum*/
{0x5b, 0x3f,}, /*dark2 M lum*/
{0x5c, 0x68,}, /*dark2 L lum*/
{0x5d, 0x70,}, /*dark2 ratio*/
{0x5e, 0xa0,}, /*dark3 H th*/
{0x5f, 0x40,}, /*dark3 L th*/
{0x60, 0x29,}, /*dark3 H lum*/
{0x61, 0x3f,}, /*dark3 M lum*/
{0x62, 0x69,}, /*dark3 L lum*/
{0x63, 0x6a,}, /*dark3 ratio*/
/*C-filter(Out2&Out1)*/
{0x70, 0x10,},
{0x71, 0x0a,},
/*C-filter(Indoor&Dark3)*/
{0x72, 0x10,},
{0x73, 0x0a,},
/*C-filter(Dark2&Dark1)*/
{0x74, 0x18,},
{0x75, 0x12,},
{0x80, 0x20,},
{0x81, 0x40,},
{0x82, 0x65,},
{0x85, 0x1a,},
{0x88, 0x00,},
{0x89, 0x00,},
{0x90, 0x5d,}, /*Preview DPC off[0x5c] on[0x5d]*/
/*DPC-Dark1,2,3*/
{0xad, 0x07,}, /*10825*/
{0xae, 0x07,}, /*10825*/
{0xaf, 0x07,}, /*10825*/
/*Blue Det..*/
{0xc5, 0x58,}, /*BlueRange 2010.8.25 {0x40, 0x->2}3 */
{0xc6, 0x20,}, /*GreenRange 2010.8.25 0x3b->20 */
{0xd0, 0x88,}, /*2010.8.25*/
{0xd1, 0x80,},
{0xd2, 0x17,},/*preview 17, full 67*/
{0xd3, 0x00,},
{0xd4, 0x00,},
{0xd5, 0x0f,},/*preview 0f, full 02*/
{0xd6, 0xff,},
{0xd7, 0xff,},/*preview ff, full 18*/
{0xd8, 0x00,},
{0xd9, 0x04,},
/*interpolated with average*/
{0xdb, 0x38,}, /*resolution issue 0x00->0x18->0x38 */
{0xd9, 0x04,}, /*strong_edge detect ratio*/
{0xe0, 0x01,}, /*strong_edge detect ratio*/
{0x03, 0x13,}, /*page 13 sharpness 1D*/
{0x10, 0xc5,},
{0x11, 0x7b,},
{0x12, 0x0e,},
{0x14, 0x00,},
{0x15, 0x11,}, /*added option 1.3M */
{0x18, 0x30,}, /*added option 1.3M */
{0x20, 0x15,},
{0x21, 0x13,},
{0x22, 0x33,},
{0x23, 0x08,}, /*hi_clip th1*/
{0x24, 0x1a,}, /*hi_clip th2*/
{0x25, 0x06,}, /*low clip th*/
{0x26, 0x18,},
{0x27, 0x30,},
{0x29, 0x10,}, /*time th*/
{0x2a, 0x30,}, /*pga th*/
{0x2b, 0x03,}, /*lpf out2*/
{0x2c, 0x03,}, /*lpf out1*/
{0x2d, 0x0c,},
{0x2e, 0x12,},
{0x2f, 0x12,},
/*1D Edge*/
{0x50, 0x0a,}, /*out2 hi nega*/
{0x53, 0x07,}, /* hi pos*/
{0x51, 0x0c,}, /* mi nega*/
{0x54, 0x07,}, /* mi pos*/
{0x52, 0x0b,}, /* lo nega*/
{0x55, 0x08,}, /* lo pos*/
{0x56, 0x0a,}, /*out1 hi nega*/
{0x59, 0x07,}, /* hi pos */
{0x57, 0x0c,}, /* mi nega*/
{0x5a, 0x07,}, /* mi pos */
{0x58, 0x0b,}, /* lo nega*/
{0x5b, 0x08,}, /* lo pos */
/*Indoor Edge*/
{0x5c, 0x08,}, /*indoor hi nega*/
{0x5f, 0x07,}, /* hi pos*/
{0x5d, 0x14,}, /* mid nega */
{0x60, 0x12,}, /* mid pos */
{0x5e, 0x0a,}, /* low nega */
{0x61, 0x08,}, /* low pos*/
{0x62, 0x08,}, /*dark1 hi nega*/
{0x65, 0x06,}, /* hi pos */
{0x63, 0x08,}, /* mid nega */
{0x66, 0x06,}, /* mid pos */
{0x64, 0x08,}, /* low nega */
{0x67, 0x06,}, /* low pos */
{0x68, 0x07,}, /*dark2 hi nega*/
{0x6b, 0x05,}, /* hi pos */
{0x69, 0x07,}, /* mid nega */
{0x6c, 0x05,}, /* mid pos */
{0x6a, 0x07,}, /* low nega */
{0x6d, 0x05,}, /* low pos */
{0x6e, 0x0a,}, /*dark3 hi nega*/
{0x71, 0x09,}, /* hi pos */
{0x6f, 0x0a,}, /* mid nega */
{0x72, 0x09,}, /* mid pos */
{0x70, 0x0a,}, /* low nega */
{0x73, 0x09,}, /* low pos */
/* 2DY*/
{0x80, 0xc1,},
{0x81, 0x1f,},
{0x82, 0xe1,},
{0x83, 0x33,},
{0x90, 0x05,},
{0x91, 0x05,},
{0x92, 0x33,},
{0x93, 0x30,},
{0x94, 0x03,},
{0x95, 0x14,},
{0x97, 0x30,},
{0x99, 0x30,},
{0xa0, 0x02,}, /*2d lclp out2 nega*/
{0xa1, 0x03,}, /*2d lclp out2 pos*/
{0xa2, 0x02,}, /*2d lclp out1 nega*/
{0xa3, 0x03,}, /*2d lclp out1 pos*/
{0xa4, 0x03,}, /*2d lclp in nega*/
{0xa5, 0x04,}, /*2d lclp in pos*/
{0xa6, 0x07,}, /*2d lclp dark1 nega*/
{0xa7, 0x08,}, /*2d lclp dark1 pos*/
{0xa8, 0x07,}, /*2d lclp dark2 nega*/
{0xa9, 0x08,}, /*2d lclp dark2 pos*/
{0xaa, 0x07,}, /*2d lclp dark3 nega*/
{0xab, 0x08,}, /*2d lclp dark3 pos*/
{0xb0, 0x10,}, /*out2 H Ne*/
{0xb3, 0x10,}, /* H Po*/
{0xb1, 0x1e,}, /* M Ne*/
{0xb4, 0x1e,}, /* M Po*/
{0xb2, 0x1f,}, /* L Ne*/
{0xb5, 0x1e,}, /* L Po*/
{0xb6, 0x10,}, /*out1 H Ne */
{0xb9, 0x10,}, /* H Po */
{0xb7, 0x1e,}, /* M Ne */
{0xba, 0x1e,}, /* M Po */
{0xb8, 0x1f,}, /* L Ne */
{0xbb, 0x1e,}, /* L Po */
{0xbc, 0x20,}, /*indoor H Ne*/
{0xbf, 0x1e,}, /* H Po*/
{0xbd, 0x25,}, /* M Ne*/
{0xc0, 0x23,}, /* M Po*/
{0xbe, 0x24,}, /* L Ne*/
{0xc1, 0x22,}, /* L Po*/
{0xc2, 0x23,}, /*dark1 H Ne*/
{0xc5, 0x23,}, /* H Po*/
{0xc3, 0x29,}, /* M Ne*/
{0xc6, 0x29,}, /* M Po*/
{0xc4, 0x25,}, /* L Ne*/
{0xc7, 0x25,}, /* L Po*/
{0xc8, 0x1c,}, /*dark2 H Ne*/
{0xcb, 0x1c,}, /* H Po*/
{0xc9, 0x25,}, /* M Ne*/
{0xcc, 0x25,}, /* M Po*/
{0xca, 0x23,}, /* L Ne*/
{0xcd, 0x23,}, /* L Po*/
{0xce, 0x1c,}, /*dark3 H Ne*/
{0xd1, 0x1c,}, /* H Po*/
{0xcf, 0x25,}, /* M Ne*/
{0xd2, 0x25,}, /* M Po*/
{0xd0, 0x23,}, /* L Ne*/
{0xd3, 0x23,}, /* L Po*/
/* PAGE 14 START*/
{0x03, 0x14,},
{0x10, 0x31,},
{0x14, 0x80,}, /* GX*/
{0x15, 0x80,}, /* GY*/
{0x16, 0x80,}, /* RX*/
{0x17, 0x80,}, /* RY*/
{0x18, 0x80,}, /* BX*/
{0x19, 0x80,}, /* BY*/
{0x20, 0x60,}, /* X Center*/
{0x21, 0x80,}, /* Y Center*/
{0x22, 0x80,},
{0x23, 0x80,},
{0x24, 0x80,},
{0x30, 0xc8,},
{0x31, 0x2b,},
{0x32, 0x00,},
{0x33, 0x00,},
{0x34, 0x90,},
{0x40, 0x60,}, /*R min's set 4e*/
{0x41, 0x44,}, /*Gr*/
{0x42, 0x3e,}, /*B*/
{0x43, 0x44,}, /*Gb*/
{0x03, 0x15,},
{0x10, 0x21,},
{0x14, 0x44,}, /*49*/
{0x15, 0x34,}, /*38*/
{0x16, 0x26,}, /*2b*/
{0x17, 0x2f,},
/*CMC*/
{0x30, 0xdd,},
{0x31, 0x62,},
{0x32, 0x05,},
{0x33, 0x26,},
{0x34, 0xbd,},
{0x35, 0x17,},
{0x36, 0x18,},
{0x37, 0x38,},
{0x38, 0xd0,},
{0x40, 0xb0,},
{0x41, 0x30,},
{0x42, 0x00,},
{0x43, 0x00,},
{0x44, 0x00,},
{0x45, 0x00,},
{0x46, 0x99,},
{0x47, 0x19,},
{0x48, 0x00,},
{0x50, 0x16,},
{0x51, 0xb2,},
{0x52, 0x1c,},
{0x53, 0x06,},
{0x54, 0x20,},
{0x55, 0xa6,},
{0x56, 0x0e,},
{0x57, 0xb2,},
{0x58, 0x24,},
{0x03, 0x16,},
{0x10, 0x31,}, /*GMA_CTL*/
{0x18, 0x7e,}, /*AG_ON*/
{0x19, 0x7d,}, /*AG_OFF*/
{0x1a, 0x0e,}, /*TIME_ON*/
{0x1b, 0x01,}, /*TIME_OFF*/
{0x1C, 0xdc,}, /*OUT_ON*/
{0x1D, 0xfe,}, /*OUT_OFF*/
{0x30, 0x00,},
{0x31, 0x07,},
{0x32, 0x1a,},
{0x33, 0x37,},
{0x34, 0x5c,},
{0x35, 0x7d,},
{0x36, 0x96,},
{0x37, 0xa9,},
{0x38, 0xb7,},
{0x39, 0xc6,},
{0x3a, 0xd2,},
{0x3b, 0xdc,},
{0x3c, 0xe4,},
{0x3d, 0xeb,},
{0x3e, 0xf1,},
{0x3f, 0xf5,},
{0x40, 0xf9,},
{0x41, 0xfd,},
{0x42, 0xff,},
{0x50, 0x00,},
{0x51, 0x03,},
{0x52, 0x13,},
{0x53, 0x2e,},
{0x54, 0x59,},
{0x55, 0x79,},
{0x56, 0x90,},
{0x57, 0xa3,},
{0x58, 0xb4,},
{0x59, 0xc2,},
{0x5a, 0xcd,},
{0x5b, 0xd7,},
{0x5c, 0xe0,},
{0x5d, 0xe5,},
{0x5e, 0xe9,},
{0x5f, 0xee,},
{0x60, 0xf1,},
{0x61, 0xf3,},
{0x62, 0xf6,},
{0x70, 0x07,},
{0x71, 0x1a,},
{0x72, 0x2d,},
{0x73, 0x46,},
{0x74, 0x6a,},
{0x75, 0x86,},
{0x76, 0x9c,},
{0x77, 0xad,},
{0x78, 0xbc,},
{0x79, 0xc9,},
{0x7a, 0xd4,},
{0x7b, 0xde,},
{0x7c, 0xe4,},
{0x7d, 0xeb,},
{0x7e, 0xf1,},
{0x7f, 0xf5,},
{0x80, 0xf9,},
{0x81, 0xfd,},
{0x82, 0xff,},
{0x03, 0x24,}, /*Resol control */
{0x60, 0xc5,}, /*edge even frame | 16bit resol | white edge cnt | scene resol enable*/
{0x61, 0x04,}, /*even frame update */
{0x64, 0x08,},
{0x65, 0x00,},
{0x66, 0x26,}, /*edge th2 H */
{0x67, 0x00,}, /*edge th2 L */
{0x03, 0x13,},
{0x18, 0x31,}, /*flat center Gb/Gr*/
{0x74, 0x02,}, /*det slope en | gausian filter*/
{0x75, 0x0d,}, /*1D negative gain det 09 */
{0x76, 0x0d,}, /*1D postive gain det 08*/
{0x77, 0x10,}, /*1D hclp2 det*/
{0x78, 0x08,}, /*outdoor flat threshold*/
{0x79, 0x10,}, /*indoor flat threshold*/
{0x81, 0xdf,}, /*det gain controler*/
{0x86, 0x90,}, /*2D negative gain det */
{0x87, 0x90,}, /*2D postive gain det */
{0x96, 0x2a,}, /*2D hclp2 det*/
{0x03, 0x12,}, /*0x12 page*/
{0xd0, 0x88,},
{0xd9, 0xe4,},
{0x03, 0x18,},
{0x14, 0x43,}, /*83*/
/* PAGE 20 START*/
{0x03, 0x20,},
{0x11, 0x1c,},
{0x18, 0x30,},
{0x1a, 0x08,},
{0x20, 0x45,},/*weight*/
{0x21, 0x30,},
{0x22, 0x10,},
{0x23, 0x00,},
{0x24, 0x00,},
{0x28, 0xe7,}, /* add 20120223*/
{0x29, 0x0d,}, /* 20100305 ad -> 0d*/
{0x2a, 0xfd,},
{0x2b, 0xf8,},
{0x2c, 0x43,}, /* 20140618 c3 -> 43*/
{0x2d, 0x5f,}, /* add 20120223*/
{0x2e, 0x33,},
{0x30, 0xf8,},
{0x32, 0x03,},
{0x33, 0x2e,},
{0x34, 0x30,},
{0x35, 0xd4,},
{0x36, 0xfe,},
{0x37, 0x32,},
{0x38, 0x04,},
{0x39, 0x22,},
{0x3a, 0xde,},
{0x3b, 0x22,},
{0x3c, 0xde,},
{0x3d, 0xe1,},
{0x50, 0x45,},
{0x51, 0x88,},
{0x56, 0x19,},
{0x57, 0x81,},
{0x58, 0x0e,},
{0x59, 0x6a,},
{0x5a, 0x04,},
{0x5e, 0x9d,}, /*AE_AWB_start*/
{0x5f, 0x76,}, /*AE_AWB_start*/
{0x70, 0x33,}, /* 6c*/
{0x71, 0x82,}, /* 82(+8)*/
{0x76, 0x21,},
{0x77, 0x71,},
{0x78, 0x22,}, /* 24*/
{0x79, 0x23,}, /* Y Target 70 => 25, 72 => 26*/
{0x7a, 0x23,}, /* 23*/
{0x7b, 0x22,}, /* 22*/
{0x7d, 0x23,},
{0x83, 0x01,}, /*EXP Normal 30 fps */
{0x84, 0x86,},
{0x85, 0xa0,},
{0x86, 0x01,}, /*EXPMin 7500.00 fps*/
{0x87, 0x90,},
{0x88, 0x01,}, /*EXP Max(120Hz) 30.00 fps */
{0x89, 0x86,},
{0x8a, 0xa0,},
{0xa5, 0x01,}, /*EXP Max(100Hz) 25.xx fps */
{0xa6, 0xd1,},
{0xa7, 0xa0,},
{0x91, 0x01,}, /*EXP Fix 24.00 fps*/
{0x92, 0xe8,},
{0x93, 0x48,},
{0x8B, 0x75,}, /*EXP100 */
{0x8C, 0x30,},
{0x8D, 0x61,}, /*EXP120 */
{0x8E, 0xa8,},
{0x9c, 0x0b,}, /*EXP Limit 1000 fps */
{0x9d, 0xb8,},
{0x9e, 0x01,}, /*EXP Unit */
{0x9f, 0x90,},
{0x98, 0x9d,},
{0xb0, 0x16,},
{0xb1, 0x14,},
{0xb2, 0xf8,},
{0xb3, 0x14,},
{0xb4, 0x1b,},
{0xb5, 0x46,},
{0xb6, 0x31,},
{0xb7, 0x29,},
{0xb8, 0x26,},
{0xb9, 0x24,},
{0xba, 0x22,},
{0xbb, 0x42,},
{0xbc, 0x41,},
{0xbd, 0x40,},
{0xc0, 0x10,},
{0xc1, 0x38,},
{0xc2, 0x38,},
{0xc3, 0x38,},
{0xc4, 0x07,},
{0xc8, 0x80,},
{0xc9, 0x80,},
{0x10, 0x8c,}, /* ae enable*/
/* PAGE 20 END*/
/*AE_Weight*/
{0x03, 0x21,},
{0x20, 0x11,},
{0x21, 0x11,},
{0x22, 0x11,},
{0x23, 0x11,},
{0x24, 0x12,},
{0x25, 0x22,},
{0x26, 0x22,},
{0x27, 0x21,},
{0x28, 0x12,},
{0x29, 0x22,},
{0x2a, 0x22,},
{0x2b, 0x21,},
{0x2c, 0x12,},
{0x2d, 0x23,},
{0x2e, 0x32,},
{0x2f, 0x21,},
{0x30, 0x12,},
{0x31, 0x23,},
{0x32, 0x32,},
{0x33, 0x21,},
{0x34, 0x12,},
{0x35, 0x22,},
{0x36, 0x22,},
{0x37, 0x21,},
{0x38, 0x12,},
{0x39, 0x22,},
{0x3a, 0x22,},
{0x3b, 0x21,},
{0x3c, 0x11,},
{0x3d, 0x11,},
{0x3e, 0x11,},
{0x3f, 0x11,},
/* PAGE 22 START*/
{0x03, 0x22,},
{0x10, 0xfd,},
{0x11, 0x2e,},
{0x19, 0x01,}, /* Low On*/
{0x20, 0x30,}, /* for wb speed*/
{0x21, 0x40,},
{0x24, 0x01,},
{0x25, 0x7e,}, /* for tracking 20120314 */
{0x30, 0x80,}, /* 20120224 test*/
{0x31, 0x80,},
{0x38, 0x11,},
{0x39, 0x34,},
{0x40, 0xe3,},
{0x41, 0x43,}, /* 33*/
{0x42, 0x22,}, /* 22*/
{0x43, 0xf3,}, /* f6*/
{0x44, 0x54,}, /* 44*/
{0x45, 0x22,}, /* 33*/
{0x46, 0x00,},
{0x48, 0x0a,},
{0x50, 0xb2,},
{0x51, 0x81,},
{0x52, 0x98,},
{0x80, 0x38,},
{0x81, 0x20,},
{0x82, 0x38,}, /* 3a*/
{0x83, 0x56,}, /* R Max*/
{0x84, 0x20,}, /* R Min*/
{0x85, 0x53,}, /* B Max*/
{0x86, 0x20,}, /* B Min*/
{0x87, 0x46,},
{0x88, 0x36,},
{0x89, 0x3a,},
{0x8a, 0x2f,},
{0x8b, 0x3d,},
{0x8c, 0x37,},
{0x8d, 0x35,},
{0x8e, 0x32,},
{0x8f, 0x5d,},
{0x90, 0x5a,},
{0x91, 0x56,},
{0x92, 0x50,},
{0x93, 0x48,},
{0x94, 0x3f,},
{0x95, 0x34,},
{0x96, 0x2c,},
{0x97, 0x23,},
{0x98, 0x20,},
{0x99, 0x1f,},
{0x9a, 0x1f,},
{0x9b, 0x77,},
{0x9c, 0x77,},
{0x9d, 0x48,},
{0x9e, 0x38,},
{0x9f, 0x30,},
{0xa0, 0x40,},
{0xa1, 0x21,},
{0xa2, 0x6f,},
{0xa3, 0xff,},
{0xa4, 0x14,}, /* 1500fps*/
{0xa5, 0x44,}, /* 700fps*/
{0xa6, 0xcf,},
{0xad, 0x40,},
{0xae, 0x4a,},
{0xaf, 0x2a,}, /* low temp Rgain*/
{0xb0, 0x28,}, /* low temp Rgain*/
{0xb1, 0x00,}, /* 0x20 -> 0x00 0405 modify*/
{0xb4, 0xbf,}, /* for tracking 20120314*/
{0xb8, 0xb1,}, /* a2: b-2, R+2 b4 B-3, R+4 lowtemp b0 a1 Spec AWB A modify*/
{0xb9, 0x00,},
/* PAGE 22 END*/
/* PAGE 48 (MiPi 1600x1200)*/
{0x03, 0x00,},
/* PLL Setting */
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x05,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x03, 0x48,},
/* MIPI TX Setting */
{0x10, 0x1c,},
{0x11, 0x00,},
{0x12, 0x00,},
{0x14, 0x00,},
{0x16, 0x04,},
{0x17, 0x00,},
{0x18, 0x80,},
{0x19, 0x00,},
{0x1a, 0xa0,},
{0x1c, 0x02,},
{0x1d, 0x0e,},
{0x1e, 0x07,},
{0x1f, 0x08,},
{0x22, 0x00,},
{0x23, 0x01,},
{0x24, 0x1e,},
{0x25, 0x00,},
{0x26, 0x00,},
{0x27, 0x08,},
{0x28, 0x00,},
{0x30, 0x05,},
{0x31, 0x00,},
{0x32, 0x07,},
{0x33, 0x09,},
{0x34, 0x01,},
{0x35, 0x01,},
{0x03, 0x00,},
{0x01, 0x00,},
{0xff, 0x28,}, /*400ms Delay*/
};
static struct msm_camera_i2c_reg_conf sr130pc20_Preview[] = {
{0x03, 0x00,},
{0x01, 0x01,},/*sleep*/
{0xd0, 0x05,},/*Pll Off*/
{0x03, 0x20,},
{0x10, 0x0c,},/*AE off (0x0c:60Hz 0x1c:50Hz)*/
{0x03, 0x22,},
{0x10, 0x7d,},/*AWB off*/
{0x03, 0x00,},
{0x10, 0x11,},
{0x03, 0x11,},
{0x5b, 0x00,},/*don't touch*/
{0x03, 0x12,},
{0x20, 0x0f,},
{0x21, 0x0f,},
{0xd2, 0x17,},
{0xd5, 0x0f,},
{0xd7, 0xff,},
{0x03, 0x13,},
{0x10, 0xc4,},
{0x80, 0xc0,},
{0x03, 0x18,},
{0x14, 0x43,}, /*83*/
{0x03, 0x20,},
{0x10, 0x8c,}, /*AE ON (0x8c:60Hz 0x9c:50Hz)*/
{0x03, 0x22,},
{0x10, 0xfd,}, /*AWB ON*/
{0x03, 0x00,}, /*Page 0 PLL on*/
{0xd0, 0x05,},
{0xd1, 0x30,},
{0xd2, 0x05,},
{0xd3, 0x20,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x85,},
{0xd0, 0x95,},
{0x03, 0x48,},
{0x10, 0x1c,},
{0x11, 0x00,},
{0x12, 0x00,},
{0x14, 0x00,},
{0x16, 0x04,},
{0x17, 0x00,},
{0x18, 0x80,},
{0x19, 0x00,},
{0x1a, 0xa0,},
{0x1c, 0x02,},
{0x1d, 0x0e,},
{0x1e, 0x07,},
{0x1f, 0x08,},
{0x22, 0x00,},
{0x23, 0x01,},
{0x24, 0x1e,},
{0x25, 0x00,},
{0x26, 0x00,},
{0x27, 0x08,},
{0x28, 0x00,},
{0x30, 0x05,},
{0x31, 0x00,},
{0x32, 0x07,},
{0x33, 0x09,},
{0x34, 0x01,},
{0x35, 0x01,},
{0x03, 0x00,},
{0x01, 0x00,},
{0xff, 0x32,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_stop_stream[] = {
{0x03, 0x00,},
{0x01, 0x01,},
{0xff, 0x02,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_effect_none[] = {
{0x03, 0x10,},
{0x11, 0x03,},
{0x12, 0x30,},
{0x13, 0x02,},
{0x40, 0x80,},
{0x44, 0x80,},
{0x45, 0x80,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_effect_gray[] = {
{0x03, 0x10,}, /*Page 10 <Effect> */
{0x11, 0x03,}, /*Effect control 0x03 default */
{0x12, 0x33,}, /*0x30 default ->0x33 UV Constant */
{0x13, 0x02,}, /*0x02 default <Contrast effect> */
{0x40, 0x80,}, /*0x80 Y_offset X 1 */
{0x44, 0x80,}, /*Cb constant */
{0x45, 0x80,}, /*Cr constant */
};
static struct msm_camera_i2c_reg_conf sr130pc20_effect_sepia[] = {
{0x03, 0x10,}, /*Page 10 <Effect> */
{0x11, 0x03,}, /*Effect control 0x03 default */
{0x12, 0x33,}, /*0x30 default ->0x33 UV Constant */
{0x13, 0x02,}, /*0x02 default <Contrast effect> */
{0x40, 0x80,}, /*0x80 Y_offset X 1 */
{0x44, 0x70,}, /*Cb constant */
{0x45, 0x98,}, /*Cr constant */
};
static struct msm_camera_i2c_reg_conf sr130pc20_effect_negative[] = {
{0x03, 0x10,}, /*Page 10 <Effect> */
{0x11, 0x03,}, /*0x03 default <Color Space | Color interpolation> */
{0x12, 0x38,}, /*0x30 default <AutoBright | Yoffset | Negative > */
{0x13, 0x02,}, /*0x02 default <Contrast effect> */
{0x40, 0x80,}, /*0x80 Y_offset X 1 */
{0x44, 0x80,}, /*Cb constant */
{0x45, 0x80,}, /*Cr constant */
};
/* WhiteBalance Mode */
static struct msm_camera_i2c_reg_conf sr130pc20_wb_auto[] = {
{0x03, 0x22,},
{0x10, 0x6b,},
{0x11, 0x2e,},
{0x80, 0x38,},
{0x81, 0x20,},
{0x82, 0x38,},
{0x83, 0x56,},
{0x84, 0x20,},
{0x85, 0x52,},
{0x86, 0x20,},
{0x10, 0xeb,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_wb_sunny[] = {
{0x03, 0x22,},
{0x10, 0x6b,},
{0x11, 0x2c,}, /*awbctrl2 */
{0x80, 0x38,}, /*r gain */
{0x81, 0x20,}, /*g gain */
{0x82, 0x35,}, /*b gain */
{0x83, 0x3b,}, /*r gain max */
{0x84, 0x34,}, /*r gain min */
{0x85, 0x38,}, /*b gain max */
{0x86, 0x31,}, /*b gain min */
{0x10, 0xeb,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_wb_cloudy[] = {
{0x03, 0x22,},
{0x10, 0x6b,},
{0x11, 0x2c,}, /*awbctrl2 */
{0x80, 0x50,}, /*r gain */
{0x81, 0x20,}, /*g gain */
{0x82, 0x28,}, /*b gain */
{0x83, 0x52,}, /*r gain max */
{0x84, 0x4c,}, /*r gain min */
{0x85, 0x2c,}, /*b gain max */
{0x86, 0x22,}, /*b gain min */
{0x10, 0xeb,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_wb_fluorescent[] = {
{0x03, 0x22,},
{0x10, 0x6b,},
{0x11, 0x2c,}, /*awbctrl2 */
{0x80, 0x37,}, /*r gain */
{0x81, 0x20,}, /*g gain */
{0x82, 0x48,}, /*b gain */
{0x83, 0x39,}, /*r gain max */
{0x84, 0x34,}, /*r gain min */
{0x85, 0x4a,}, /*b gain max */
{0x86, 0x45,}, /*b gain min */
{0x10, 0xeb,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_wb_tungsten[] = {
{0x03, 0x22,},
{0x10, 0x6b,},
{0x11, 0x2c,}, /*awbctrl2 */
{0x80, 0x21,}, /*r gain */
{0x81, 0x20,}, /*g gain */
{0x82, 0x4f,}, /*b gain */
{0x83, 0x27,}, /*r gain max */
{0x84, 0x1b,}, /*r gain min */
{0x85, 0x59,}, /*b gain max */
{0x86, 0x50,}, /*b gain min */
{0x10, 0xeb,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_M4[] = {
{0x03, 0x10,},
{0x40, 0xd0,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_M3[] = {
{0x03, 0x10,},
{0x40, 0xB0,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_M2[] = {
{0x03, 0x10,},
{0x40, 0xA0,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_M1[] = {
{0x03, 0x10,},
{0x40, 0x90,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_default[] = {
{0x03, 0x10,},
{0x40, 0x80,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_P1[] = {
{0x03, 0x10,},
{0x40, 0x10,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_P2[] = {
{0x03, 0x10,},
{0x40, 0x20,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_P3[] = {
{0x03, 0x10,},
{0x40, 0x30,},
};
static struct msm_camera_i2c_reg_conf sr130pc20_brightness_P4[] = {
{0x03, 0x10,},
{0x40, 0x50,},
};