diff options
Diffstat (limited to 'drivers/media/video/wmt_v4l2/sensors/gc0308/gc0308-7304.h')
-rwxr-xr-x | drivers/media/video/wmt_v4l2/sensors/gc0308/gc0308-7304.h | 546 |
1 files changed, 546 insertions, 0 deletions
diff --git a/drivers/media/video/wmt_v4l2/sensors/gc0308/gc0308-7304.h b/drivers/media/video/wmt_v4l2/sensors/gc0308/gc0308-7304.h new file mode 100755 index 00000000..6610814b --- /dev/null +++ b/drivers/media/video/wmt_v4l2/sensors/gc0308/gc0308-7304.h @@ -0,0 +1,546 @@ +#ifndef GC0308_H
+#define GC0308_H
+
+
+// Scene Mode
+uint8_t gc0308_scene_mode_auto[] = {
+ 0xfe, 0x00, // set page0
+ 0xec, 0x20,
+};
+
+uint8_t gc0308_scene_mode_night[] = {
+ 0xfe, 0x00, // set page0
+ 0xec, 0x30,
+};
+
+
+// White Balance
+uint8_t gc0308_wb_auto [] = {
+ 0xfe, 0x00, // set page0
+ 0x5a, 0x56,
+ 0x5b, 0x40,
+ 0x5c, 0x4a,
+ 0x22, 0x57,
+};
+
+uint8_t gc0308_wb_incandescent [] = {
+ 0xfe, 0x00, // set page0
+ 0x22, 0x55,
+ 0x5a, 0x48,
+ 0x5b, 0x40,
+ 0x5c, 0x5c,
+};
+
+uint8_t gc0308_wb_fluorescent [] = {
+ 0xfe, 0x00, // set page0
+ 0x22, 0x55,
+ 0x5a, 0x40,
+ 0x5b, 0x42,
+ 0x5c, 0x50,
+};
+
+uint8_t gc0308_wb_daylight [] = {
+ 0xfe, 0x00, // set page0
+ 0x22, 0x55,
+ 0x5a, 0x74,
+ 0x5b, 0x52,
+ 0x5c, 0x40,
+};
+
+uint8_t gc0308_wb_cloudy [] = {
+ 0xfe, 0x00, // set page0
+ 0x22, 0x55,
+ 0x5a, 0x8c,
+ 0x5b, 0x50,
+ 0x5c, 0x40,
+};
+
+
+// Exposure
+uint8_t gc0308_exposure_neg9[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0xc0,
+ 0xd3, 0x20,
+};
+
+uint8_t gc0308_exposure_neg6[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0xd0,
+ 0xd3, 0x20,
+};
+
+uint8_t gc0308_exposure_neg3[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0xe0,
+ 0xd3, 0x30,
+};
+
+uint8_t gc0308_exposure_zero[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0xf0,
+ 0xd3, 0x40,
+};
+
+uint8_t gc0308_exposure_pos3[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0x10,
+ 0xd3, 0x50,
+};
+
+uint8_t gc0308_exposure_pos6[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0x20,
+ 0xd3, 0x68,
+};
+
+uint8_t gc0308_exposure_pos9[] = {
+ 0xfe, 0x00, // set page0
+ 0xb5, 0x30,
+ 0xd3, 0x78,
+};
+
+uint8_t gc0308_antibanding_auto[] = { + 0xfe,0x00, + + 0x01,0x97, + 0x02,0x84, + 0x0f,0x03, + + 0xe2,0x00, //anti-flicker step [11:8] + 0xe3,0x3e, //anti-flicker step [7:0] + + 0xe4,0x02, //exp level 0 12.5fps + 0xe5,0x6c, + 0xe6,0x02, //exp level 1 10fps + 0xe7,0xe8, + 0xe8,0x03, //exp level 2 7.69fps + 0xe9,0xe0, + 0xea,0x05, //exp level 3 5.00fps + 0xeb,0xd0, + +}; + +uint8_t gc0308_antibanding_50hz[] = { + 0xfe,0x00, + + 0x01,0x26, + 0x02,0x98, + 0x0f,0x03, + + 0xe2,0x00, //anti-flicker step [11:8] + 0xe3,0x50, //anti-flicker step [7:0] + + 0xe4,0x02, //exp level 0 12.5fps + 0xe5,0x80, + 0xe6,0x03, //exp level 1 10fps + 0xe7,0x20, + 0xe8,0x04, //exp level 2 7.69fps + 0xe9,0x10, + 0xea,0x06, //exp level 3 5.00fps + 0xeb,0x40, + +}; + +uint8_t gc0308_antibanding_60hz[] = { + 0xfe,0x00, + + 0x01,0x97, + 0x02,0x84, + 0x0f,0x03, + + 0xe2,0x00, //anti-flicker step [11:8] + 0xe3,0x3e, //anti-flicker step [7:0] + + 0xe4,0x02, //exp level 0 12.5fps + 0xe5,0x6c, + 0xe6,0x02, //exp level 1 10fps + 0xe7,0xe8, + 0xe8,0x03, //exp level 2 7.69fps + 0xe9,0xe0, + 0xea,0x05, //exp level 3 5.00fps + 0xeb,0xd0, + +}; + +uint8_t gc0308_antibanding_off[] = { + 0xfe,0x00, + + 0x01,0x26, + 0x02,0x98, + 0x0f,0x03, + + 0xe2,0x00, //anti-flicker step [11:8] + 0xe3,0x50, //anti-flicker step [7:0] + + 0xe4,0x02, //exp level 0 12.5fps + 0xe5,0x80, + 0xe6,0x03, //exp level 1 10fps + 0xe7,0x20, + 0xe8,0x04, //exp level 2 7.69fps + 0xe9,0x10, + 0xea,0x06, //exp level 3 5.00fps + 0xeb,0x40, + +};
+
+// Resolution
+uint8_t gc0308_320x240[]= {
+ 0xfe, 0x01,
+ 0x54, 0x22,
+ 0x55, 0x03,
+ 0x56, 0x00,
+ 0x57, 0x00,
+ 0x58, 0x00,
+ 0x59, 0x00,
+ 0xfe, 0x00,
+};
+
+uint8_t gc0308_640x480[] = {
+ 0xfe,0x01,
+ 0x54,0x11,
+ 0x55,0x03,
+ 0x56,0x00,
+ 0x57,0x00,
+ 0x58,0x00,
+ 0x59,0x00,
+ 0xfe,0x00,
+ 0x46,0x00,
+ 0xfe,0x00,
+};
+
+uint8_t gc0308_default_regs_init[] = {
+ 0xfe,0x80,
+
+ 0xfe,0x00, // set page0
+
+ 0xd2,0x10, // close AEC
+ 0x22,0x55, // close AWB
+
+ 0x03,0x01,
+ 0x04,0x2c,
+ 0x5a,0x56,
+ 0x5b,0x40,
+ 0x5c,0x4a,
+
+ 0x22,0x57, // Open AWB
+
+ 0x01,0xfa,
+ 0x02,0x70,
+ 0x0f,0x01,
+
+ 0xe2,0x00, //anti-flicker step [11:8]
+ 0xe3,0x64, //anti-flicker step [7:0]
+
+ 0xe4,0x02, //exp level 1 16.67fps
+ 0xe5,0x58,
+ 0xe6,0x03, //exp level 2 12.5fps
+ 0xe7,0x20,
+ 0xe8,0x05, //exp level 3 8.33fps
+ 0xe9,0x14,
+ 0xea,0x09, //exp level 4 4.00fps
+ 0xeb,0xc4,
+
+ 0xec,0x20,
+
+ 0x05,0x00,
+ 0x06,0x00,
+ 0x07,0x00,
+ 0x08,0x00,
+ 0x09,0x01,
+ 0x0a,0xe8,
+ 0x0b,0x02,
+ 0x0c,0x88,
+ 0x0d,0x02,
+ 0x0e,0x02,
+ 0x10,0x22,
+ 0x11,0xfd,
+ 0x12,0x2a,
+ 0x13,0x00,
+ 0x14,0x10, //0x10
+
+ 0x15,0x0a,
+ 0x16,0x05,
+ 0x17,0x01,
+ 0x18,0x44,
+ 0x19,0x44,
+ 0x1a,0x1e,
+ 0x1b,0x00,
+ 0x1c,0xc1,
+ 0x1d,0x08,
+ 0x1e,0x60,
+ 0x1f,0x16,
+
+
+
+ 0x20,0xff,
+ 0x21,0xf8,
+ 0x22,0x57,
+ 0x24,0xa2,
+ 0x25,0x0f,
+
+ //output sync_mode
+
+
+ 0x26,0x02, //0x03 20101016 zhj
+
+ 0x2f,0x01,
+ 0x30,0xf7,
+ 0x31,0x50,
+ 0x32,0x00,
+ 0x39,0x04,
+ 0x3a,0x18,
+ 0x3b,0x20,
+ 0x3c,0x00,
+ 0x3d,0x00,
+ 0x3e,0x00,
+ 0x3f,0x00,
+ 0x50,0x10,
+ 0x53,0x82,
+ 0x54,0x80,
+ 0x55,0x80,
+ 0x56,0x82,
+ 0x8b,0x40,
+ 0x8c,0x40,
+ 0x8d,0x40,
+ 0x8e,0x2e,
+ 0x8f,0x2e,
+ 0x90,0x2e,
+ 0x91,0x3c,
+ 0x92,0x50,
+ 0x5d,0x12,
+ 0x5e,0x1a,
+ 0x5f,0x24,
+ 0x60,0x07,
+ 0x61,0x15,
+ 0x62,0x04,
+ 0x64,0x03,
+ 0x66,0xe8,
+ 0x67,0x86,
+ 0x68,0xa2,
+ 0x69,0x18,
+ 0x6a,0x0f,
+ 0x6b,0x00,
+ 0x6c,0x5f,
+ 0x6d,0x8f,
+ 0x6e,0x55,
+ 0x6f,0x38,
+ 0x70,0x20, //0x15
+ 0x71,0x35, //0x33
+ 0x72,0xdc,
+ 0x73,0x80,
+ 0x74,0x02,
+ 0x75,0x3f,
+ 0x76,0x02,
+ 0x77,0x43,//54
+ 0x78,0x88,
+ 0x79,0x81,
+ 0x7a,0x81,
+ 0x7b,0x22,
+ 0x7c,0xff,
+ 0x93,0x44,
+ 0x94,0xfc,
+ 0x95,0x0a,
+ 0x96,0xe8,
+ 0x97,0x44,
+ 0x98,0xf8,
+ 0xb1,0x38,
+ 0xb2,0x38,
+ 0xbd,0x38,
+ 0xbe,0x36,
+ 0xd0,0xc9,
+ 0xd1,0x10,
+
+ 0xd3,0x80,
+ 0xd5,0xf2,
+ 0xd6,0x16,
+ 0xdb,0x92,
+ 0xdc,0xa5,
+ 0xdf,0x23,
+ 0xd9,0x00,
+ 0xda,0x00,
+ 0xe0,0x09,
+
+ 0xed,0x04,
+ 0xee,0xa0,
+ 0xef,0x40,
+ 0x80,0x03,
+ 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,0x01,
+ 0xf3,0x30,
+ 0xf9,0x9f,
+ 0xfa,0x78,
+ //----------------------------
+ 0xfe,0x01,// set page1
+ 0x00,0xf5,
+ 0x02,0x1a,
+ 0x0a,0xa0,
+ 0x0b,0x60,
+ 0x0c,0x08,
+ 0x0e,0x4c,
+ 0x0f,0x39,
+ 0x11,0x3f,
+ 0x12,0x72,
+ 0x13,0x13,
+ 0x14,0x3c,
+ 0x15,0x43,
+ 0x16,0xc2,
+ 0x17,0xa8,
+ 0x18,0x18,
+ 0x19,0x40,
+ 0x1a,0xd0,
+ 0x1b,0xf5,
+ 0x70,0x40,
+ 0x71,0x58,
+ 0x72,0x30,
+ 0x73,0x48,
+ 0x74,0x20,
+ 0x75,0x60,
+ 0x77,0x20,
+ 0x78,0x32,
+ 0x30,0x03,
+ 0x31,0x40,
+ 0x32,0xe0,
+ 0x33,0xe0,
+ 0x34,0xe0,
+ 0x35,0xb0,
+ 0x36,0xc0,
+ 0x37,0xc0,
+ 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,
+ 0xfe,0x00,// set page0
+
+ //-----------Update the registers 2010/07/06-----------
+ //Registers of Page0
+ 0xfe,0x00,// set page0
+ 0x10,0x26,
+ 0x11,0x0d, // fd
+
+ 0x1a,0x2a, // 1e
+
+
+ 0x1c,0x49,// c1
+ 0x1d,0x9a,// 08
+
+
+ 0x1e,0x61,// 60
+
+ 0x3a,0x20,
+
+ 0x50,0x14, // 10
+
+
+ 0x53,0x80,
+ 0x56,0x80,
+
+ 0x8b,0x20,//LSC
+ 0x8c,0x20,
+ 0x8d,0x20,
+ 0x8e,0x14,
+ 0x8f,0x10,
+ 0x90,0x14,
+
+ 0x94,0x02,
+ 0x95,0x07,
+ 0x96,0xe0,
+
+ 0xb1,0x40,// YCPT
+ 0xb2,0x40,
+ 0xb3,0x47,//42
+ 0xb5,0xf8,//fa
+ 0xb6,0xe0,
+
+ 0x57,0x7c,//0x7c
+ 0x58,0x7e,
+ 0x59,0x80,
+
+ 0xd0,0xcb,// AECT c9
+
+
+ 0xd3,0x48,// 80
+
+ 0xf2,0x02,
+ 0xf7,0x12,
+ 0xf8,0x0a,
+
+ //Registers of Page1
+ 0xfe,0x01,// set page1
+ 0x02,0x20,
+ 0x04,0x10,
+ 0x05,0x08,
+ 0x06,0x20,
+ 0x08,0x0a,
+
+ 0x0e,0x44,
+ 0x0f,0x32,
+ 0x10,0x41,
+ 0x11,0x37,
+ 0x12,0x22,
+ 0x13,0x19,
+ 0x14,0x44,
+ 0x15,0x44,
+
+ 0x19,0x50,
+ 0x1a,0xd8,
+
+ 0x32,0x10,
+
+ 0x35,0x00,
+ 0x36,0x80,
+ 0x37,0x00,
+ //-----------Update the registers end---------//
+ 0xfe,0x00,// set page0
+ 0xd2,0x90,
+};
+
+uint8_t gc0308_default_regs_exit[]={
+};
+#endif
|