--- /dev/null
+/*
+ * SAMSUNG EXYNOS9610 board camera device tree source
+ *
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * http://www.samsung.com
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <dt-bindings/camera/fimc_is.h>
+
+/ {
+// fragment@camera {
+// target-path = "/";
+// __overlay__ {
+ fimc_is_flash_gpio: fimc-is-flash-gpio@0 {
+ compatible = "samsung,sensor-flash-gpio";
+ id = <0>;
+ status = "okay";
+
+ torch-gpio = <&gpg3 1 0x1>;
+ flash-gpio = <&gpg3 0 0x1>;
+ };
+
+ fimc_is_sensor_2p7sq: fimc-is_sensor_2p7sq@47 {
+ compatible = "samsung,sensor-module-2p7sq";
+
+ pinctrl-names = "pin0", "pin1", "pin2", "release";
+ pinctrl-0 = <>;
+ pinctrl-1 = <&fimc_is_mclk0_out>;
+ pinctrl-2 = <&fimc_is_mclk0_fn>;
+ pinctrl-3 = <>;
+
+ position = <0>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
+ id = <0>; /* fimc_is_sensor id */
+ mclk_ch = <0>;
+ sensor_i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */
+
+ gpio_mclk = <&gpc2 0 0x1>;
+ gpio_reset = <&gpc1 0 0x1>; /* sensor reset */
+
+ power_seq_id = <1>; /* Rumba S6 Compatible */
+
+ status = "okay";
+
+ af {
+ product_name = <20>; /* ACTUATOR_NAME_LC898217 */
+ i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */
+ };
+
+ flash {
+ product_name = <11>; /* FLASH_GPIO */
+ };
+ };
+
+ fimc_is_sensor_2t7sx: fimc-is_sensor_2t7sx@48 {
+ compatible = "samsung,sensor-module-2t7sx";
+
+ pinctrl-names = "pin0", "pin1", "pin2", "release";
+ pinctrl-0 = <>;
+ pinctrl-1 = <&fimc_is_mclk2_out>;
+ pinctrl-2 = <&fimc_is_mclk2_fn>;
+ pinctrl-3 = <>;
+
+ position = <2>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
+ id = <2>; /* fimc_is_sensor id */
+ mclk_ch = <2>;
+ sensor_i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */
+
+ gpio_mclk = <&gpc2 2 0x1>;
+ gpio_reset = <&gpc0 6 0x1>; /* sensor reset */
+
+ power_seq_id = <1>; /* Rumba S6 Compatible */
+
+ status = "okay";
+
+ af {
+ product_name = <20>; /* ACTUATOR_NAME_LC898217 */
+ i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */
+ };
+
+ flash {
+ product_name = <11>; /* FLASH_GPIO */
+ };
+ };
+
+ /* FRONT CAMERA */
+ fimc_is_sensor_6b2: fimc-is_sensor_6b2@7 {
+ compatible = "samsung,sensor-module-6b2";
+
+ pinctrl-names = "pin0", "pin1", "pin2", "release";
+ pinctrl-0 = <>;
+ pinctrl-1 = <&fimc_is_mclk1_out>;
+ pinctrl-2 = <&fimc_is_mclk1_fn>;
+ pinctrl-3 = <>;
+
+ position = <1>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
+ id = <1>; /* fimc_is_sensor id */
+ mclk_ch = <1>;
+ sensor_i2c_ch = <2>; /* SENSOR_CONTROL_I2C4 */
+
+ gpio_mclk = <&gpc2 1 0x1>;
+ gpio_reset = <&gpc1 2 0x1>; /* sensor reset */
+ status = "okay";
+
+ af {
+ product_name = <100>; /* NOTHING */
+ i2c_ch = <2>; /* SENSOR_CONTROL_I2C2 */
+ };
+
+ flash {
+ product_name = <100>; /* NOTHING */
+ };
+
+ ois {
+ product_name = <100>; /* NOTHING */
+ };
+
+ internal_vc {
+ /* DUMMY */
+ };
+ };
+// }; /* end of __overlay__ */
+// }; /* end of fragment */
+}; /* end of root */
+
+/***** reference symbol node *****/
+
+&fimc_is {
+ vender {
+ rear_sensor_id = <47>; /* 46: RPB, 20: 2P8, 47: 2P7SQ */
+ front_sensor_id = <7>; /* 6B2 */
+ rear_second_sensor_id = <48>; /* 48: 2T7SX */
+ secure_sensor_id = <22>; /* 5E2 */
+ };
+
+ fimc_is_dvfs {
+ #define DVFS_INT_CAM_L0 690000
+ #define DVFS_INT_CAM_L1 680000
+ #define DVFS_INT_CAM_L2 670000
+ #define DVFS_INT_CAM_L3 660000
+ #define DVFS_INT_CAM_L4 650000
+
+ #define DVFS_INT_L0 667000
+ #define DVFS_INT_L1 533000
+ #define DVFS_INT_L2 400000
+ #define DVFS_INT_L3 200000
+ #define DVFS_INT_L4 100000
+
+ #define DVFS_CAM_L0 690000
+ #define DVFS_CAM_L1 680000
+ #define DVFS_CAM_L2 670000
+ #define DVFS_CAM_L3 660000
+ #define DVFS_CAM_L4 650000
+ #define DVFS_CAM_L5 640000
+
+ #define DVFS_MIF_L0 2093000
+ #define DVFS_MIF_L1 2002000
+ #define DVFS_MIF_L2 1794000
+ #define DVFS_MIF_L3 1539000
+ #define DVFS_MIF_L4 1352000
+ #define DVFS_MIF_L5 1014000
+ #define DVFS_MIF_L6 845000
+ #define DVFS_MIF_L7 676000
+ #define DVFS_MIF_L8 546000
+ #define DVFS_MIF_L9 419000
+
+ table0 {
+ desc = "dvfs table v0.0 for 16M/2M";
+
+ default_int_cam = <DVFS_INT_CAM_L0>;
+ default_cam = <DVFS_CAM_L0>;
+ default_mif = <DVFS_MIF_L0>;
+ default_int = <DVFS_INT_L0>;
+ default_hpg = <1>;
+
+ front_preview_int_cam = <DVFS_INT_CAM_L0>;
+ front_preview_cam = <DVFS_CAM_L0>;
+ front_preview_mif = <DVFS_MIF_L0>;
+ front_preview_int = <DVFS_INT_L0>;
+ front_preview_hpg = <1>;
+
+ front_preview_full_int_cam = <DVFS_INT_CAM_L0>;
+ front_preview_full_cam = <DVFS_CAM_L0>;
+ front_preview_full_mif = <DVFS_MIF_L0>;
+ front_preview_full_int = <DVFS_INT_L0>;
+ front_preview_full_hpg = <1>;
+
+ front_capture_int_cam = <DVFS_INT_CAM_L0>;
+ front_capture_cam = <DVFS_CAM_L0>;
+ front_capture_mif = <DVFS_MIF_L0>;
+ front_capture_int = <DVFS_INT_L0>;
+ front_capture_hpg = <1>;
+
+ front_video_int_cam = <DVFS_INT_CAM_L0>;
+ front_video_cam = <DVFS_CAM_L0>;
+ front_video_mif = <DVFS_MIF_L0>;
+ front_video_int = <DVFS_INT_L0>;
+ front_video_hpg = <1>;
+
+ front_video_capture_int_cam = <DVFS_INT_CAM_L0>;
+ front_video_capture_cam = <DVFS_CAM_L0>;
+ front_video_capture_mif = <DVFS_MIF_L0>;
+ front_video_capture_int = <DVFS_INT_L0>;
+ front_video_capture_hpg = <1>;
+
+ front_wide_selfie_int_cam = <DVFS_INT_CAM_L0>;
+ front_wide_selfie_cam = <DVFS_CAM_L0>;
+ front_wide_selfie_mif = <DVFS_MIF_L0>;
+ front_wide_selfie_int = <DVFS_INT_L0>;
+ front_wide_selfie_hpg = <1>;
+
+ front_vt1_int_cam = <DVFS_INT_CAM_L0>;
+ front_vt1_cam = <DVFS_CAM_L0>;
+ front_vt1_mif = <DVFS_MIF_L0>;
+ front_vt1_int = <DVFS_INT_L0>;
+ front_vt1_hpg = <1>;
+
+ front_vt2_int_cam = <DVFS_INT_CAM_L0>;
+ front_vt2_cam = <DVFS_CAM_L0>;
+ front_vt2_mif = <DVFS_MIF_L0>;
+ front_vt2_int = <DVFS_INT_L0>;
+ front_vt2_hpg = <1>;
+
+ front_vt4_int_cam = <DVFS_INT_CAM_L0>;
+ front_vt4_cam = <DVFS_CAM_L0>;
+ front_vt4_mif = <DVFS_MIF_L0>;
+ front_vt4_int = <DVFS_INT_L0>;
+ front_vt4_hpg = <1>;
+
+ rear_preview_fhd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_preview_fhd_cam = <DVFS_CAM_L0>;
+ rear_preview_fhd_mif = <DVFS_MIF_L0>;
+ rear_preview_fhd_int = <DVFS_INT_L0>;
+ rear_preview_fhd_hpg = <1>;
+
+ rear_preview_hd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_preview_hd_cam = <DVFS_CAM_L0>;
+ rear_preview_hd_mif = <DVFS_MIF_L0>;
+ rear_preview_hd_int = <DVFS_INT_L0>;
+ rear_preview_hd_hpg = <1>;
+
+ rear_preview_uhd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_preview_uhd_cam = <DVFS_CAM_L0>;
+ rear_preview_uhd_mif = <DVFS_MIF_L0>;
+ rear_preview_uhd_int = <DVFS_INT_L0>;
+ rear_preview_uhd_hpg = <1>;
+
+ rear_preview_full_int_cam = <DVFS_INT_CAM_L0>;
+ rear_preview_full_cam = <DVFS_CAM_L0>;
+ rear_preview_full_mif = <DVFS_MIF_L0>;
+ rear_preview_full_int = <DVFS_INT_L0>;
+ rear_preview_full_hpg = <1>;
+
+ rear_capture_int_cam = <DVFS_INT_CAM_L0>;
+ rear_capture_cam = <DVFS_CAM_L0>;
+ rear_capture_mif = <DVFS_MIF_L0>;
+ rear_capture_int = <DVFS_INT_L0>;
+ rear_capture_hpg = <1>;
+
+ rear_video_fhd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_fhd_cam = <DVFS_CAM_L0>;
+ rear_video_fhd_mif = <DVFS_MIF_L0>;
+ rear_video_fhd_int = <DVFS_INT_L0>;
+ rear_video_fhd_hpg = <1>;
+
+ rear_video_hd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_hd_cam = <DVFS_CAM_L0>;
+ rear_video_hd_mif = <DVFS_MIF_L0>;
+ rear_video_hd_int = <DVFS_INT_L0>;
+ rear_video_hd_hpg = <1>;
+
+ rear_video_uhd_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_uhd_cam = <DVFS_CAM_L0>;
+ rear_video_uhd_mif = <DVFS_MIF_L0>;
+ rear_video_uhd_int = <DVFS_INT_L0>;
+ rear_video_uhd_hpg = <1>;
+
+ rear_video_fhd_capture_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_fhd_capture_cam = <DVFS_CAM_L0>;
+ rear_video_fhd_capture_mif = <DVFS_MIF_L0>;
+ rear_video_fhd_capture_int = <DVFS_INT_L0>;
+ rear_video_fhd_capture_hpg = <1>;
+
+ rear_video_hd_capture_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_hd_capture_cam = <DVFS_CAM_L0>;
+ rear_video_hd_capture_mif = <DVFS_MIF_L0>;
+ rear_video_hd_capture_int = <DVFS_INT_L0>;
+ rear_video_hd_capture_hpg = <1>;
+
+ rear_video_uhd_capture_int_cam = <DVFS_INT_CAM_L0>;
+ rear_video_uhd_capture_cam = <DVFS_CAM_L0>;
+ rear_video_uhd_capture_mif = <DVFS_MIF_L0>;
+ rear_video_uhd_capture_int = <DVFS_INT_L0>;
+ rear_video_uhd_capture_hpg = <1>;
+
+ secure_front_int_cam = <DVFS_INT_CAM_L0>;
+ secure_front_cam = <DVFS_CAM_L0>;
+ secure_front_mif = <DVFS_MIF_L0>;
+ secure_front_int = <DVFS_INT_L0>;
+ secure_front_hpg = <1>;
+
+ pip_preview_int_cam = <DVFS_INT_CAM_L0>;
+ pip_preview_cam = <DVFS_CAM_L0>;
+ pip_preview_mif = <DVFS_MIF_L0>;
+ pip_preview_int = <DVFS_INT_L0>;
+ pip_preview_hpg = <1>;
+
+ pip_capture_int_cam = <DVFS_INT_CAM_L0>;
+ pip_capture_cam = <DVFS_CAM_L0>;
+ pip_capture_mif = <DVFS_MIF_L0>;
+ pip_capture_int = <DVFS_INT_L0>;
+ pip_capture_hpg = <1>;
+
+ pip_video_int_cam = <DVFS_INT_CAM_L0>;
+ pip_video_cam = <DVFS_CAM_L0>;
+ pip_video_mif = <DVFS_MIF_L0>;
+ pip_video_int = <DVFS_INT_L0>;
+ pip_video_hpg = <1>;
+
+ pip_video_capture_int_cam = <DVFS_INT_CAM_L0>;
+ pip_video_capture_cam = <DVFS_CAM_L0>;
+ pip_video_capture_mif = <DVFS_MIF_L0>;
+ pip_video_capture_int = <DVFS_INT_L0>;
+ pip_video_capture_hpg = <1>;
+
+ preview_high_speed_fps_int_cam = <DVFS_INT_CAM_L1>;
+ preview_high_speed_fps_cam = <DVFS_CAM_L3>;
+ preview_high_speed_fps_mif = <DVFS_MIF_L5>;
+ preview_high_speed_fps_int = <DVFS_INT_L0>;
+ preview_high_speed_fps_hpg = <1>;
+
+ video_high_speed_60fps_int_cam = <DVFS_INT_CAM_L0>;
+ video_high_speed_60fps_cam = <DVFS_CAM_L0>;
+ video_high_speed_60fps_mif = <DVFS_MIF_L0>;
+ video_high_speed_60fps_int = <DVFS_INT_L0>;
+ video_high_speed_60fps_hpg = <1>;
+
+ video_high_speed_480fps_int_cam = <DVFS_INT_CAM_L0>;
+ video_high_speed_480fps_cam = <DVFS_CAM_L0>;
+ video_high_speed_480fps_mif = <DVFS_MIF_L0>;
+ video_high_speed_480fps_int = <DVFS_INT_L0>;
+ video_high_speed_480fps_hpg = <1>;
+
+ video_high_speed_60fps_capture_int_cam = <DVFS_INT_CAM_L0>;
+ video_high_speed_60fps_capture_cam = <DVFS_CAM_L0>;
+ video_high_speed_60fps_capture_mif = <DVFS_MIF_L0>;
+ video_high_speed_60fps_capture_int = <DVFS_INT_L0>;
+ video_high_speed_60fps_capture_hpg = <1>;
+
+ ext_front_int_cam = <DVFS_INT_CAM_L0>;
+ ext_front_cam = <DVFS_CAM_L0>;
+ ext_front_mif = <DVFS_MIF_L0>;
+ ext_front_int = <DVFS_INT_L0>;
+ ext_front_hpg = <1>;
+
+ ext_secure_int_cam = <DVFS_INT_CAM_L3>;
+ ext_secure_cam = <DVFS_CAM_L4>;
+ ext_secure_mif = <DVFS_MIF_L7>;
+ ext_secure_int = <DVFS_INT_L4>;
+ ext_secure_hpg = <1>;
+
+ max_int_cam = <DVFS_INT_CAM_L0>;
+ max_cam = <DVFS_CAM_L0>;
+ max_mif = <DVFS_MIF_L0>;
+ max_int = <DVFS_INT_L0>;
+ max_hpg = <1>;
+ };
+ };
+};
+
+/* I2C_CAM0 */ /* SENSOR_CONTROL_I2C0 */
+&hsi2c_12 {
+ gpios = <&gpc0 0 0 &gpc0 1 0>;
+ status = "okay";
+ clock-frequency = <400000>;
+ samsung,reset-before-trans;
+ samsung,polling-mode;
+
+ fimc-is-2p7sq@2d {
+ compatible = "samsung,exynos5-fimc-is-cis-2p7sq";
+ reg = <0x2d>; /* 1 bit right shift */
+ id = <0>; /* matching fimc_is_sensor id */
+ setfile = "setA";
+ };
+
+ fimc-is-actuator@72 {
+ compatible = "samsung,exynos5-fimc-is-actuator-lc898217";
+ reg = <0x72>; /* 1 bit right shift */
+ id = <0>; /* matching fimc_is_sensor id */
+ place = <0>;
+ };
+};
+
+/* I2C_CAM1 */ /* SENSOR_CONTROL_I2C1 */
+&hsi2c_13 {
+ gpios = <&gpc0 2 0 &gpc0 3 0>;
+ status = "okay";
+ clock-frequency = <400000>;
+ samsung,reset-before-trans;
+ samsung,polling-mode;
+
+ fimc-is-2t7sx@10 {
+ compatible = "samsung,exynos5-fimc-is-cis-2t7sx";
+ reg = <0x10>; /* 1 bit right shift */
+ id = <2>; /* matching fimc_is_sensor id */
+ setfile = "setA";
+ };
+
+ fimc-is-actuator@74 {
+ compatible = "samsung,exynos5-fimc-is-actuator-lc898217";
+ reg = <0x74>; /* 1 bit right shift */
+ id = <2>; /* matching fimc_is_sensor id */
+ place = <1>; /* HACK */
+ };
+};
+
+/* I2C_CAM2 */ /* SENSOR_CONTROL_I2C2 */
+&hsi2c_14 {
+ gpios = <&gpc0 4 0 &gpc0 5 0>;
+ status = "okay";
+ clock-frequency = <400000>;
+ samsung,reset-before-trans;
+
+ fimc-is-6b2@35 {
+ compatible = "samsung,exynos5-fimc-is-cis-6b2";
+ reg = <0x35>; /* 1 bit right shift */
+ id = <1>; /* matching fimc_is_sensor id */
+ setfile = "setA";
+ };
+};
+
+/* I2C_CAM3 */ /* SENSOR_CONTROL_I2C3 */
+&hsi2c_15 {
+ gpios = <&gpc0 6 0 &gpc0 7 0>;
+ status = "okay";
+ clock-frequency = <400000>;
+ samsung,reset-before-trans;
+
+ fimc-is-actuator@72 {
+ compatible = "samsung,exynos5-fimc-is-actuator-dw9780";
+ reg = <0x72>; /* 1 bit right shift */
+ id = <0>; /* matching fimc_is_sensor id */
+ place = <1>; /* HACK */
+ };
+};
+
+&fimc_is_sensor0 {
+ scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
+ id = <0>;
+ csi_ch = <0>;
+ dma_ch = <0 0 0 0 0 1 1 1>;
+ vc_ch = <0 1 2 3 0 1 2 3>;
+ flite_ch = <FLITE_ID_NOTHING>;
+ is_bns = <0>;
+ /* use_ssvc1_internal; */
+ /* use_ssvc2_internal; */
+ status = "okay";
+};
+
+&fimc_is_sensor1 {
+ scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
+ id = <1>;
+ csi_ch = <1>;
+ dma_ch = <1 1 1 1 1 1 1 1>;
+ vc_ch = <0 1 2 3 0 1 2 3>;
+ flite_ch = <FLITE_ID_NOTHING>;
+ is_bns = <0>;
+ status = "okay";
+};
+
+&fimc_is_sensor2 {
+ scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
+ id = <2>;
+ csi_ch = <2>;
+ dma_ch = <2 2 2 2>;
+ vc_ch = <0 1 2 3>;
+ flite_ch = <FLITE_ID_NOTHING>;
+ is_bns = <0>;
+ status = "okay";
+};
+
+&fimc_is_sensor3 {
+ scenario = <SENSOR_SCENARIO_SECURE>; /* Normal, Vision, OIS etc */
+ id = <3>;
+ csi_ch = <3>;
+ dma_ch = <3 3 3 3>;
+ vc_ch = <0 1 2 3>;
+ flite_ch = <FLITE_ID_NOTHING>;
+ is_bns = <0>;
+ status = "okay";
+};
#include "modem-ss360ap-sit-pdata.dtsi"
#include "exynos9610-debug.dtsi"
#include "exynos9610-display-lcd.dtsi"
+#include "exynos9610-erd9610-camera.dtsi"
/ {
model = "Samsung ERD9610 board based on EXYNOS9610";
};
- fimc_is@144B0000 {
- vender {
- rear_sensor_id = <47>; /* 46: RPB, 20: 2P8, 47: 2P7SQ */
- front_sensor_id = <7>; /* 6B2 */
- rear_second_sensor_id = <48>; /* 48: 2T7SX */
- secure_sensor_id = <22>; /* 5E2 */
- };
-
- fimc_is_dvfs {
- #define DVFS_INT_CAM_L0 690000
- #define DVFS_INT_CAM_L1 680000
- #define DVFS_INT_CAM_L2 670000
- #define DVFS_INT_CAM_L3 660000
- #define DVFS_INT_CAM_L4 650000
-
- #define DVFS_INT_L0 667000
- #define DVFS_INT_L1 533000
- #define DVFS_INT_L2 400000
- #define DVFS_INT_L3 200000
- #define DVFS_INT_L4 100000
-
- #define DVFS_CAM_L0 690000
- #define DVFS_CAM_L1 680000
- #define DVFS_CAM_L2 670000
- #define DVFS_CAM_L3 660000
- #define DVFS_CAM_L4 650000
- #define DVFS_CAM_L5 640000
-
- #define DVFS_MIF_L0 2093000
- #define DVFS_MIF_L1 2002000
- #define DVFS_MIF_L2 1794000
- #define DVFS_MIF_L3 1539000
- #define DVFS_MIF_L4 1352000
- #define DVFS_MIF_L5 1014000
- #define DVFS_MIF_L6 845000
- #define DVFS_MIF_L7 676000
- #define DVFS_MIF_L8 546000
- #define DVFS_MIF_L9 419000
-
- table0 {
- desc = "dvfs table v0.0 for 16M/2M";
-
- default_int_cam = <DVFS_INT_CAM_L0>;
- default_cam = <DVFS_CAM_L0>;
- default_mif = <DVFS_MIF_L0>;
- default_int = <DVFS_INT_L0>;
- default_hpg = <1>;
-
- front_preview_int_cam = <DVFS_INT_CAM_L0>;
- front_preview_cam = <DVFS_CAM_L0>;
- front_preview_mif = <DVFS_MIF_L0>;
- front_preview_int = <DVFS_INT_L0>;
- front_preview_hpg = <1>;
-
- front_preview_full_int_cam = <DVFS_INT_CAM_L0>;
- front_preview_full_cam = <DVFS_CAM_L0>;
- front_preview_full_mif = <DVFS_MIF_L0>;
- front_preview_full_int = <DVFS_INT_L0>;
- front_preview_full_hpg = <1>;
-
- front_capture_int_cam = <DVFS_INT_CAM_L0>;
- front_capture_cam = <DVFS_CAM_L0>;
- front_capture_mif = <DVFS_MIF_L0>;
- front_capture_int = <DVFS_INT_L0>;
- front_capture_hpg = <1>;
-
- front_video_int_cam = <DVFS_INT_CAM_L0>;
- front_video_cam = <DVFS_CAM_L0>;
- front_video_mif = <DVFS_MIF_L0>;
- front_video_int = <DVFS_INT_L0>;
- front_video_hpg = <1>;
-
- front_video_capture_int_cam = <DVFS_INT_CAM_L0>;
- front_video_capture_cam = <DVFS_CAM_L0>;
- front_video_capture_mif = <DVFS_MIF_L0>;
- front_video_capture_int = <DVFS_INT_L0>;
- front_video_capture_hpg = <1>;
-
- front_wide_selfie_int_cam = <DVFS_INT_CAM_L0>;
- front_wide_selfie_cam = <DVFS_CAM_L0>;
- front_wide_selfie_mif = <DVFS_MIF_L0>;
- front_wide_selfie_int = <DVFS_INT_L0>;
- front_wide_selfie_hpg = <1>;
-
- front_vt1_int_cam = <DVFS_INT_CAM_L0>;
- front_vt1_cam = <DVFS_CAM_L0>;
- front_vt1_mif = <DVFS_MIF_L0>;
- front_vt1_int = <DVFS_INT_L0>;
- front_vt1_hpg = <1>;
-
- front_vt2_int_cam = <DVFS_INT_CAM_L0>;
- front_vt2_cam = <DVFS_CAM_L0>;
- front_vt2_mif = <DVFS_MIF_L0>;
- front_vt2_int = <DVFS_INT_L0>;
- front_vt2_hpg = <1>;
-
- front_vt4_int_cam = <DVFS_INT_CAM_L0>;
- front_vt4_cam = <DVFS_CAM_L0>;
- front_vt4_mif = <DVFS_MIF_L0>;
- front_vt4_int = <DVFS_INT_L0>;
- front_vt4_hpg = <1>;
-
- rear_preview_fhd_int_cam = <DVFS_INT_CAM_L0>;
- rear_preview_fhd_cam = <DVFS_CAM_L0>;
- rear_preview_fhd_mif = <DVFS_MIF_L0>;
- rear_preview_fhd_int = <DVFS_INT_L0>;
- rear_preview_fhd_hpg = <1>;
-
- rear_preview_hd_int_cam = <DVFS_INT_CAM_L0>;
- rear_preview_hd_cam = <DVFS_CAM_L0>;
- rear_preview_hd_mif = <DVFS_MIF_L0>;
- rear_preview_hd_int = <DVFS_INT_L0>;
- rear_preview_hd_hpg = <1>;
-
- rear_preview_uhd_int_cam = <DVFS_INT_CAM_L0>;
- rear_preview_uhd_cam = <DVFS_CAM_L0>;
- rear_preview_uhd_mif = <DVFS_MIF_L0>;
- rear_preview_uhd_int = <DVFS_INT_L0>;
- rear_preview_uhd_hpg = <1>;
-
- rear_preview_full_int_cam = <DVFS_INT_CAM_L0>;
- rear_preview_full_cam = <DVFS_CAM_L0>;
- rear_preview_full_mif = <DVFS_MIF_L0>;
- rear_preview_full_int = <DVFS_INT_L0>;
- rear_preview_full_hpg = <1>;
-
- rear_capture_int_cam = <DVFS_INT_CAM_L0>;
- rear_capture_cam = <DVFS_CAM_L0>;
- rear_capture_mif = <DVFS_MIF_L0>;
- rear_capture_int = <DVFS_INT_L0>;
- rear_capture_hpg = <1>;
-
- rear_video_fhd_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_fhd_cam = <DVFS_CAM_L0>;
- rear_video_fhd_mif = <DVFS_MIF_L0>;
- rear_video_fhd_int = <DVFS_INT_L0>;
- rear_video_fhd_hpg = <1>;
-
- rear_video_hd_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_hd_cam = <DVFS_CAM_L0>;
- rear_video_hd_mif = <DVFS_MIF_L0>;
- rear_video_hd_int = <DVFS_INT_L0>;
- rear_video_hd_hpg = <1>;
-
- rear_video_uhd_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_uhd_cam = <DVFS_CAM_L0>;
- rear_video_uhd_mif = <DVFS_MIF_L0>;
- rear_video_uhd_int = <DVFS_INT_L0>;
- rear_video_uhd_hpg = <1>;
-
- rear_video_fhd_capture_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_fhd_capture_cam = <DVFS_CAM_L0>;
- rear_video_fhd_capture_mif = <DVFS_MIF_L0>;
- rear_video_fhd_capture_int = <DVFS_INT_L0>;
- rear_video_fhd_capture_hpg = <1>;
-
- rear_video_hd_capture_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_hd_capture_cam = <DVFS_CAM_L0>;
- rear_video_hd_capture_mif = <DVFS_MIF_L0>;
- rear_video_hd_capture_int = <DVFS_INT_L0>;
- rear_video_hd_capture_hpg = <1>;
-
- rear_video_uhd_capture_int_cam = <DVFS_INT_CAM_L0>;
- rear_video_uhd_capture_cam = <DVFS_CAM_L0>;
- rear_video_uhd_capture_mif = <DVFS_MIF_L0>;
- rear_video_uhd_capture_int = <DVFS_INT_L0>;
- rear_video_uhd_capture_hpg = <1>;
-
- secure_front_int_cam = <DVFS_INT_CAM_L0>;
- secure_front_cam = <DVFS_CAM_L0>;
- secure_front_mif = <DVFS_MIF_L0>;
- secure_front_int = <DVFS_INT_L0>;
- secure_front_hpg = <1>;
-
- pip_preview_int_cam = <DVFS_INT_CAM_L0>;
- pip_preview_cam = <DVFS_CAM_L0>;
- pip_preview_mif = <DVFS_MIF_L0>;
- pip_preview_int = <DVFS_INT_L0>;
- pip_preview_hpg = <1>;
-
- pip_capture_int_cam = <DVFS_INT_CAM_L0>;
- pip_capture_cam = <DVFS_CAM_L0>;
- pip_capture_mif = <DVFS_MIF_L0>;
- pip_capture_int = <DVFS_INT_L0>;
- pip_capture_hpg = <1>;
-
- pip_video_int_cam = <DVFS_INT_CAM_L0>;
- pip_video_cam = <DVFS_CAM_L0>;
- pip_video_mif = <DVFS_MIF_L0>;
- pip_video_int = <DVFS_INT_L0>;
- pip_video_hpg = <1>;
-
- pip_video_capture_int_cam = <DVFS_INT_CAM_L0>;
- pip_video_capture_cam = <DVFS_CAM_L0>;
- pip_video_capture_mif = <DVFS_MIF_L0>;
- pip_video_capture_int = <DVFS_INT_L0>;
- pip_video_capture_hpg = <1>;
-
- preview_high_speed_fps_int_cam = <DVFS_INT_CAM_L1>;
- preview_high_speed_fps_cam = <DVFS_CAM_L3>;
- preview_high_speed_fps_mif = <DVFS_MIF_L5>;
- preview_high_speed_fps_int = <DVFS_INT_L0>;
- preview_high_speed_fps_hpg = <1>;
-
- video_high_speed_60fps_int_cam = <DVFS_INT_CAM_L0>;
- video_high_speed_60fps_cam = <DVFS_CAM_L0>;
- video_high_speed_60fps_mif = <DVFS_MIF_L0>;
- video_high_speed_60fps_int = <DVFS_INT_L0>;
- video_high_speed_60fps_hpg = <1>;
-
- video_high_speed_480fps_int_cam = <DVFS_INT_CAM_L0>;
- video_high_speed_480fps_cam = <DVFS_CAM_L0>;
- video_high_speed_480fps_mif = <DVFS_MIF_L0>;
- video_high_speed_480fps_int = <DVFS_INT_L0>;
- video_high_speed_480fps_hpg = <1>;
-
- video_high_speed_60fps_capture_int_cam = <DVFS_INT_CAM_L0>;
- video_high_speed_60fps_capture_cam = <DVFS_CAM_L0>;
- video_high_speed_60fps_capture_mif = <DVFS_MIF_L0>;
- video_high_speed_60fps_capture_int = <DVFS_INT_L0>;
- video_high_speed_60fps_capture_hpg = <1>;
-
- ext_front_int_cam = <DVFS_INT_CAM_L0>;
- ext_front_cam = <DVFS_CAM_L0>;
- ext_front_mif = <DVFS_MIF_L0>;
- ext_front_int = <DVFS_INT_L0>;
- ext_front_hpg = <1>;
-
- ext_secure_int_cam = <DVFS_INT_CAM_L3>;
- ext_secure_cam = <DVFS_CAM_L4>;
- ext_secure_mif = <DVFS_MIF_L7>;
- ext_secure_int = <DVFS_INT_L4>;
- ext_secure_hpg = <1>;
-
- max_int_cam = <DVFS_INT_CAM_L0>;
- max_cam = <DVFS_CAM_L0>;
- max_mif = <DVFS_MIF_L0>;
- max_int = <DVFS_INT_L0>;
- max_hpg = <1>;
- };
- };
- };
-
- fimc_is_flash_gpio: fimc-is-flash-gpio@0 {
- compatible = "samsung,sensor-flash-gpio";
- id = <0>;
- status = "okay";
-
- torch-gpio = <&gpg3 1 0x1>;
- flash-gpio = <&gpg3 0 0x1>;
- };
-
- fimc_is_sensor_2p7sq: fimc-is_sensor_2p7sq@47 {
- compatible = "samsung,sensor-module-2p7sq";
-
- pinctrl-names = "pin0", "pin1", "pin2", "release";
- pinctrl-0 = <>;
- pinctrl-1 = <&fimc_is_mclk0_out>;
- pinctrl-2 = <&fimc_is_mclk0_fn>;
- pinctrl-3 = <>;
-
- position = <0>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
- id = <0>; /* fimc_is_sensor id */
- mclk_ch = <0>;
- sensor_i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */
-
- gpio_mclk = <&gpc2 0 0x1>;
- gpio_reset = <&gpc1 0 0x1>; /* sensor reset */
-
- power_seq_id = <1>; /* Rumba S6 Compatible */
-
- status = "okay";
-
- af {
- product_name = <20>; /* ACTUATOR_NAME_LC898217 */
- i2c_ch = <0>; /* SENSOR_CONTROL_I2C0 */
- };
-
- flash {
- product_name = <11>; /* FLASH_GPIO */
- };
- };
-
- fimc_is_sensor_2t7sx: fimc-is_sensor_2t7sx@48 {
- compatible = "samsung,sensor-module-2t7sx";
-
- pinctrl-names = "pin0", "pin1", "pin2", "release";
- pinctrl-0 = <>;
- pinctrl-1 = <&fimc_is_mclk2_out>;
- pinctrl-2 = <&fimc_is_mclk2_fn>;
- pinctrl-3 = <>;
-
- position = <2>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
- id = <2>; /* fimc_is_sensor id */
- mclk_ch = <2>;
- sensor_i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */
-
- gpio_mclk = <&gpc2 2 0x1>;
- gpio_reset = <&gpc0 6 0x1>; /* sensor reset */
-
- power_seq_id = <1>; /* Rumba S6 Compatible */
-
- status = "okay";
-
- af {
- product_name = <20>; /* ACTUATOR_NAME_LC898217 */
- i2c_ch = <1>; /* SENSOR_CONTROL_I2C1 */
- };
-
- flash {
- product_name = <11>; /* FLASH_GPIO */
- };
- };
-
- /* FRONT CAMERA */
- fimc_is_sensor_6b2: fimc-is_sensor_6b2@7 {
- compatible = "samsung,sensor-module-6b2";
-
- pinctrl-names = "pin0", "pin1", "pin2", "release";
- pinctrl-0 = <>;
- pinctrl-1 = <&fimc_is_mclk1_out>;
- pinctrl-2 = <&fimc_is_mclk1_fn>;
- pinctrl-3 = <>;
-
- position = <1>; /* Rear:0. Front:1. Rear_sub:2. Secure:3. */
- id = <1>; /* fimc_is_sensor id */
- mclk_ch = <1>;
- sensor_i2c_ch = <2>; /* SENSOR_CONTROL_I2C4 */
-
- gpio_mclk = <&gpc2 1 0x1>;
- gpio_reset = <&gpc1 2 0x1>; /* sensor reset */
- status = "okay";
-
- af {
- product_name = <100>; /* NOTHING */
- i2c_ch = <2>; /* SENSOR_CONTROL_I2C2 */
- };
-
- flash {
- product_name = <100>; /* NOTHING */
- };
-
- ois {
- product_name = <100>; /* NOTHING */
- };
-
- internal_vc {
- /* DUMMY */
- };
- };
-
- /* I2C_CAM0 */ /* SENSOR_CONTROL_I2C0 */
- hsi2c_12: hsi2c@138A0000 {
- gpios = <&gpc0 0 0 &gpc0 1 0>;
- status = "okay";
- clock-frequency = <400000>;
- samsung,reset-before-trans;
- samsung,polling-mode;
-
- fimc-is-2p7sq@2d {
- compatible = "samsung,exynos5-fimc-is-cis-2p7sq";
- reg = <0x2d>; /* 1 bit right shift */
- id = <0>; /* matching fimc_is_sensor id */
- setfile = "setA";
- };
-
- fimc-is-actuator@72 {
- compatible = "samsung,exynos5-fimc-is-actuator-lc898217";
- reg = <0x72>; /* 1 bit right shift */
- id = <0>; /* matching fimc_is_sensor id */
- place = <0>;
- };
- };
-
- /* I2C_CAM1 */ /* SENSOR_CONTROL_I2C1 */
- hsi2c_13: hsi2c@138B0000 {
- gpios = <&gpc0 2 0 &gpc0 3 0>;
- status = "okay";
- clock-frequency = <400000>;
- samsung,reset-before-trans;
- samsung,polling-mode;
-
- fimc-is-2t7sx@10 {
- compatible = "samsung,exynos5-fimc-is-cis-2t7sx";
- reg = <0x10>; /* 1 bit right shift */
- id = <2>; /* matching fimc_is_sensor id */
- setfile = "setA";
- };
-
- fimc-is-actuator@74 {
- compatible = "samsung,exynos5-fimc-is-actuator-lc898217";
- reg = <0x74>; /* 1 bit right shift */
- id = <2>; /* matching fimc_is_sensor id */
- place = <1>; /* HACK */
- };
- };
-
- /* I2C_CAM2 */ /* SENSOR_CONTROL_I2C2 */
- hsi2c_14: hsi2c@138C0000 {
- gpios = <&gpc0 4 0 &gpc0 5 0>;
- status = "okay";
- clock-frequency = <400000>;
- samsung,reset-before-trans;
-
- fimc-is-6b2@35 {
- compatible = "samsung,exynos5-fimc-is-cis-6b2";
- reg = <0x35>; /* 1 bit right shift */
- id = <1>; /* matching fimc_is_sensor id */
- setfile = "setA";
- };
- };
-
- /* I2C_CAM3 */ /* SENSOR_CONTROL_I2C3 */
- hsi2c_15: hsi2c@138D0000 {
- gpios = <&gpc0 6 0 &gpc0 7 0>;
- status = "okay";
- clock-frequency = <400000>;
- samsung,reset-before-trans;
-
- fimc-is-actuator@72 {
- compatible = "samsung,exynos5-fimc-is-actuator-dw9780";
- reg = <0x72>; /* 1 bit right shift */
- id = <0>; /* matching fimc_is_sensor id */
- place = <1>; /* HACK */
- };
- };
-
- fimc_is_sensor0: fimc_is_sensor@14400000 {
- scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
- id = <0>;
- csi_ch = <0>;
- dma_ch = <0 0 0 0 0 1 1 1>;
- vc_ch = <0 1 2 3 0 1 2 3>;
- flite_ch = <FLITE_ID_NOTHING>;
- is_bns = <0>;
- /* use_ssvc1_internal; */
- /* use_ssvc2_internal; */
- status = "okay";
- };
-
- fimc_is_sensor1: fimc_is_sensor@14410000 {
- scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
- id = <1>;
- csi_ch = <1>;
- dma_ch = <1 1 1 1 1 1 1 1>;
- vc_ch = <0 1 2 3 0 1 2 3>;
- flite_ch = <FLITE_ID_NOTHING>;
- is_bns = <0>;
- status = "okay";
- };
-
- fimc_is_sensor2: fimc_is_sensor@14420000 {
- scenario = <SENSOR_SCENARIO_NORMAL>; /* Normal, Vision, OIS etc */
- id = <2>;
- csi_ch = <2>;
- dma_ch = <2 2 2 2>;
- vc_ch = <0 1 2 3>;
- flite_ch = <FLITE_ID_NOTHING>;
- is_bns = <0>;
- status = "okay";
- };
-
- fimc_is_sensor3: fimc_is_sensor@14430000 {
- scenario = <SENSOR_SCENARIO_SECURE>; /* Normal, Vision, OIS etc */
- id = <3>;
- csi_ch = <3>;
- dma_ch = <3 3 3 3>;
- vc_ch = <0 1 2 3>;
- flite_ch = <FLITE_ID_NOTHING>;
- is_bns = <0>;
- status = "okay";
- };
};
&pinctrl_0 {