Hi all,
I am trying to bin the pixel of IMX219 (x2 analog binning) so that I can collect more lights.
I modified mode1 to work as 1640 x 1232 @ 120 fps. ( Refered topic)
But the camera cannot be opened in that mode.
When I opened the camera, it suddenly closed, and the system was down.
I am new to modifying the driver.
If you give me some advice, I will be grateful.
imx219_mode_tbls.h
static imx219_reg imx219_mode_3264x2464_21fps = {
/* capture settings /
{0x0157, 0x00}, / ANALOG_GAIN_GLOBAL[7:0] /
{0x015A, 0x09}, / COARSE_INTEG_TIME[15:8] /
{0x015B, 0xbd}, / COARSE_INTEG_TIME[7:0] /
/ format settings /
{0x0160, 0x09}, / FRM_LENGTH[15:8] /
{0x0161, 0xC1}, / FRM_LENGTH[7:0] /
{0x0162, 0x0D}, / LINE_LENGTH[15:8] /
{0x0163, 0xE8}, / LINE_LENGTH[7:0] / <-modified
{0x0164, 0x00},
{0x0165, 0x08},
{0x0166, 0x0C},
{0x0167, 0xC7},
{0x0168, 0x00},
{0x0169, 0x00},
{0x016A, 0x09},
{0x016B, 0x9F},
{0x016C, 0x06}, <-modified
{0x016D, 0x68}, <-modified
{0x016E, 0x04}, <-modified
{0x016F, 0xD0}, <-modified
{0x0170, 0x01},
{0x0171, 0x01},
{0x0174, 0x03}, <-modified
{0x0175, 0x03}, <-modified
{0x018C, 0x0A},
{0x018D, 0x0A},
{0x0264, 0x00},
{0x0265, 0x08},
{0x0266, 0x0C},
{0x0267, 0xC7},
{0x026C, 0x0C},
{0x026D, 0xC0},
/ clock dividers /
{0x0301, 0x05},
{0x0303, 0x01},
{0x0304, 0x03},
{0x0305, 0x03},
{0x0306, 0x00},
{0x0307, 0x39},
{0x0309, 0x0A},
{0x030B, 0x01},
{0x030C, 0x00},
{0x030D, 0x72},
{IMX219_TABLE_END, 0x00}
};
static const struct camera_common_frmfmt imx219_frmfmt[] = {
{{1640, 1232}, imx219_120fps, 1, 0, IMX219_MODE_3264x2464_21FPS}, <-modified
/ Add modes with no device tree support after below */
//{{1640, 1232}, imx219_120fps, 1, 0, IMX219_MODE_1640x1232_120FPS},
{{3264, 1848}, imx219_28fps, 1, 0, IMX219_MODE_3264x1848_28FPS},
{{1920, 1080}, imx219_30fps, 1, 0, IMX219_MODE_1920x1080_30FPS},
{{1280, 720}, imx219_60fps, 1, 0, IMX219_MODE_1280x720_60FPS},
{{1280, 720}, imx219_120fps, 1, 0, IMX219_MODE_1280x720_120FPS},
};
tegra210-camera-rbpcv2-imx219.dtsi
mode0 { /* IMX219_MODE_3264x2464_21FPS */
mclk_khz = “24000”;
num_lanes = “2”;
tegra_sinterface = “serial_a”;
phy_mode = “DPHY”;
discontinuous_clk = “yes”;
dpcm_enable = “false”;
cil_settletime = “0”;
active_w = “1640”; <-modified
active_h = “1232”; <-modified
pixel_t = “bayer_rggb”;
readout_orientation = “90”;
line_length = “3448”;
inherent_gain = “1”;
mclk_multiplier = “9.33”;
pix_clk_hz = “182400000”;