From 9810bbc88ccf4446b1078023fe34485ee7c85afe Mon Sep 17 00:00:00 2001 From: Eunyoung Lee Date: Tue, 8 May 2018 13:44:31 +0900 Subject: [PATCH] [COMMON] fimc-is2: added sensor setting for 2T7SX - 5184x3880_24fps, - 4608x3456_30fps, 4608x2624_30fps, 4608x2240_30fps, - 1152x864_120fps, Change-Id: Ic2a712173b7ae1b8ab663de03c81410afaeb8c9d Signed-off-by: Eunyoung Lee --- .../cis/fimc-is-cis-2t7sx-setA.h | 516 +++++++++++++++++- .../modules/fimc-is-device-module-2t7sx.c | 27 +- 2 files changed, 541 insertions(+), 2 deletions(-) diff --git a/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/cis/fimc-is-cis-2t7sx-setA.h b/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/cis/fimc-is-cis-2t7sx-setA.h index c35a657a554b..9ffe1c101f6d 100644 --- a/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/cis/fimc-is-cis-2t7sx-setA.h +++ b/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/cis/fimc-is-cis-2t7sx-setA.h @@ -695,7 +695,6 @@ const u32 sensor_2t7sx_setfile_A_Global[] = { * [Mode Information] * 0: [MCLK:26,Width:5184,Height:3880,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1500,pvi_pclk_inverse:0] */ - const u32 sensor_2t7sx_setfile_A_5184x3880_30fps[] = { 0x6028, 0x2000, 0x02, 0x0344, 0x0008, 0x02, @@ -784,6 +783,466 @@ const u32 sensor_2t7sx_setfile_A_5184x3880_30fps[] = { 0x6F12, 0x0000, 0x02, }; +/* + * [Mode Information] + * 0: [MCLK:26,Width:5184,Height:3880,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1690,pvi_pclk_inverse:0] + */ +const u32 sensor_2t7sx_setfile_A_5184x3880_24fps[] = { + 0x6028, 0x2000, 0x02, + 0x0344, 0x0008, 0x02, + 0x0346, 0x0008, 0x02, + 0x0348, 0x1447, 0x02, + 0x034A, 0x0F2F, 0x02, + 0x034C, 0x1440, 0x02, + 0x034E, 0x0F28, 0x02, + 0x0408, 0x0000, 0x02, + 0x040A, 0x0000, 0x02, + 0x0900, 0x0011, 0x02, + 0x0380, 0x0001, 0x02, + 0x0382, 0x0001, 0x02, + 0x0384, 0x0001, 0x02, + 0x0386, 0x0001, 0x02, + 0x0400, 0x0000, 0x02, + 0x0404, 0x0010, 0x02, + 0x301E, 0x0110, 0x02, + 0x0110, 0x0002, 0x02, + 0x0114, 0x0300, 0x02, + 0x0136, 0x1A00, 0x02, + 0x0300, 0x0005, 0x02, + 0x0302, 0x0001, 0x02, + 0x0304, 0x0006, 0x02, + 0x0306, 0x00C3, 0x02, + 0x0308, 0x0008, 0x02, + 0x030A, 0x0001, 0x02, + 0x030C, 0x0004, 0x02, + 0x030E, 0x0082, 0x02, + 0x0310, 0x0100, 0x02, + 0x0312, 0x0000, 0x02, + 0x0340, 0x1380, 0x02, + 0x0342, 0x1608, 0x02, + 0x602A, 0x1C78, 0x02, + 0x6F12, 0x8100, 0x02, + 0x602A, 0x43CA, 0x02, + 0x6F12, 0x0020, 0x02, + 0x602A, 0x13E4, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x0008, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6F12, 0x000C, 0x02, + 0x6226, 0x0001, 0x02, + 0x9400, 0x0001, 0x02, + 0x9402, 0x0028, 0x02, + 0x9404, 0x000A, 0x02, + 0x9406, 0x0000, 0x02, + 0x9408, 0x0000, 0x02, + 0x940A, 0x0000, 0x02, + 0x940C, 0x0000, 0x02, + 0x940E, 0x1400, 0x02, + 0x9410, 0x0780, 0x02, + 0x9412, 0x0000, 0x02, + 0x9414, 0x0000, 0x02, + 0x9416, 0x0000, 0x02, + 0x9418, 0x0001, 0x02, + 0x941A, 0x0082, 0x02, + 0x941C, 0x0186, 0x02, + 0x941E, 0x0082, 0x02, + 0x9420, 0x0186, 0x02, + 0x9422, 0x0141, 0x02, + 0x9424, 0x0141, 0x02, + 0x9426, 0x0141, 0x02, + 0x9428, 0x0141, 0x02, + 0x942A, 0x0008, 0x02, + 0x942C, 0x0008, 0x02, + 0x942E, 0x0004, 0x02, + 0x9430, 0x0004, 0x02, + 0x9432, 0x5500, 0x02, + 0x9434, 0x5500, 0x02, + 0x6226, 0x0000, 0x02, + 0x602A, 0x1E76, 0x02, + 0x6F12, 0x0100, 0x02, + 0x6F12, 0x0000, 0x02, +}; + +/* + * [Mode Information] + * 0: [MCLK:26,Width:4608,Height:3456,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1690,pvi_pclk_inverse:0] + */ +const u32 sensor_2t7sx_setfile_A_4608x3456_30fps[] = { + 0x6028, 0x2000, 0x02, + 0x0344, 0x0128, 0x02, + 0x0346, 0x00DC, 0x02, + 0x0348, 0x1327, 0x02, + 0x034A, 0x0E5B, 0x02, + 0x034C, 0x1200, 0x02, + 0x034E, 0x0D80, 0x02, + 0x0408, 0x0000, 0x02, + 0x040A, 0x0000, 0x02, + 0x0900, 0x0011, 0x02, + 0x0380, 0x0001, 0x02, + 0x0382, 0x0001, 0x02, + 0x0384, 0x0001, 0x02, + 0x0386, 0x0001, 0x02, + 0x0400, 0x0000, 0x02, + 0x0404, 0x0010, 0x02, + 0x301E, 0x0110, 0x02, + 0x0110, 0x0002, 0x02, + 0x0114, 0x0300, 0x02, + 0x0136, 0x1A00, 0x02, + 0x0300, 0x0005, 0x02, + 0x0302, 0x0001, 0x02, + 0x0304, 0x0006, 0x02, + 0x0306, 0x00C3, 0x02, + 0x0308, 0x0008, 0x02, + 0x030A, 0x0001, 0x02, + 0x030C, 0x0004, 0x02, + 0x030E, 0x0082, 0x02, + 0x0310, 0x0100, 0x02, + 0x0312, 0x0000, 0x02, + 0x0340, 0x0F9B, 0x02, + 0x0342, 0x1608, 0x02, + 0x602A, 0x1C78, 0x02, + 0x6F12, 0x8100, 0x02, + 0x602A, 0x43CA, 0x02, + 0x6F12, 0x0020, 0x02, + 0x602A, 0x13E4, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6226, 0x0001, 0x02, + 0x9400, 0x0001, 0x02, + 0x9402, 0x0028, 0x02, + 0x9404, 0x000A, 0x02, + 0x9406, 0x0000, 0x02, + 0x9408, 0x0000, 0x02, + 0x940A, 0x0000, 0x02, + 0x940C, 0x0000, 0x02, + 0x940E, 0x1400, 0x02, + 0x9410, 0x0780, 0x02, + 0x9412, 0x0000, 0x02, + 0x9414, 0x0000, 0x02, + 0x9416, 0x0000, 0x02, + 0x9418, 0x0001, 0x02, + 0x941A, 0x0082, 0x02, + 0x941C, 0x0186, 0x02, + 0x941E, 0x0082, 0x02, + 0x9420, 0x0186, 0x02, + 0x9422, 0x0141, 0x02, + 0x9424, 0x0141, 0x02, + 0x9426, 0x0141, 0x02, + 0x9428, 0x0141, 0x02, + 0x942A, 0x0008, 0x02, + 0x942C, 0x0008, 0x02, + 0x942E, 0x0004, 0x02, + 0x9430, 0x0004, 0x02, + 0x9432, 0x5500, 0x02, + 0x9434, 0x5500, 0x02, + 0x6226, 0x0000, 0x02, + 0x602A, 0x1E76, 0x02, + 0x6F12, 0x0100, 0x02, + 0x6F12, 0x0000, 0x02, +}; + +/* + * [Mode Information] + * 0: [MCLK:26,Width:4608,Height:2624,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1690,pvi_pclk_inverse:0] + */ +const u32 sensor_2t7sx_setfile_A_4608x2624_30fps[] = { + 0x6028, 0x2000, 0x02, + 0x0344, 0x0128, 0x02, + 0x0346, 0x027C, 0x02, + 0x0348, 0x1327, 0x02, + 0x034A, 0x0CBB, 0x02, + 0x034C, 0x1200, 0x02, + 0x034E, 0x0A40, 0x02, + 0x0408, 0x0000, 0x02, + 0x040A, 0x0000, 0x02, + 0x0900, 0x0011, 0x02, + 0x0380, 0x0001, 0x02, + 0x0382, 0x0001, 0x02, + 0x0384, 0x0001, 0x02, + 0x0386, 0x0001, 0x02, + 0x0400, 0x0000, 0x02, + 0x0404, 0x0010, 0x02, + 0x301E, 0x0110, 0x02, + 0x0110, 0x0002, 0x02, + 0x0114, 0x0300, 0x02, + 0x0136, 0x1A00, 0x02, + 0x0300, 0x0005, 0x02, + 0x0302, 0x0001, 0x02, + 0x0304, 0x0006, 0x02, + 0x0306, 0x00C3, 0x02, + 0x0308, 0x0008, 0x02, + 0x030A, 0x0001, 0x02, + 0x030C, 0x0004, 0x02, + 0x030E, 0x0082, 0x02, + 0x0310, 0x0100, 0x02, + 0x0312, 0x0000, 0x02, + 0x0340, 0x0F9B, 0x02, + 0x0342, 0x1608, 0x02, + 0x602A, 0x1C78, 0x02, + 0x6F12, 0x8100, 0x02, + 0x602A, 0x43CA, 0x02, + 0x6F12, 0x0020, 0x02, + 0x602A, 0x13E4, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6226, 0x0001, 0x02, + 0x9400, 0x0001, 0x02, + 0x9402, 0x0028, 0x02, + 0x9404, 0x000A, 0x02, + 0x9406, 0x0000, 0x02, + 0x9408, 0x0000, 0x02, + 0x940A, 0x0000, 0x02, + 0x940C, 0x0000, 0x02, + 0x940E, 0x1400, 0x02, + 0x9410, 0x0780, 0x02, + 0x9412, 0x0000, 0x02, + 0x9414, 0x0000, 0x02, + 0x9416, 0x0000, 0x02, + 0x9418, 0x0001, 0x02, + 0x941A, 0x0082, 0x02, + 0x941C, 0x0186, 0x02, + 0x941E, 0x0082, 0x02, + 0x9420, 0x0186, 0x02, + 0x9422, 0x0141, 0x02, + 0x9424, 0x0141, 0x02, + 0x9426, 0x0141, 0x02, + 0x9428, 0x0141, 0x02, + 0x942A, 0x0008, 0x02, + 0x942C, 0x0008, 0x02, + 0x942E, 0x0004, 0x02, + 0x9430, 0x0004, 0x02, + 0x9432, 0x5500, 0x02, + 0x9434, 0x5500, 0x02, + 0x6226, 0x0000, 0x02, + 0x602A, 0x1E76, 0x02, + 0x6F12, 0x0100, 0x02, + 0x6F12, 0x0000, 0x02, +}; + +/* + * [Mode Information] + * 0: [MCLK:26,Width:4608,Height:2240,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1690,pvi_pclk_inverse:0] + */ +const u32 sensor_2t7sx_setfile_A_4608x2240_30fps[] = { + 0x6028, 0x2000, 0x02, + 0x0344, 0x0128, 0x02, + 0x0346, 0x033C, 0x02, + 0x0348, 0x1327, 0x02, + 0x034A, 0x0BFB, 0x02, + 0x034C, 0x1200, 0x02, + 0x034E, 0x08C0, 0x02, + 0x0408, 0x0000, 0x02, + 0x040A, 0x0000, 0x02, + 0x0900, 0x0011, 0x02, + 0x0380, 0x0001, 0x02, + 0x0382, 0x0001, 0x02, + 0x0384, 0x0001, 0x02, + 0x0386, 0x0001, 0x02, + 0x0400, 0x0000, 0x02, + 0x0404, 0x0010, 0x02, + 0x301E, 0x0110, 0x02, + 0x0110, 0x0002, 0x02, + 0x0114, 0x0300, 0x02, + 0x0136, 0x1A00, 0x02, + 0x0300, 0x0005, 0x02, + 0x0302, 0x0001, 0x02, + 0x0304, 0x0006, 0x02, + 0x0306, 0x00C3, 0x02, + 0x0308, 0x0008, 0x02, + 0x030A, 0x0001, 0x02, + 0x030C, 0x0004, 0x02, + 0x030E, 0x0082, 0x02, + 0x0310, 0x0100, 0x02, + 0x0312, 0x0000, 0x02, + 0x0340, 0x0F9B, 0x02, + 0x0342, 0x1608, 0x02, + 0x602A, 0x1C78, 0x02, + 0x6F12, 0x8100, 0x02, + 0x602A, 0x43CA, 0x02, + 0x6F12, 0x0020, 0x02, + 0x602A, 0x13E4, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0xFFFE, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6F12, 0x0004, 0x02, + 0x6226, 0x0001, 0x02, + 0x9400, 0x0001, 0x02, + 0x9402, 0x0028, 0x02, + 0x9404, 0x000A, 0x02, + 0x9406, 0x0000, 0x02, + 0x9408, 0x0000, 0x02, + 0x940A, 0x0000, 0x02, + 0x940C, 0x0000, 0x02, + 0x940E, 0x1400, 0x02, + 0x9410, 0x0780, 0x02, + 0x9412, 0x0000, 0x02, + 0x9414, 0x0000, 0x02, + 0x9416, 0x0000, 0x02, + 0x9418, 0x0001, 0x02, + 0x941A, 0x0082, 0x02, + 0x941C, 0x0186, 0x02, + 0x941E, 0x0082, 0x02, + 0x9420, 0x0186, 0x02, + 0x9422, 0x0141, 0x02, + 0x9424, 0x0141, 0x02, + 0x9426, 0x0141, 0x02, + 0x9428, 0x0141, 0x02, + 0x942A, 0x0008, 0x02, + 0x942C, 0x0008, 0x02, + 0x942E, 0x0004, 0x02, + 0x9430, 0x0004, 0x02, + 0x9432, 0x5500, 0x02, + 0x9434, 0x5500, 0x02, + 0x6226, 0x0000, 0x02, + 0x602A, 0x1E76, 0x02, + 0x6F12, 0x0100, 0x02, + 0x6F12, 0x0000, 0x02, +}; + +/* + * [Mode Information] + * 0: [MCLK:26,Width:1152,Height:864,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1690,pvi_pclk_inverse:0] + */ +const u32 sensor_2t7sx_setfile_A_1152x864_120fps[] = { + 0x6028, 0x2000, 0x02, + 0x0344, 0x05A0, 0x02, + 0x0346, 0x043C, 0x02, + 0x0348, 0x0EAF, 0x02, + 0x034A, 0x0AFB, 0x02, + 0x034C, 0x0480, 0x02, + 0x034E, 0x0360, 0x02, + 0x0408, 0x0004, 0x02, + 0x040A, 0x0000, 0x02, + 0x0900, 0x0112, 0x02, + 0x0380, 0x0001, 0x02, + 0x0382, 0x0001, 0x02, + 0x0384, 0x0001, 0x02, + 0x0386, 0x0003, 0x02, + 0x0400, 0x0000, 0x02, + 0x0404, 0x0010, 0x02, + 0x301E, 0x0210, 0x02, + 0x0110, 0x0002, 0x02, + 0x0114, 0x0300, 0x02, + 0x0136, 0x1A00, 0x02, + 0x0300, 0x0005, 0x02, + 0x0302, 0x0001, 0x02, + 0x0304, 0x0006, 0x02, + 0x0306, 0x00C3, 0x02, + 0x0308, 0x0008, 0x02, + 0x030A, 0x0001, 0x02, + 0x030C, 0x0004, 0x02, + 0x030E, 0x0082, 0x02, + 0x0310, 0x0100, 0x02, + 0x0312, 0x0000, 0x02, + 0x0340, 0x03E6, 0x02, + 0x0342, 0x1608, 0x02, + 0x602A, 0x1C78, 0x02, + 0x6F12, 0x8101, 0x02, + 0x602A, 0x43CA, 0x02, + 0x6F12, 0xFFFF, 0x02, + 0x602A, 0x13E4, 0x02, + 0x6F12, 0xFFEC, 0x02, + 0x6F12, 0xFFEE, 0x02, + 0x6F12, 0xFFEC, 0x02, + 0x6F12, 0xFFEE, 0x02, + 0x6F12, 0xFFF8, 0x02, + 0x6F12, 0xFFF4, 0x02, + 0x6F12, 0xFFF8, 0x02, + 0x6F12, 0xFFF4, 0x02, + 0x6F12, 0xFFEC, 0x02, + 0x6F12, 0xFFEE, 0x02, + 0x6F12, 0xFFEC, 0x02, + 0x6F12, 0xFFEE, 0x02, + 0x6F12, 0xFFF8, 0x02, + 0x6F12, 0xFFF4, 0x02, + 0x6F12, 0xFFF8, 0x02, + 0x6F12, 0xFFF4, 0x02, + 0x6226, 0x0001, 0x02, + 0x9400, 0x0000, 0x02, + 0x9402, 0x0028, 0x02, + 0x9404, 0x000A, 0x02, + 0x9406, 0x0000, 0x02, + 0x9408, 0x0000, 0x02, + 0x940A, 0x0000, 0x02, + 0x940C, 0x0000, 0x02, + 0x940E, 0x1400, 0x02, + 0x9410, 0x0780, 0x02, + 0x9412, 0x0000, 0x02, + 0x9414, 0x0000, 0x02, + 0x9416, 0x0000, 0x02, + 0x9418, 0x0001, 0x02, + 0x941A, 0x0082, 0x02, + 0x941C, 0x0186, 0x02, + 0x941E, 0x0082, 0x02, + 0x9420, 0x0186, 0x02, + 0x9422, 0x0141, 0x02, + 0x9424, 0x0141, 0x02, + 0x9426, 0x0141, 0x02, + 0x9428, 0x0141, 0x02, + 0x942A, 0x0008, 0x02, + 0x942C, 0x0008, 0x02, + 0x942E, 0x0004, 0x02, + 0x9430, 0x0004, 0x02, + 0x9432, 0x5500, 0x02, + 0x9434, 0x5500, 0x02, + 0x6226, 0x0000, 0x02, + 0x602A, 0x1E76, 0x02, + 0x6F12, 0x0102, 0x02, + 0x6F12, 0x0000, 0x02, +}; + const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_5184x3880_30fps = { EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ 1690000000, /* mipi_datarate */ @@ -792,15 +1251,70 @@ const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_5184x3880_30fps = { 0x1608, /* line_length_pck (0x0342) */ }; +const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_5184x3880_24fps = { + EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ + 1690000000, /* mipi_datarate */ + 676000000, /* pclk = VT pix CLK (this value is different by cis) */ + 0x1380, /* frame_length_lines (0x0340) */ + 0x1608, /* line_length_pck (0x0342) */ +}; + +const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_4608x3456_30fps = { + EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ + 1690000000, /* mipi_datarate */ + 676000000, /* pclk = VT pix CLK (this value is different by cis) */ + 0x0F9B, /* frame_length_lines (0x0340) */ + 0x1608, /* line_length_pck (0x0342) */ +}; + +const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_4608x2624_30fps = { + EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ + 1690000000, /* mipi_datarate */ + 676000000, /* pclk = VT pix CLK (this value is different by cis) */ + 0x0F9B, /* frame_length_lines (0x0340) */ + 0x1608, /* line_length_pck (0x0342) */ +}; + +const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_4608x2240_30fps = { + EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ + 1690000000, /* mipi_datarate */ + 676000000, /* pclk = VT pix CLK (this value is different by cis) */ + 0x0F9B, /* frame_length_lines (0x0340) */ + 0x1608, /* line_length_pck (0x0342) */ +}; + +const struct sensor_pll_info_compact sensor_2t7sx_pllinfo_A_1152x864_120fps = { + EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */ + 1690000000, /* mipi_datarate */ + 676000000, /* pclk = VT pix CLK (this value is different by cis) */ + 0x03E6, /* frame_length_lines (0x0340) */ + 0x1608, /* line_length_pck (0x0342) */ +}; + static const u32 *sensor_2t7sx_setfiles_A[] = { sensor_2t7sx_setfile_A_5184x3880_30fps, + sensor_2t7sx_setfile_A_5184x3880_24fps, + sensor_2t7sx_setfile_A_4608x3456_30fps, + sensor_2t7sx_setfile_A_4608x2624_30fps, + sensor_2t7sx_setfile_A_4608x2240_30fps, + sensor_2t7sx_setfile_A_1152x864_120fps, }; static const u32 sensor_2t7sx_setfile_A_sizes[] = { ARRAY_SIZE(sensor_2t7sx_setfile_A_5184x3880_30fps), + ARRAY_SIZE(sensor_2t7sx_setfile_A_5184x3880_24fps), + ARRAY_SIZE(sensor_2t7sx_setfile_A_4608x3456_30fps), + ARRAY_SIZE(sensor_2t7sx_setfile_A_4608x2624_30fps), + ARRAY_SIZE(sensor_2t7sx_setfile_A_4608x2240_30fps), + ARRAY_SIZE(sensor_2t7sx_setfile_A_1152x864_120fps), }; static const struct sensor_pll_info_compact *sensor_2t7sx_pllinfos_A[] = { &sensor_2t7sx_pllinfo_A_5184x3880_30fps, + &sensor_2t7sx_pllinfo_A_5184x3880_24fps, + &sensor_2t7sx_pllinfo_A_4608x3456_30fps, + &sensor_2t7sx_pllinfo_A_4608x2624_30fps, + &sensor_2t7sx_pllinfo_A_4608x2240_30fps, + &sensor_2t7sx_pllinfo_A_1152x864_120fps, }; #endif diff --git a/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/modules/fimc-is-device-module-2t7sx.c b/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/modules/fimc-is-device-module-2t7sx.c index fcbb0fe4e4a3..1e116acba11a 100644 --- a/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/modules/fimc-is-device-module-2t7sx.c +++ b/drivers/media/platform/exynos/fimc-is2/sensor/module_framework/modules/fimc-is-device-module-2t7sx.c @@ -43,7 +43,32 @@ static struct fimc_is_sensor_cfg config_module_2t7sx[] = { /* width, height, fps, settle, mode, lane, speed, interleave, pd_mode */ FIMC_IS_SENSOR_CFG(5184, 3880, 30, 0, 0, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, - VC_IN(0, HW_FORMAT_RAW10, 5184, 3880), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 0, 0), + VC_IN(0, HW_FORMAT_RAW10, 5184, 3880), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 5184, 3880), + VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), + VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), + VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), + FIMC_IS_SENSOR_CFG(5184, 3880, 24, 0, 1, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, + VC_IN(0, HW_FORMAT_RAW10, 5184, 3880), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 5184, 3880), + VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), + VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), + VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), + FIMC_IS_SENSOR_CFG(4608, 3456, 30, 0, 2, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, + VC_IN(0, HW_FORMAT_RAW10, 4608, 3456), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 4608, 3456), + VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), + VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), + VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), + FIMC_IS_SENSOR_CFG(4608, 2624, 30, 0, 3, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, + VC_IN(0, HW_FORMAT_RAW10, 4608, 2624), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 4608, 2624), + VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), + VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), + VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), + FIMC_IS_SENSOR_CFG(4608, 2240, 30, 0, 4, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, + VC_IN(0, HW_FORMAT_RAW10, 4608, 2240), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 4608, 2240), + VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), + VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), + VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), + FIMC_IS_SENSOR_CFG(1152, 864, 120, 0, 5, CSI_DATA_LANES_4, 1690, CSI_MODE_VC_DT, PD_NONE, + VC_IN(0, HW_FORMAT_RAW10, 1152, 864), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 1152, 864), VC_IN(1, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0), VC_IN(2, HW_FORMAT_USER, 0, 0), VC_OUT(HW_FORMAT_USER, VC_NOTHING, 0, 0), VC_IN(3, HW_FORMAT_UNKNOWN, 0, 0), VC_OUT(HW_FORMAT_UNKNOWN, VC_NOTHING, 0, 0)), -- 2.20.1