diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2022-05-13 15:14:07 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@kernel.org> | 2022-07-08 15:31:34 +0100 |
commit | 961bed9f6af54fbfd8242b363b299c4de43b9749 (patch) | |
tree | c8f6358bee9b19baf56b9a5c9a1d83cb3edc730c /drivers/media/i2c | |
parent | b6ae502297610d5fbfa13158acd92145393f9838 (diff) |
media: ov5640: Change CSI-2 timings to comply with FPS
Now that the frame duration can be controlled by tuning the VBLANK
duration in CSI-2 mode, fix all modes definitions to comply with the
reported FPS.
All modes run at 30 FPS except for full-resolution mode 2592x1944
which runs at 15FPS.
Tested on a 2 data lanes setup in UYVY and RGB565 modes in CSI-2 mode.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Diffstat (limited to 'drivers/media/i2c')
-rw-r--r-- | drivers/media/i2c/ov5640.c | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c index a17fcb39410d..8391e920ef79 100644 --- a/drivers/media/i2c/ov5640.c +++ b/drivers/media/i2c/ov5640.c @@ -598,8 +598,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 160, .height = 120, }, - .htot = 1896, - .vblank_def = 864, + .htot = 1600, + .vblank_def = 878, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -643,8 +643,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 176, .height = 144, }, - .htot = 1896, - .vblank_def = 840, + .htot = 1600, + .vblank_def = 854, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -688,8 +688,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 320, .height = 240, }, - .htot = 1896, - .vblank_def = 744, + .htot = 1600, + .vblank_def = 760, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -733,8 +733,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 640, .height = 480, }, - .htot = 1896, - .vblank_def = 600, + .htot = 1600, + .vblank_def = 520, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -778,7 +778,7 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .height = 480, }, .htot = 1896, - .vblank_def = 504, + .vblank_def = 1206, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -822,7 +822,7 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .height = 576, }, .htot = 1896, - .vblank_def = 408, + .vblank_def = 1110, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -865,7 +865,7 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .height = 768, }, .htot = 1896, - .vblank_def = 312, + .vblank_def = 918, }, .reg_data = ov5640_setting_low_res, .reg_data_size = ARRAY_SIZE(ov5640_setting_low_res), @@ -907,8 +907,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 1280, .height = 720, }, - .htot = 1892, - .vblank_def = 20, + .htot = 1600, + .vblank_def = 560, }, .reg_data = ov5640_setting_720P_1280_720, .reg_data_size = ARRAY_SIZE(ov5640_setting_720P_1280_720), @@ -952,8 +952,8 @@ static const struct ov5640_mode_info ov5640_mode_data[OV5640_NUM_MODES] = { .width = 1920, .height = 1080, }, - .htot = 2500, - .vblank_def = 40, + .htot = 2234, + .vblank_def = 24, }, .reg_data = ov5640_setting_1080P_1920_1080, .reg_data_size = ARRAY_SIZE(ov5640_setting_1080P_1920_1080), |