#ifndef __IMX175_H__
#define __IMX175_H__
#include "common.h"

/************************** settings for imx *************************/
static struct imx_reg const imx_STILL_8M_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xC4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x66},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0C},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0xD0},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x09},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xA0},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_8M_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0B},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xB8},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x16},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x44},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0C},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0xD0},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x09},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xA0},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_3M_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xC4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x66},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x08},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x06},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x10},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x19}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_3M_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0B},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xB8},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x16},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x44},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x08},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x06},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x10},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x19}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};


static struct imx_reg const imx_STILL_5M_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xC4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x66},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0A},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x07},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x90},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x14}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_5M_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0B},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xB8},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x16},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x44},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0A},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x07},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x90},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x14}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_6M_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xC4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x66},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x32},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x6D},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0C},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0xD0},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x07},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x3C},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_6M_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEF},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0B},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xB8},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x16},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x44},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x32},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x6D},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x0C},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0xD0},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x07},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x3C},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_2M_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x8C},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xC4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x66},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x68},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x04},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xD0},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_2M_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x0A},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x8C},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x2c},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0B},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xB8},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x16},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x44},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x68},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x04},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xD0},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x77},
	{IMX_8BIT, 0x3371, 0x2F},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x2F},
	{IMX_8BIT, 0x3375, 0x37},
	{IMX_8BIT, 0x3376, 0x9F},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x09},
	{IMX_8BIT, 0x33D7, 0xA0},

	{IMX_8BIT, 0x030e, 0x01},
	{IMX_8BIT, 0x41c0, 0x01},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_PREVIEW_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x06},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x05},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x48},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x70},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x03},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x34},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x02},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x68},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x03},
	{IMX_8BIT, 0x33D5, 0x34},
	{IMX_8BIT, 0x33D6, 0x02},
	{IMX_8BIT, 0x33D7, 0x68},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_WIDE_PREVIEW_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x06},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x0D},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x70},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x10},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x00},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x14},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x8C},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x68},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x03},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xBC},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x68},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0xBC},
	{IMX_TOK_TERM, 0, 0}
};

/*****************************video************************/
static struct imx_reg const imx_1080p_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x06},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x4C},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xA4},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x11},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0xC6},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x01},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0xDB},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x02},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x42},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0A},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xEA},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x07},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x61},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x09},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x05},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x20},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_1080p_no_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x08},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xD5},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x07},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xD0},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0F},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x3C},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x34},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x6B},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x07},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x94},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x04},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x44},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x1B}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_1080p_no_dvs_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x08},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xD5},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x09},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xA6},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x18},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x9C},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x34},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x6B},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x07},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x94},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x04},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x44},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x1B}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};
/*****************************video************************/
static struct imx_reg const imx_720p_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x00},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x13},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x9C},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x01},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0xD7},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x02},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x3E},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0A},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xEE},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x07},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x65},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x10},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x03},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x70},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x00}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x18}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_480p_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x00},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x13},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x9C},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x01},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0xD4},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0xC8},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0A},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xF1},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x07},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0xDB},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x03},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x70},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x02},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x50},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x02}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x15}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_720p_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x04},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x05},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x48},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x14},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x28},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x48},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x64},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0x87},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x3B},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x20},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x03},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x6C},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x20},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0x6C},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_STILL_720p_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x04},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x08},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0xCA},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x18},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x38},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x48},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x01},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x64},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0x87},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x3B},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x20},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x03},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x6C},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x20},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0x6C},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_WVGA_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xEC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x09},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x01},
	{IMX_8BIT, 0x030D, 0x12},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x00},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x13},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x9C},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0xD0},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x08},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0xCF},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x06},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x68},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x04},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x00},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x01}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x57},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x6F},
	{IMX_8BIT, 0x3371, 0x27},
	{IMX_8BIT, 0x3372, 0x4F},
	{IMX_8BIT, 0x3373, 0x2F},
	{IMX_8BIT, 0x3374, 0x27},
	{IMX_8BIT, 0x3375, 0x2F},
	{IMX_8BIT, 0x3376, 0x97},
	{IMX_8BIT, 0x3377, 0x37},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x0C},
	{IMX_8BIT, 0x33D5, 0xD0},
	{IMX_8BIT, 0x33D6, 0x07},
	{IMX_8BIT, 0x33D7, 0x38},
	{IMX_TOK_TERM, 0, 0}
};
static struct imx_reg const imx_CIF_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x04},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x00},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x11},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0xDB},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x01},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x70},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x01},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x30},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x20},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0x6C},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_VGA_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x04},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x06},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x00},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x11},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x94},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x03},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x34},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x02},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x68},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x20},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0x6C},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_VGA_strong_dvs_15fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0xFC},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x04},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x07},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x9E},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x1C},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0xB6},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x00},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x00},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x00},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x00},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x0C},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0xCF},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x09},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x9F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x03},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x34},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x02},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x68},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x06},
	{IMX_8BIT, 0x33D5, 0x20},
	{IMX_8BIT, 0x33D6, 0x03},
	{IMX_8BIT, 0x33D7, 0x6C},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_QVGA_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x06},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x05},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x48},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x70},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x03},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0x38},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x02},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x68},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x09},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0x97},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x07},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x37},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x01},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0x98},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x01},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0x34},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x01},
	{IMX_8BIT, 0x33D5, 0x98},
	{IMX_8BIT, 0x33D6, 0x01},
	{IMX_8BIT, 0x33D7, 0x34},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx_QCIF_strong_dvs_30fps[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0100, 0x00},  /*	mode_select	*/
	/* shutter */
	{IMX_8BIT, 0x0202, 0x05},  /* coarse _integration_time[15:8] */
	{IMX_8BIT, 0x0203, 0x44},  /* coarse _integration_time[7:0] */
	/* pll */
	{IMX_8BIT, 0x0301, 0x05},  /*	vt_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x0303, 0x01},  /*	vt_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x0305, 0x06},  /*	pre_pll_clk_div[7:0]	*/
	{IMX_8BIT, 0x0309, 0x05},  /*	op_pix_clk_div[7:0]	*/
	{IMX_8BIT, 0x030B, 0x01},  /*	op_sys_clk_div[7:0]	*/
	{IMX_8BIT, 0x030C, 0x00},
	{IMX_8BIT, 0x030D, 0x6D},
	/* image sizing */
	{IMX_8BIT, 0x0340, 0x05},  /* frame_length_lines[15:8] */
	{IMX_8BIT, 0x0341, 0x48},  /*	frame_length_lines[7:0]	*/
	{IMX_8BIT, 0x0342, 0x0D},  /*	line_length_pck[15:8]	*/
	{IMX_8BIT, 0x0343, 0x70},  /*	line_length_pck[7:0]	*/
	{IMX_8BIT, 0x0344, 0x04},  /*	x_addr_start[15:8]	*/
	{IMX_8BIT, 0x0345, 0xB8},  /*	x_addr_start[7:0]	*/
	{IMX_8BIT, 0x0346, 0x03},  /*	y_addr_start[15:8]	*/
	{IMX_8BIT, 0x0347, 0x70},  /*	y_addr_start[7:0]	*/
	{IMX_8BIT, 0x0348, 0x08},  /*	x_addr_end[15:8]	*/
	{IMX_8BIT, 0x0349, 0x17},  /*	x_addr_end[7:0]	*/
	{IMX_8BIT, 0x034A, 0x06},  /*	y_addr_end[15:8]	*/
	{IMX_8BIT, 0x034B, 0x2F},  /*	y_addr_end[7:0]	*/
	{IMX_8BIT, 0x034C, 0x00},  /*	x_output_size[15:8]	*/
	{IMX_8BIT, 0x034D, 0xD8},  /*	x_output_size[7:0]	*/
	{IMX_8BIT, 0x034E, 0x00},  /*	y_output_size[15:8]	*/
	{IMX_8BIT, 0x034F, 0xB0},  /*	y_output_size[7:0]	*/
	/* binning & scaling */
	{IMX_8BIT, 0x0390, 0x02}, /* binning mode */
	{IMX_8BIT, 0x0401, 0x00}, /* scaling mode*/
	{IMX_8BIT, 0x0405, 0x10}, /* scale_m[7:0] */
	/* timer */
	{IMX_8BIT, 0x3344, 0x37},
	{IMX_8BIT, 0x3345, 0x1F},
	/* timing */
	{IMX_8BIT, 0x3370, 0x5F},
	{IMX_8BIT, 0x3371, 0x17},
	{IMX_8BIT, 0x3372, 0x37},
	{IMX_8BIT, 0x3373, 0x17},
	{IMX_8BIT, 0x3374, 0x17},
	{IMX_8BIT, 0x3375, 0x0F},
	{IMX_8BIT, 0x3376, 0x57},
	{IMX_8BIT, 0x3377, 0x27},
	{IMX_8BIT, 0x33C8, 0x01},
	{IMX_8BIT, 0x33D4, 0x00},
	{IMX_8BIT, 0x33D5, 0xD8},
	{IMX_8BIT, 0x33D6, 0x00},
	{IMX_8BIT, 0x33D7, 0xB0},
	{IMX_TOK_TERM, 0, 0}
};

static struct imx_reg const imx175_init_settings[] = {
	GROUPED_PARAMETER_HOLD_ENABLE,
	{IMX_8BIT, 0x0103, 0x01},
	/* misc control */
	{IMX_8BIT, 0x3020, 0x10},
	{IMX_8BIT, 0x302D, 0x02},
	{IMX_8BIT, 0x302F, 0x80},
	{IMX_8BIT, 0x3032, 0xA3},
	{IMX_8BIT, 0x3033, 0x20},
	{IMX_8BIT, 0x3034, 0x24},
	{IMX_8BIT, 0x3041, 0x15},
	{IMX_8BIT, 0x3042, 0x87},
	{IMX_8BIT, 0x3050, 0x35},
	{IMX_8BIT, 0x3056, 0x57},
	{IMX_8BIT, 0x305D, 0x41},
	{IMX_8BIT, 0x3097, 0x69},
	{IMX_8BIT, 0x3109, 0x41},
	{IMX_8BIT, 0x3148, 0x3F},
	{IMX_8BIT, 0x330F, 0x07},
	/* csi & inck */
	{IMX_8BIT, 0x3364, 0x00},
	{IMX_8BIT, 0x3368, 0x13},
	{IMX_8BIT, 0x3369, 0x33},
	/* znr */
	{IMX_8BIT, 0x4100, 0x0E},
	{IMX_8BIT, 0x4104, 0x32},
	{IMX_8BIT, 0x4105, 0x32},
	{IMX_8BIT, 0x4108, 0x01},
	{IMX_8BIT, 0x4109, 0x7C},
	{IMX_8BIT, 0x410A, 0x00},
	{IMX_8BIT, 0x410B, 0x00},
	GROUPED_PARAMETER_HOLD_DISABLE,
	{IMX_TOK_TERM, 0, 0}
};
/* TODO settings of preview/still/video will be updated with new use case */
struct imx_resolution imx175_res_preview[] = {
	{
		.desc = "CIF_strong_dvs_30fps",
		.regs = imx_CIF_strong_dvs_30fps,
		.width = 368,
		.height = 304,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x11DB,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 261500,

	},
	{
		.desc = "VGA_strong_dvs_30fps",
		.regs = imx_VGA_strong_dvs_30fps,
		.width = 820,
		.height = 616,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x11DB,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 261500,
	},
	{
		.desc = "WIDE_PREVIEW_30fps",
		.regs = imx_WIDE_PREVIEW_30fps,
		.width = 1640,
		.height = 956,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x1000,
				 .lines_per_frame = 0x0D70,
			},
			{
			}
		},
		.mipi_freq = 174500,
	},
	{
		.desc = "STILL_720p_30fps",
		.regs = imx_STILL_720p_30fps,
		.width = 1568,
		.height = 876,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x1428,
				 .lines_per_frame = 0x0548,
			},
			{
			}
		},
		.mipi_freq = 261500,
	},
	{
		.desc = "STILL_2M_30fps",
		.regs = imx_STILL_2M_30fps,
		.width = 1640,
		.height = 1232,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D66,
				 .lines_per_frame = 0x09C4,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "1080p_strong_dvs_30fps",
		.regs = imx_1080p_no_dvs_30fps,
		.width = 1940,
		.height = 1092,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0F3C,
				 .lines_per_frame = 0x07D0,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
	{
		.desc = "STILL_3M_30fps",
		.regs = imx_STILL_3M_30fps,
		.width = 2064,
		.height = 1552,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D66,
				 .lines_per_frame = 0x09C4,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_5M_30fps",
		.regs = imx_STILL_5M_30fps,
		.width = 2576,
		.height = 1936,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D66,
				 .lines_per_frame = 0x09C4,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_6M_30fps",
		.regs = imx_STILL_6M_30fps,
		.width = 3280,
		.height = 1852,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D66,
				 .lines_per_frame = 0x09C4,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_8M_30fps",
		.regs = imx_STILL_8M_30fps,
		.width = 3280,
		.height = 2464,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D66,
				 .lines_per_frame = 0x09C4,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
};

struct imx_resolution imx175_res_still[] = {
	{
		.desc = "CIF_strong_dvs_30fps",
		.regs = imx_CIF_strong_dvs_30fps,
		.width = 368,
		.height = 304,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x11DB,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 261000,
	},
	{
		.desc = "VGA_strong_dvs_15fps",
		.regs = imx_VGA_strong_dvs_15fps,
		.width = 820,
		.height = 616,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1C86,
				 .lines_per_frame = 0x079E,
			},
			{
			}
		},
		.mipi_freq = 261500,
	},
	{
		.desc = "imx_STILL_720p_15fps",
		.regs = imx_STILL_720p_15fps,
		.width = 1568,
		.height = 876,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1838,
				 .lines_per_frame = 0x08CA,
			},
			{
			}
		},
		.mipi_freq = 261500,
	},
	{
		.desc = "STILL_2M_15fps",
		.regs = imx_STILL_2M_15fps,
		.width = 1640,
		.height = 1232,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1646,
				 .lines_per_frame = 0x0BB8,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "1080p_strong_dvs_15fps",
		.regs = imx_1080p_no_dvs_15fps,
		.width = 1940,
		.height = 1092,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x189C,
				 .lines_per_frame = 0x09A6,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
	{
		.desc = "STILL_3M_15fps",
		.regs = imx_STILL_3M_15fps,
		.width = 2064,
		.height = 1552,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1646,
				 .lines_per_frame = 0x0BB8,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_5M_15fps",
		.regs = imx_STILL_5M_15fps,
		.width = 2576,
		.height = 1936,
		.fps = 15,
		.pixels_per_line = 0x1646, /* consistent with regs arrays */
		.lines_per_frame = 0x0BB8, /* consistent with regs arrays */
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1646,
				 .lines_per_frame = 0x0BB8,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_6M_15fps",
		.regs = imx_STILL_6M_15fps,
		.width = 3280,
		.height = 1852,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1646,
				 .lines_per_frame = 0x0BB8,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
	{
		.desc = "STILL_8M_15fps",
		.regs = imx_STILL_8M_15fps,
		.width = 3280,
		.height = 2464,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 15,
				 .pixels_per_line = 0x1646,
				 .lines_per_frame = 0x0BB8,
			},
			{
			}
		},
		.mipi_freq = 320000,
	},
};

struct imx_resolution imx175_res_video[] = {
	{
		.desc = "QCIF_strong_dvs_30fps",
		.regs = imx_QCIF_strong_dvs_30fps,
		.width = 216,
		.height = 176,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D70,
				 .lines_per_frame = 0x0548,
			},
			{
			}
		},
		.mipi_freq = 174500,
	},
	{
		.desc =	"QVGA_strong_dvs_30fps",
		.regs = imx_QVGA_strong_dvs_30fps,
		.width = 408,
		.height = 308,
		.bin_factor_x =	4,
		.bin_factor_y =	4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x0D70,
				 .lines_per_frame = 0x0548,
			},
			{
			}
		},
		.mipi_freq = 174500,
	},
	{
		.desc = "VGA_strong_dvs_30fps",
		.regs = imx_VGA_strong_dvs_30fps,
		.width = 820,
		.height = 616,
		.bin_factor_x = 4,
		.bin_factor_y = 4,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x1194,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 261500,
	},
	{
		.desc = "720p_strong_dvs_30fps",
		.regs = imx_720p_strong_dvs_30fps,
		.width = 1552,
		.height = 880,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x139C,
				 .lines_per_frame = 0x0600,
			},
			{
				 .fps = 60,
				 .pixels_per_line = 0xD70,
				 .lines_per_frame = 0x444,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
	{
		.desc = "480p_strong_dvs_30fps",
		.regs = imx_480p_strong_dvs_30fps,
		.width = 880,
		.height = 592,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x139C,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
	{
		.desc = "WVGA_strong_dvs_30fps",
		.regs = imx_WVGA_strong_dvs_30fps,
		.width = 1640,
		.height = 1024,
		.bin_factor_x = 2,
		.bin_factor_y = 2,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x139C,
				 .lines_per_frame = 0x0600,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
	{
		.desc = "1080p_strong_dvs_30fps",
		.regs = imx_1080p_strong_dvs_30fps,
		.width = 2320,
		.height = 1312,
		.bin_factor_x = 0,
		.bin_factor_y = 0,
		.used = 0,
		.fps_options = {
			{
				 .fps = 30,
				 .pixels_per_line = 0x11C6,
				 .lines_per_frame = 0x06A4,
			},
			{
			}
		},
		.mipi_freq = 292500,
	},
};

#endif
