[COMMON] fimc-is2: added sensor setting for 2P7SQ
authorEunyoung Lee <ey470.lee@samsung.com>
Tue, 8 May 2018 04:42:03 +0000 (13:42 +0900)
committerEunyoung Lee <ey470.lee@samsung.com>
Tue, 19 Jun 2018 08:43:35 +0000 (17:43 +0900)
- 4640x3488_30fps, 4608x3456_30fps, 4608x2624_30fps, 4608x2240_30fps,
- 2304x1312_30fps, 2304x1728_30fps,
- 1152x864_120fps

Change-Id: I33521a75e8467134f1c3ab323e3bf745c1e9c090
Signed-off-by: Eunyoung Lee <ey470.lee@samsung.com>
drivers/media/platform/exynos/fimc-is2/sensor/module_framework/cis/fimc-is-cis-2p7sq-setA.h
drivers/media/platform/exynos/fimc-is2/sensor/module_framework/modules/fimc-is-device-module-2p7sq.c

index 3395ed23eaaf50b0a81372f69bb4a1cc3f300f0b..33164233361a06d65189d846f8d30d633d2dc6f1 100644 (file)
@@ -22,7 +22,7 @@ const u32 sensor_2p7sq_setfile_A_Global[] = {
        0x6214, 0x7971, 0x02,
        0x6218, 0x7150, 0x02,
 
-       0xf51a, 0x0076, 0x02,
+       0xF51A, 0x0076, 0x02,
        0x3256, 0x0001, 0x02,
        0x3274, 0x00E2, 0x02,
        0x35AA, 0x000F, 0x02,
@@ -64,9 +64,8 @@ const u32 sensor_2p7sq_setfile_A_Global[] = {
  * [Mode Information]
  *     0: [MCLK:26,Width:4640,Height:3488,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
  */
-
 const u32 sensor_2p7sq_setfile_A_4640x3488_30fps[] = {
-       0xf440, 0x402F, 0x02,
+       0xF440, 0x402F, 0x02,
        0x37F6, 0x0001, 0x02,
        0x319A, 0x0100, 0x02,
        0x319C, 0x0130, 0x02,
@@ -135,6 +134,438 @@ const u32 sensor_2p7sq_setfile_A_4640x3488_30fps[] = {
        0x6214, 0x7970, 0x02,
 };
 
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:4608,Height:3456,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_4608x3456_30fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0001, 0x02,
+       0x319A, 0x0100, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0100, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0008, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x0E1A, 0x02,
+       0x0342, 0x1400, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x0010, 0x02,
+       0x0348, 0x1217, 0x02,
+       0x034A, 0x0D8F, 0x02,
+       0x034C, 0x1200, 0x02,
+       0x034E, 0x0D80, 0x02,
+       0x0900, 0x0011, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0001, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0001, 0x02,
+       0x0400, 0x0000, 0x02,
+       0x0404, 0x0010, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0073, 0x02,
+       0x300A, 0x0000, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x0E00, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0002, 0x02,
+       0x37C2, 0x0103, 0x02,
+       0x3004, 0x0003, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:4608,Height:2624,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_4608x2624_30fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0001, 0x02,
+       0x319A, 0x0100, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0100, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0008, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x0E1A, 0x02,
+       0x0342, 0x1400, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x01B0, 0x02,
+       0x0348, 0x1217, 0x02,
+       0x034A, 0x0BEF, 0x02,
+       0x034C, 0x1200, 0x02,
+       0x034E, 0x0A40, 0x02,
+       0x0900, 0x0011, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0001, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0001, 0x02,
+       0x0400, 0x0000, 0x02,
+       0x0404, 0x0010, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0073, 0x02,
+       0x300A, 0x0000, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x0E00, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0002, 0x02,
+       0x37C2, 0x0103, 0x02,
+       0x3004, 0x0003, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:4608,Height:2240,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_4608x2240_30fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0001, 0x02,
+       0x319A, 0x0100, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0100, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0008, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x0E1A, 0x02,
+       0x0342, 0x1400, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x0270, 0x02,
+       0x0348, 0x1217, 0x02,
+       0x034A, 0x0B2F, 0x02,
+       0x034C, 0x1200, 0x02,
+       0x034E, 0x08C0, 0x02,
+       0x0900, 0x0011, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0001, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0001, 0x02,
+       0x0400, 0x0000, 0x02,
+       0x0404, 0x0010, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0073, 0x02,
+       0x300A, 0x0000, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x0E00, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0002, 0x02,
+       0x37C2, 0x0103, 0x02,
+       0x3004, 0x0003, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:2304,Height:1312,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_2304x1312_30fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0011, 0x02,
+       0x319A, 0x0000, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0000, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0004, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x0E1A, 0x02,
+       0x0342, 0x1400, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x01B0, 0x02,
+       0x0348, 0x1227, 0x02,
+       0x034A, 0x0BEF, 0x02,
+       0x034C, 0x0900, 0x02,
+       0x034E, 0x0520, 0x02,
+       0x0900, 0x0112, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0001, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0003, 0x02,
+       0x0400, 0x0001, 0x02,
+       0x0404, 0x0020, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0073, 0x02,
+       0x300A, 0x0000, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x0E00, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0002, 0x02,
+       0x37C2, 0x0103, 0x02,
+       0x3004, 0x0003, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:2304,Height:1728,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:1495,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_2304x1728_30fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0011, 0x02,
+       0x319A, 0x0000, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0000, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0004, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x0E1A, 0x02,
+       0x0342, 0x1400, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x0010, 0x02,
+       0x0348, 0x1217, 0x02,
+       0x034A, 0x0D8F, 0x02,
+       0x034C, 0x0900, 0x02,
+       0x034E, 0x06C0, 0x02,
+       0x0900, 0x0112, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0001, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0003, 0x02,
+       0x0400, 0x0001, 0x02,
+       0x0404, 0x0020, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0073, 0x02,
+       0x300A, 0x0000, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x0E00, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0002, 0x02,
+       0x37C2, 0x0103, 0x02,
+       0x3004, 0x0003, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
+/*
+ * [Mode Information]
+ *     0: [MCLK:26,Width:1152,Height:864,Format:MIPI_RAW10,mipi_lane:4,mipi_datarate:663,pvi_pclk_inverse:0]
+ */
+const u32 sensor_2p7sq_setfile_A_1152x864_120fps[] = {
+       0xF440, 0x402F, 0x02,
+       0x37F6, 0x0001, 0x02,
+       0x319A, 0x0000, 0x02,
+       0x319C, 0x0130, 0x02,
+       0x3056, 0x0100, 0x02,
+       0x6028, 0x2000, 0x02,
+       0x602A, 0x1266, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x602A, 0x1268, 0x02,
+       0x6F12, 0x0200, 0x02,
+       0x602A, 0x1BB0, 0x02,
+       0x6F12, 0x0100, 0x02,
+
+       0x0B0E, 0x0100, 0x02,
+       0x30D4, 0x0001, 0x02,
+       0x30D8, 0x0000, 0x02,
+       0xB138, 0x0000, 0x02,
+       0x31B0, 0x0002, 0x02,
+       0x31D2, 0x0100, 0x02,
+       0x0340, 0x04B3, 0x02,
+       0x0342, 0x0F00, 0x02,
+       0x0344, 0x0018, 0x02,
+       0x0346, 0x0010, 0x02,
+       0x0348, 0x1217, 0x02,
+       0x034A, 0x0D8F, 0x02,
+       0x034C, 0x0480, 0x02,
+       0x034E, 0x0360, 0x02,
+       0x0900, 0x0124, 0x02,
+       0x0380, 0x0001, 0x02,
+       0x0382, 0x0003, 0x02,
+       0x0384, 0x0001, 0x02,
+       0x0386, 0x0007, 0x02,
+       0x0400, 0x0001, 0x02,
+       0x0404, 0x0020, 0x02,
+       0x0408, 0x0000, 0x02,
+       0x040A, 0x0000, 0x02,
+       0x0136, 0x1A00, 0x02,
+       0x0300, 0x0003, 0x02,
+       0x0302, 0x0001, 0x02,
+       0x0304, 0x0006, 0x02,
+       0x0306, 0x0060, 0x02,
+       0x030C, 0x0004, 0x02,
+       0x030E, 0x0066, 0x02,
+       0x300A, 0x0001, 0x02,
+       0x0200, 0x0200, 0x02,
+       0x0202, 0x047C, 0x02,
+       0x0204, 0x0020, 0x02,
+       0x37C0, 0x0000, 0x02,
+       0x37C2, 0x0303, 0x02,
+       0x3004, 0x0005, 0x02,
+       0x0114, 0x0300, 0x02,
+       0x304C, 0x0300, 0x02,
+       0x3098, 0x0164, 0x02,
+       0x30C0, 0x0300, 0x02,
+       0x602A, 0x13A4, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+       0x6F12, 0x0003, 0x02,
+       0x6F12, 0x0000, 0x02,
+
+       0x6214, 0x7970, 0x02,
+};
+
 const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_4640x3488_30fps = {
        EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
        1495000000, /* mipi_datarate */
@@ -143,15 +574,81 @@ const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_4640x3488_30fps = {
        0x1400, /* line_length_pck      (0x0342) */
 };
 
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_4608x3456_30fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       1495000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x0E1A, /* frame_length_lines   (0x0340) */
+       0x1400, /* line_length_pck      (0x0342) */
+};
+
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_4608x2624_30fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       1495000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x0E1A, /* frame_length_lines   (0x0340) */
+       0x1400, /* line_length_pck      (0x0342) */
+};
+
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_4608x2240_30fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       1495000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x0E1A, /* frame_length_lines   (0x0340) */
+       0x1400, /* line_length_pck      (0x0342) */
+};
+
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_2304x1312_30fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       1495000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x0E1A, /* frame_length_lines   (0x0340) */
+       0x1400, /* line_length_pck      (0x0342) */
+};
+
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_2304x1728_30fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       1495000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x0E1A, /* frame_length_lines   (0x0340) */
+       0x1400, /* line_length_pck      (0x0342) */
+};
+
+const struct sensor_pll_info_compact sensor_2p7sq_pllinfo_A_1152x864_120fps = {
+       EXT_CLK_Mhz * 1000 * 1000, /* ext_clk */
+       663000000, /* mipi_datarate */
+       554000000,      /* pclk  = VT pix CLK (this value is different by cis) */
+       0x04B3, /* frame_length_lines   (0x0340) */
+       0x0F00, /* line_length_pck      (0x0342) */
+};
+
 static const u32 *sensor_2p7sq_setfiles_A[] = {
        sensor_2p7sq_setfile_A_4640x3488_30fps,
+       sensor_2p7sq_setfile_A_4608x3456_30fps,
+       sensor_2p7sq_setfile_A_4608x2624_30fps,
+       sensor_2p7sq_setfile_A_4608x2240_30fps,
+       sensor_2p7sq_setfile_A_2304x1312_30fps,
+       sensor_2p7sq_setfile_A_2304x1728_30fps,
+       sensor_2p7sq_setfile_A_1152x864_120fps,
 };
 
 static const u32 sensor_2p7sq_setfile_A_sizes[] = {
        ARRAY_SIZE(sensor_2p7sq_setfile_A_4640x3488_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_4608x3456_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_4608x2624_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_4608x2240_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_2304x1312_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_2304x1728_30fps),
+       ARRAY_SIZE(sensor_2p7sq_setfile_A_1152x864_120fps),
 };
 
 static const struct sensor_pll_info_compact *sensor_2p7sq_pllinfos_A[] = {
        &sensor_2p7sq_pllinfo_A_4640x3488_30fps,
+       &sensor_2p7sq_pllinfo_A_4608x3456_30fps,
+       &sensor_2p7sq_pllinfo_A_4608x2624_30fps,
+       &sensor_2p7sq_pllinfo_A_4608x2240_30fps,
+       &sensor_2p7sq_pllinfo_A_2304x1312_30fps,
+       &sensor_2p7sq_pllinfo_A_2304x1728_30fps,
+       &sensor_2p7sq_pllinfo_A_1152x864_120fps,
 };
 #endif
index 867b9c35aa58ce08e2c61f6b59f264c6d3a4b8a7..06b85cdf35bfa5adae5502811eb48b9d245b8df6 100644 (file)
 static struct fimc_is_sensor_cfg config_module_2p7sq[] = {
                        /* width, height, fps, settle, mode, lane, speed, interleave, pd_mode */
        FIMC_IS_SENSOR_CFG(4640, 3488, 30, 0, 0, CSI_DATA_LANES_4, 1495, CSI_MODE_VC_DT, PD_NONE,
-               VC_IN(0, HW_FORMAT_RAW10, 4640, 3488), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 0, 0),
+               VC_IN(0, HW_FORMAT_RAW10, 4640, 3488), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 4640, 3488),
+               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, 1, CSI_DATA_LANES_4, 1495, 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, 2, CSI_DATA_LANES_4, 1495, 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, 3, CSI_DATA_LANES_4, 1495, 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(2304, 1312, 30, 0, 4, CSI_DATA_LANES_4, 1495, CSI_MODE_VC_DT, PD_NONE,
+               VC_IN(0, HW_FORMAT_RAW10, 2304, 1312), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 2304, 1312),
+               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(2304, 1728, 30, 0, 5, CSI_DATA_LANES_4, 1495, CSI_MODE_VC_DT, PD_NONE,
+               VC_IN(0, HW_FORMAT_RAW10, 2304, 1728), VC_OUT(HW_FORMAT_RAW10, VC_NOTHING, 2304, 1728),
+               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, 6, CSI_DATA_LANES_4, 663, 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)),