| #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 |