#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "../fimc-is-hw.h" #include "fimc-is-device-ov5693.h" #define SENSOR_NAME "OV5693" static struct fimc_is_sensor_cfg config_ov5693[] = { /* 2624x1968@30fps */ FIMC_IS_SENSOR_CFG(2592, 1944, 30, 17,0), /* 2064X1546@30fps */ FIMC_IS_SENSOR_CFG(2064, 1546, 30, 14,1), /* 1936X1090@30fps */ FIMC_IS_SENSOR_CFG(1936, 1090, 30, 14,2), /* 1296X730@120fps */ FIMC_IS_SENSOR_CFG(1296, 730, 120, 14,3), /* 336X250@30fps */ FIMC_IS_SENSOR_CFG(336, 250, 30, 14,4), }; static int sensor_ov5693_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module;
#include <plat/gpio-cfg.h> #include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "fimc-is-device-imx175.h" #define SENSOR_NAME "IMX175" static struct fimc_is_sensor_cfg config_imx175[] = { /* 3280X2458@30fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 30, 14, 0), /* 3280X1846@30fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 30, 11, 1), /* 3280X1846@15fps, Busrt Panorama */ FIMC_IS_SENSOR_CFG(3280, 1846, 15, 11, 1), /* 3280X2458@24fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 24, 11, 2), /* 3280X1846@24fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 24, 8, 3), /* 1640X924@60fps */ FIMC_IS_SENSOR_CFG(1640, 924, 60, 11, 4), /* 816X460@120fps */ FIMC_IS_SENSOR_CFG(816, 460, 120, 11, 5), }; static int sensor_imx175_init(struct v4l2_subdev *subdev, u32 val)
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-module-3h7_sunny.h" #define SENSOR_NAME "S5K3H7_SUNNY" static struct fimc_is_sensor_cfg config_3h7_sunny[] = { /* 3264x2448@30fps */ FIMC_IS_SENSOR_CFG(3264, 2448, 30, 15, 0, CSI_DATA_LANES_4), }; static int sensor_3h7_sunny_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev); module = (struct fimc_is_module_enum *)v4l2_get_subdevdata(subdev); pr_info("[MOD:D:%d] %s(%d)\n", module->id, __func__, val); return ret; }
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-hw.h" #include "fimc-is-device-3l2.h" #define SENSOR_NAME "S5K3L2" static struct fimc_is_sensor_cfg config_3l2[] = { /* 4144x3106@30fps */ FIMC_IS_SENSOR_CFG(4144, 3106, 30, 23, 0), /* 4144x2332@30fps */ FIMC_IS_SENSOR_CFG(4144, 2332, 30, 18, 1), /* 2072x1554@24fps */ FIMC_IS_SENSOR_CFG(2072, 1554, 24, 4, 2), /* 2072x1166@24fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 24, 4, 3), /* 2072x1554@15fps */ FIMC_IS_SENSOR_CFG(2072, 1554, 15, 11, 4), /* 2072x1166@15fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 15, 11, 5), /* 1040x584@120fps */ FIMC_IS_SENSOR_CFG(1040, 584, 120, 8, 6), /* 2072x1166@60fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 60, 11, 7), };
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-hw.h" #include "fimc-is-device-2p2_12m.h" #define SENSOR_NAME "S5K2P2_12M" static struct fimc_is_sensor_cfg config_2p2_12m[] = { /* 4624x2604@30fps */ FIMC_IS_SENSOR_CFG(4624, 2604, 30, 22, 0), /* 4624x2604@24fps */ FIMC_IS_SENSOR_CFG(4624, 2604, 24, 21, 1), /* 3472X2604@30fps */ FIMC_IS_SENSOR_CFG(3472, 2604, 30, 17, 2), /* 3472X2604@24fps */ FIMC_IS_SENSOR_CFG(3472, 2604, 24, 17, 3), /* 2608X2604@30fps */ FIMC_IS_SENSOR_CFG(2608, 2604, 30, 17, 4), /* 2608X2604@24fps */ FIMC_IS_SENSOR_CFG(2608, 2604, 24, 17, 5), /* 2312X1300@60fps */ FIMC_IS_SENSOR_CFG(2312, 1300, 60, 13, 6), /* 2312X1300@30fps */ FIMC_IS_SENSOR_CFG(2312, 1300, 30, 13, 7), /* 1156X650@120fps */
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-dt.h" #include "fimc-is-module-3m2.h" #define SENSOR_NAME "S5K3M2" static struct fimc_is_sensor_cfg config_3m2[] = { /* 4144x3106@30fps */ FIMC_IS_SENSOR_CFG(4144, 3106, 30, 23, 0, CSI_DATA_LANES_4), /* 2072x1166@60fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 60, 23, 1, CSI_DATA_LANES_4), /* 2072x1166@30fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 30, 23, 2, CSI_DATA_LANES_4), /* 3112x3106@30fps */ FIMC_IS_SENSOR_CFG(3112, 3106, 30, 23, 3, CSI_DATA_LANES_4), /* 1296x732@120fps */ FIMC_IS_SENSOR_CFG(1296, 732, 120, 23, 4, CSI_DATA_LANES_4), /* 1040x584@30fps */ FIMC_IS_SENSOR_CFG(1040, 584, 120, 23, 5, CSI_DATA_LANES_4), }; static struct fimc_is_vci vci_3m2[] = { { .pixelformat = V4L2_PIX_FMT_SBGGR10,
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-dt.h" #include "fimc-is-device-2t2.h" #define SENSOR_NAME "S5K2T2" static struct fimc_is_sensor_cfg config_2t2[] = { /* 5968x3368@30fps */ FIMC_IS_SENSOR_CFG(5968, 3368, 30, 36, 0), /* 5968x3368@24fps */ FIMC_IS_SENSOR_CFG(5968, 3368, 24, 29, 1), /* 4480x3368@30fps */ FIMC_IS_SENSOR_CFG(4480, 3368, 30, 27, 2), /* 4480x3368@24fps */ FIMC_IS_SENSOR_CFG(4480, 3368, 24, 21, 3), /* 3360x3368@30fps */ FIMC_IS_SENSOR_CFG(3360, 3368, 30, 20, 4), /* 3360x3368@24fps */ FIMC_IS_SENSOR_CFG(3360, 3368, 24, 16, 5), /* 2984x1680@60fps */ FIMC_IS_SENSOR_CFG(2984, 1680, 60, 20, 6), /* 2984x1680@30fps */ FIMC_IS_SENSOR_CFG(2984, 1680, 30, 12, 7), /* 1480x832@120fps */
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-device-2p3.h" #define SENSOR_NAME "S5K2P3" static struct fimc_is_sensor_cfg config_2p3[] = { /* 5328x3000@30fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 30, 30, 0), /* 5328x3000@24fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 24, 24, 1), /* 4000X3000@30fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 30, 23, 2), /* 4000X3000@24fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 24, 19, 3), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 30, 19, 4), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 24, 14, 5), /* 2664X1500@60fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 60, 19, 6), /* 1328X748@120fps */ FIMC_IS_SENSOR_CFG(1328, 748, 120, 13, 7), /* 824X496@300fps */
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-device-imx134.h" #define SENSOR_NAME "IMX134" static struct fimc_is_sensor_cfg config_imx134[] = { /* 3280X2458@30fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 30, 15, 0), /* 3280X1846@30fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 30, 11, 1), /* 3280X2458@24fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 24, 12, 2), /* 3280X1846@24fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 24, 9, 3), /* 1936X1450@24fps */ FIMC_IS_SENSOR_CFG(1936, 1450, 24, 12, 4), /* 1936X1090@24fps */ FIMC_IS_SENSOR_CFG(1936, 1090, 24, 9, 5), /* 816X460@120fps */ FIMC_IS_SENSOR_CFG(816, 460, 120, 7, 6), /* 1640X924@60fps */ FIMC_IS_SENSOR_CFG(1640, 924, 60, 6, 7), };
{0x746D, 0x09}, {0x746E, 0xFF}, {0x746F, 0x01}, {0x7472, 0x00}, {0x7473, 0x02}, {0x7474, 0xC1}, {0x7475, 0x00}, {0x7476, 0x00}, {0x7477, 0x00}, {0x7478, 0x00}, {0x4100, 0x01}, }; static struct fimc_is_sensor_cfg config_imx219[] = { /* 3280X2458@20fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 20, 19, 0), /* 3280X1846@20fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 20, 15, 1), /* 1640X1228@24fps */ FIMC_IS_SENSOR_CFG(1640, 1228, 24, 12, 2), /* 3280X1846@24fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 24, 17, 3), }; static int sensor_imx219_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh) { pr_info("%s\n", __func__); return 0; } static int sensor_imx219_close(struct v4l2_subdev *sd,
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "../fimc-is-hw.h" #include "fimc-is-device-imx240.h" #define SENSOR_NAME "IMX240" static struct fimc_is_sensor_cfg config_imx240[] = { /* 5328x3000@30fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 30, 29, 0), /* 5328x3000@24fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 24, 25, 1), /* 4000X3000@30fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 30, 25, 2), /* 4000X3000@24fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 24, 21, 3), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 30, 25, 4), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 24, 21, 5), /* 2664X1500@60fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 60, 25, 6), /* 2664X1500@30fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 30, 13, 7), /* 1328X748@120fps */
#include <plat/gpio-cfg.h> #include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "fimc-is-device-6a3.h" #define SENSOR_NAME "S5K6A3" static struct fimc_is_sensor_cfg config_6a3[] = { /* 1936x1090@30fps */ FIMC_IS_SENSOR_CFG(1936, 1090, 30, 16, 0), }; static int sensor_6a3_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev); module = (struct fimc_is_module_enum *)v4l2_get_subdevdata(subdev); pr_info("[MOD:D:%d] %s(%d)\n", module->id, __func__, val); return ret; }
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-dt.h" #include "fimc-is-module-2p8.h" #define SENSOR_NAME "S5K2P8" static struct fimc_is_sensor_cfg config_2p8[] = { /* 5328x3000@30fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 30, 31, 0, CSI_DATA_LANES_4), /* 5328x3000@24fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 24, 24, 1, CSI_DATA_LANES_4), /* 4000X3000@30fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 30, 24, 2, CSI_DATA_LANES_4), /* 4000X3000@24fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 24, 22, 3, CSI_DATA_LANES_4), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 30, 22, 4, CSI_DATA_LANES_4), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 24, 15, 5, CSI_DATA_LANES_4), /* 2664X1500@30fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 30, 15, 6, CSI_DATA_LANES_4), /* 2664X1500@60fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 60, 15, 7, CSI_DATA_LANES_4), /* 1328X748@120fps */
.brightness_default = SENSOR_REGISTER_REGSET(sr200_brightness_default), /*.preview = SENSOR_REGISTER_REGSET(sr200_preview),*/ .stop_stream = SENSOR_REGISTER_REGSET(sr200_stop_stream), .start_stream = SENSOR_REGISTER_REGSET(sr200_start_stream), .resol_352_288 = SENSOR_REGISTER_REGSET(sr200_resol_352_288), .resol_640_480 = SENSOR_REGISTER_REGSET(sr200_resol_640_480), .resol_800_600 = SENSOR_REGISTER_REGSET(sr200_resol_800_600), .resol_1280_960 = SENSOR_REGISTER_REGSET(sr200_resol_1280_960), .resol_1600_1200 = SENSOR_REGISTER_REGSET(sr200_resol_1600_1200), /*.capture_mode = SENSOR_REGISTER_REGSET(sr200_resol_1600_1200)*/ }; static struct fimc_is_sensor_cfg settle_sr200[] = { FIMC_IS_SENSOR_CFG(1600, 1200, 15, 17, 0), FIMC_IS_SENSOR_CFG(1280, 960, 15, 17, 1), FIMC_IS_SENSOR_CFG(800, 600, 30, 17, 2), FIMC_IS_SENSOR_CFG(640, 480, 30, 17, 2), FIMC_IS_SENSOR_CFG(352, 288, 15, 17, 3), }; static const struct sr200_fps sr200_framerates[] = { { I_FPS_0, FRAME_RATE_AUTO }, { I_FPS_7, FRAME_RATE_7}, { I_FPS_15, FRAME_RATE_15}, { I_FPS_25, FRAME_RATE_25 }, }; static const struct sr200_framesize sr200_preview_frmsizes[] = { { PREVIEW_SZ_CIF, 352, 288 },
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-module-4h5.h" #define SENSOR_NAME "S5K4H5" static struct fimc_is_sensor_cfg config_4h5[] = { /* 3280x2458@30fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 30, 14, 0, CSI_DATA_LANES_4), /* 3280x1846@30fps */ FIMC_IS_SENSOR_CFG(3280, 1846, 30, 11, 1, CSI_DATA_LANES_4), /* 1640x924@60fps */ FIMC_IS_SENSOR_CFG(1640, 924, 60, 14, 2, CSI_DATA_LANES_4), /* 816x460@120fps */ FIMC_IS_SENSOR_CFG(816, 460, 120, 14, 3, CSI_DATA_LANES_4), }; static int sensor_4h5_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev);
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "../fimc-is-hw.h" #include "fimc-is-device-imx135.h" #define SENSOR_NAME "IMX135" static struct fimc_is_sensor_cfg config_imx135[] = { /* 4144x3106@30fps */ FIMC_IS_SENSOR_CFG(4144, 3106, 30, 23, 0), /* 4144x2332@30fps */ FIMC_IS_SENSOR_CFG(4144, 2332, 30, 18, 1), /* 1936x1450@24fps */ FIMC_IS_SENSOR_CFG(1936, 1450, 24, 9, 2), /* 1936x1090@24fps */ FIMC_IS_SENSOR_CFG(1936, 1090, 24, 7, 3), /* 1024x576@120fps */ FIMC_IS_SENSOR_CFG(1024, 576, 120, 9, 4), /* 2072x1166@60fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 60, 18, 5), }; static int sensor_imx135_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0;
#include <plat/gpio-cfg.h> #include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "fimc-is-device-6a3.h" #define SENSOR_NAME "S5K6A3" static struct fimc_is_sensor_cfg config_6a3[] = { /* 1412x796@30fps */ FIMC_IS_SENSOR_CFG(1412, 796, 30, 16, 0), }; static int sensor_6a3_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev); module = (struct fimc_is_module_enum *)v4l2_get_subdevdata(subdev); pr_info("[MOD:D:%d] %s(%d)\n", module->id, __func__, val); return ret; }
#define SENSOR_REG_VIS_AE_WINDOW_WEIGHT_2x3_4 (0x6003) #define SENSOR_REG_VIS_AE_WINDOW_WEIGHT_3x1_2 (0x6004) #define SENSOR_REG_VIS_AE_WINDOW_WEIGHT_3x3_4 (0x6005) #define SENSOR_REG_VIS_AE_WINDOW_WEIGHT_4x1_2 (0x6006) #define SENSOR_REG_VIS_AE_WINDOW_WEIGHT_4x3_4 (0x6007) #define SENSOR_REG_VIS_AE_MANUAL_EXP_MSB (0x5039) #define SENSOR_REG_VIS_AE_MANUAL_EXP_LSB (0x503A) #define SENSOR_REG_VIS_AE_MANUAL_ANG_MSB (0x503B) #define SENSOR_REG_VIS_AE_MANUAL_ANG_LSB (0x503C) #define SENSOR_REG_VIS_BIT_CONVERTING_MSB (0x602B) #define SENSOR_REG_VIS_BIT_CONVERTING_LSB (0x7203) #define SENSOR_REG_VIS_AE_OFF (0x5000) static struct fimc_is_sensor_cfg config_8b1[] = { /* 1936x1090@30fps */ FIMC_IS_SENSOR_CFG(1936, 1090, 30, 16, 0), /* 1924x1082@30fps */ FIMC_IS_SENSOR_CFG(1924, 1082, 30, 16, 1), /* 1444x1082@30fps */ FIMC_IS_SENSOR_CFG(1444, 1082, 30, 16, 2), /* 1084x1082@30fps */ FIMC_IS_SENSOR_CFG(1084, 1082, 30, 16, 3), /* 964x542@30fps */ FIMC_IS_SENSOR_CFG(964, 542, 30, 16, 4), /* 724x542@30fps */ FIMC_IS_SENSOR_CFG(724, 542, 30, 16, 5), /* 544x542@30fps */ FIMC_IS_SENSOR_CFG(544, 542, 30, 16, 6), /* 320x180@10fps : only for vision(settle) */ FIMC_IS_SENSOR_CFG(320, 180, 10, 4, 6), /* 1936x1090@24fps */
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "../fimc-is-hw.h" #include "fimc-is-device-3h7_sunny.h" #define SENSOR_NAME "S5K3H7_SUNNY" static struct fimc_is_sensor_cfg config_3h7_sunny[] = { /* 3264x2448@30fps */ FIMC_IS_SENSOR_CFG(3264, 2448, 30, 15, 0), }; static int sensor_3h7_sunny_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev); module = (struct fimc_is_module_enum *)v4l2_get_subdevdata(subdev); pr_info("[MOD:D:%d] %s(%d)\n", module->id, __func__, val); return ret; }
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-dt.h" #include "fimc-is-module-2l1.h" #define SENSOR_NAME "S5K2L1" static struct fimc_is_sensor_cfg config_2l1[] = { /* 4032x3024@30fps */ FIMC_IS_SENSOR_CFG(4032, 3024, 30, 30, 0, CSI_DATA_LANES_4), /* 4032x2268@30fps */ FIMC_IS_SENSOR_CFG(4032, 2268, 30, 30, 1, CSI_DATA_LANES_4), /* 3024x3024@30fps */ FIMC_IS_SENSOR_CFG(3024, 3024, 30, 30, 2, CSI_DATA_LANES_4), /* 4032x2268@60fps */ FIMC_IS_SENSOR_CFG_EXT(4032, 2268, 60, 45, 3, CSI_DATA_LANES_4, 2145), /* 2016x1134@120fps */ FIMC_IS_SENSOR_CFG_EXT(2016, 1134, 120, 24, 4, CSI_DATA_LANES_4, 2145), /* 2016x1134@240fps */ FIMC_IS_SENSOR_CFG_EXT(2016, 1134, 240, 39, 5, CSI_DATA_LANES_4, 2145), /* 1008x 756@120fps */ FIMC_IS_SENSOR_CFG_EXT(1008, 756, 120, 39, 6, CSI_DATA_LANES_4, 2145), /* 2016x 1512@30fps */ FIMC_IS_SENSOR_CFG(2016, 1512, 30, 24, 7, CSI_DATA_LANES_4), /* 1504x 1504@30fps */
#include <plat/gpio-cfg.h> #include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "fimc-is-device-3h7.h" #define SENSOR_NAME "S5K3H7" static struct fimc_is_sensor_cfg config_3h7[] = { /* 3280x2458@30fps */ FIMC_IS_SENSOR_CFG(3280, 2458, 30, 15, 0), }; static int sensor_3h7_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0; struct fimc_is_module_enum *module; BUG_ON(!subdev); module = (struct fimc_is_module_enum *)v4l2_get_subdevdata(subdev); pr_info("[MOD:D:%d] %s(%d)\n", module->id, __func__, val); return ret; }
#include <media/v4l2-ctrls.h> #include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "../fimc-is-core.h" #include "../fimc-is-device-sensor.h" #include "../fimc-is-resourcemgr.h" #include "../fimc-is-hw.h" #include "fimc-is-device-3l2.h" #define SENSOR_NAME "S5K3L2" static struct fimc_is_sensor_cfg config_3l2[] = { /* 4144x3106@30fps */ FIMC_IS_SENSOR_CFG(4144, 3106, 30, 25, 0), /* 4144x2332@30fps */ FIMC_IS_SENSOR_CFG(4144, 2332, 30, 25, 1), /* 2072x1554@24fps */ FIMC_IS_SENSOR_CFG(2072, 1554, 24, 25, 2), /* 2072x1166@24fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 24, 25, 3), /* 1040x584@120fps */ FIMC_IS_SENSOR_CFG(1040, 584, 120, 17, 4), /* 2072x1166@60fps */ FIMC_IS_SENSOR_CFG(2072, 1166, 60, 19, 5), }; static int sensor_3l2_init(struct v4l2_subdev *subdev, u32 val) { int ret = 0;
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-dt.h" #include "fimc-is-device-2p2.h" #define SENSOR_NAME "S5K2P2" static struct fimc_is_sensor_cfg config_2p2[] = { /* 5328x3000@30fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 30, 31, 0), /* 5328x3000@24fps */ FIMC_IS_SENSOR_CFG(5328, 3000, 24, 24, 1), /* 4000X3000@30fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 30, 24, 2), /* 4000X3000@24fps */ FIMC_IS_SENSOR_CFG(4000, 3000, 24, 22, 3), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 30, 22, 4), /* 3008X3000@30fps */ FIMC_IS_SENSOR_CFG(3008, 3000, 24, 15, 5), /* 2664X1500@60fps */ FIMC_IS_SENSOR_CFG(2664, 1500, 60, 15, 6), /* 1328X748@120fps */ FIMC_IS_SENSOR_CFG(1328, 748, 120, 15, 7), /* 824X496@300fps */
#include <media/v4l2-device.h> #include <media/v4l2-subdev.h> #include <mach/exynos-fimc-is-sensor.h> #include "fimc-is-hw.h" #include "fimc-is-core.h" #include "fimc-is-device-sensor.h" #include "fimc-is-resourcemgr.h" #include "fimc-is-device-imx228.h" #include "fimc-is-dt.h" #define SENSOR_NAME "IMX228" static struct fimc_is_sensor_cfg config_imx228[] = { /* 5968x3368@30fps */ FIMC_IS_SENSOR_CFG(5968, 3368, 30, 36, 0), /* 5968x3368@24fps */ FIMC_IS_SENSOR_CFG(5968, 3368, 24, 29, 1), /* 4480x3368@30fps */ FIMC_IS_SENSOR_CFG(4480, 3368, 30, 28, 2), /* 4480x3368@24fps */ FIMC_IS_SENSOR_CFG(4480, 3368, 24, 22, 3), /* 3360x3368@30fps */ FIMC_IS_SENSOR_CFG(3360, 3368, 30, 44, 4), /* 3360x3368@24fps */ FIMC_IS_SENSOR_CFG(3360, 3368, 24, 36, 5), /* 2984x1680@60fps */ FIMC_IS_SENSOR_CFG(2984, 1680, 60, 44, 6), /* 2984x1680@30fps */ FIMC_IS_SENSOR_CFG(2984, 1680, 30, 25, 7), /* 1480x832@120fps */