From: Wooyeon Kim Date: Wed, 4 Jul 2018 07:16:22 +0000 (+0900) Subject: [9610][ERD] dtsi: camera: seperated camera dtsi X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=1b77cd64510934e3e319c0938ec9d7d4a1586bb8;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git [9610][ERD] dtsi: camera: seperated camera dtsi seperated erd9610-camera.dtsi camera nodes into exynos9610-erd9610-camera.dtsi ISSUE JIRA/PLM ID: N/A PR JIRA ID: CPR-35 Change-Id: I33bded3b57d62a376a9005d989266e32f3084ee8 Signed-off-by: Wooyeon Kim --- diff --git a/arch/arm64/boot/dts/exynos/exynos9610-erd9610-camera.dtsi b/arch/arm64/boot/dts/exynos/exynos9610-erd9610-camera.dtsi new file mode 100644 index 000000000000..f9b278983175 --- /dev/null +++ b/arch/arm64/boot/dts/exynos/exynos9610-erd9610-camera.dtsi @@ -0,0 +1,494 @@ +/* + * 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 + +/ { +// 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 = ; + default_cam = ; + default_mif = ; + default_int = ; + default_hpg = <1>; + + front_preview_int_cam = ; + front_preview_cam = ; + front_preview_mif = ; + front_preview_int = ; + front_preview_hpg = <1>; + + front_preview_full_int_cam = ; + front_preview_full_cam = ; + front_preview_full_mif = ; + front_preview_full_int = ; + front_preview_full_hpg = <1>; + + front_capture_int_cam = ; + front_capture_cam = ; + front_capture_mif = ; + front_capture_int = ; + front_capture_hpg = <1>; + + front_video_int_cam = ; + front_video_cam = ; + front_video_mif = ; + front_video_int = ; + front_video_hpg = <1>; + + front_video_capture_int_cam = ; + front_video_capture_cam = ; + front_video_capture_mif = ; + front_video_capture_int = ; + front_video_capture_hpg = <1>; + + front_wide_selfie_int_cam = ; + front_wide_selfie_cam = ; + front_wide_selfie_mif = ; + front_wide_selfie_int = ; + front_wide_selfie_hpg = <1>; + + front_vt1_int_cam = ; + front_vt1_cam = ; + front_vt1_mif = ; + front_vt1_int = ; + front_vt1_hpg = <1>; + + front_vt2_int_cam = ; + front_vt2_cam = ; + front_vt2_mif = ; + front_vt2_int = ; + front_vt2_hpg = <1>; + + front_vt4_int_cam = ; + front_vt4_cam = ; + front_vt4_mif = ; + front_vt4_int = ; + front_vt4_hpg = <1>; + + rear_preview_fhd_int_cam = ; + rear_preview_fhd_cam = ; + rear_preview_fhd_mif = ; + rear_preview_fhd_int = ; + rear_preview_fhd_hpg = <1>; + + rear_preview_hd_int_cam = ; + rear_preview_hd_cam = ; + rear_preview_hd_mif = ; + rear_preview_hd_int = ; + rear_preview_hd_hpg = <1>; + + rear_preview_uhd_int_cam = ; + rear_preview_uhd_cam = ; + rear_preview_uhd_mif = ; + rear_preview_uhd_int = ; + rear_preview_uhd_hpg = <1>; + + rear_preview_full_int_cam = ; + rear_preview_full_cam = ; + rear_preview_full_mif = ; + rear_preview_full_int = ; + rear_preview_full_hpg = <1>; + + rear_capture_int_cam = ; + rear_capture_cam = ; + rear_capture_mif = ; + rear_capture_int = ; + rear_capture_hpg = <1>; + + rear_video_fhd_int_cam = ; + rear_video_fhd_cam = ; + rear_video_fhd_mif = ; + rear_video_fhd_int = ; + rear_video_fhd_hpg = <1>; + + rear_video_hd_int_cam = ; + rear_video_hd_cam = ; + rear_video_hd_mif = ; + rear_video_hd_int = ; + rear_video_hd_hpg = <1>; + + rear_video_uhd_int_cam = ; + rear_video_uhd_cam = ; + rear_video_uhd_mif = ; + rear_video_uhd_int = ; + rear_video_uhd_hpg = <1>; + + rear_video_fhd_capture_int_cam = ; + rear_video_fhd_capture_cam = ; + rear_video_fhd_capture_mif = ; + rear_video_fhd_capture_int = ; + rear_video_fhd_capture_hpg = <1>; + + rear_video_hd_capture_int_cam = ; + rear_video_hd_capture_cam = ; + rear_video_hd_capture_mif = ; + rear_video_hd_capture_int = ; + rear_video_hd_capture_hpg = <1>; + + rear_video_uhd_capture_int_cam = ; + rear_video_uhd_capture_cam = ; + rear_video_uhd_capture_mif = ; + rear_video_uhd_capture_int = ; + rear_video_uhd_capture_hpg = <1>; + + secure_front_int_cam = ; + secure_front_cam = ; + secure_front_mif = ; + secure_front_int = ; + secure_front_hpg = <1>; + + pip_preview_int_cam = ; + pip_preview_cam = ; + pip_preview_mif = ; + pip_preview_int = ; + pip_preview_hpg = <1>; + + pip_capture_int_cam = ; + pip_capture_cam = ; + pip_capture_mif = ; + pip_capture_int = ; + pip_capture_hpg = <1>; + + pip_video_int_cam = ; + pip_video_cam = ; + pip_video_mif = ; + pip_video_int = ; + pip_video_hpg = <1>; + + pip_video_capture_int_cam = ; + pip_video_capture_cam = ; + pip_video_capture_mif = ; + pip_video_capture_int = ; + pip_video_capture_hpg = <1>; + + preview_high_speed_fps_int_cam = ; + preview_high_speed_fps_cam = ; + preview_high_speed_fps_mif = ; + preview_high_speed_fps_int = ; + preview_high_speed_fps_hpg = <1>; + + video_high_speed_60fps_int_cam = ; + video_high_speed_60fps_cam = ; + video_high_speed_60fps_mif = ; + video_high_speed_60fps_int = ; + video_high_speed_60fps_hpg = <1>; + + video_high_speed_480fps_int_cam = ; + video_high_speed_480fps_cam = ; + video_high_speed_480fps_mif = ; + video_high_speed_480fps_int = ; + video_high_speed_480fps_hpg = <1>; + + video_high_speed_60fps_capture_int_cam = ; + video_high_speed_60fps_capture_cam = ; + video_high_speed_60fps_capture_mif = ; + video_high_speed_60fps_capture_int = ; + video_high_speed_60fps_capture_hpg = <1>; + + ext_front_int_cam = ; + ext_front_cam = ; + ext_front_mif = ; + ext_front_int = ; + ext_front_hpg = <1>; + + ext_secure_int_cam = ; + ext_secure_cam = ; + ext_secure_mif = ; + ext_secure_int = ; + ext_secure_hpg = <1>; + + max_int_cam = ; + max_cam = ; + max_mif = ; + max_int = ; + 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 = ; /* 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 = ; + is_bns = <0>; + /* use_ssvc1_internal; */ + /* use_ssvc2_internal; */ + status = "okay"; +}; + +&fimc_is_sensor1 { + scenario = ; /* 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 = ; + is_bns = <0>; + status = "okay"; +}; + +&fimc_is_sensor2 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <2>; + csi_ch = <2>; + dma_ch = <2 2 2 2>; + vc_ch = <0 1 2 3>; + flite_ch = ; + is_bns = <0>; + status = "okay"; +}; + +&fimc_is_sensor3 { + scenario = ; /* Normal, Vision, OIS etc */ + id = <3>; + csi_ch = <3>; + dma_ch = <3 3 3 3>; + vc_ch = <0 1 2 3>; + flite_ch = ; + is_bns = <0>; + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/exynos/exynos9610-erd9610.dts b/arch/arm64/boot/dts/exynos/exynos9610-erd9610.dts index 9bdf9da91b31..6d569eec7aed 100644 --- a/arch/arm64/boot/dts/exynos/exynos9610-erd9610.dts +++ b/arch/arm64/boot/dts/exynos/exynos9610-erd9610.dts @@ -16,6 +16,7 @@ #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"; @@ -1663,478 +1664,6 @@ }; - 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 = ; - default_cam = ; - default_mif = ; - default_int = ; - default_hpg = <1>; - - front_preview_int_cam = ; - front_preview_cam = ; - front_preview_mif = ; - front_preview_int = ; - front_preview_hpg = <1>; - - front_preview_full_int_cam = ; - front_preview_full_cam = ; - front_preview_full_mif = ; - front_preview_full_int = ; - front_preview_full_hpg = <1>; - - front_capture_int_cam = ; - front_capture_cam = ; - front_capture_mif = ; - front_capture_int = ; - front_capture_hpg = <1>; - - front_video_int_cam = ; - front_video_cam = ; - front_video_mif = ; - front_video_int = ; - front_video_hpg = <1>; - - front_video_capture_int_cam = ; - front_video_capture_cam = ; - front_video_capture_mif = ; - front_video_capture_int = ; - front_video_capture_hpg = <1>; - - front_wide_selfie_int_cam = ; - front_wide_selfie_cam = ; - front_wide_selfie_mif = ; - front_wide_selfie_int = ; - front_wide_selfie_hpg = <1>; - - front_vt1_int_cam = ; - front_vt1_cam = ; - front_vt1_mif = ; - front_vt1_int = ; - front_vt1_hpg = <1>; - - front_vt2_int_cam = ; - front_vt2_cam = ; - front_vt2_mif = ; - front_vt2_int = ; - front_vt2_hpg = <1>; - - front_vt4_int_cam = ; - front_vt4_cam = ; - front_vt4_mif = ; - front_vt4_int = ; - front_vt4_hpg = <1>; - - rear_preview_fhd_int_cam = ; - rear_preview_fhd_cam = ; - rear_preview_fhd_mif = ; - rear_preview_fhd_int = ; - rear_preview_fhd_hpg = <1>; - - rear_preview_hd_int_cam = ; - rear_preview_hd_cam = ; - rear_preview_hd_mif = ; - rear_preview_hd_int = ; - rear_preview_hd_hpg = <1>; - - rear_preview_uhd_int_cam = ; - rear_preview_uhd_cam = ; - rear_preview_uhd_mif = ; - rear_preview_uhd_int = ; - rear_preview_uhd_hpg = <1>; - - rear_preview_full_int_cam = ; - rear_preview_full_cam = ; - rear_preview_full_mif = ; - rear_preview_full_int = ; - rear_preview_full_hpg = <1>; - - rear_capture_int_cam = ; - rear_capture_cam = ; - rear_capture_mif = ; - rear_capture_int = ; - rear_capture_hpg = <1>; - - rear_video_fhd_int_cam = ; - rear_video_fhd_cam = ; - rear_video_fhd_mif = ; - rear_video_fhd_int = ; - rear_video_fhd_hpg = <1>; - - rear_video_hd_int_cam = ; - rear_video_hd_cam = ; - rear_video_hd_mif = ; - rear_video_hd_int = ; - rear_video_hd_hpg = <1>; - - rear_video_uhd_int_cam = ; - rear_video_uhd_cam = ; - rear_video_uhd_mif = ; - rear_video_uhd_int = ; - rear_video_uhd_hpg = <1>; - - rear_video_fhd_capture_int_cam = ; - rear_video_fhd_capture_cam = ; - rear_video_fhd_capture_mif = ; - rear_video_fhd_capture_int = ; - rear_video_fhd_capture_hpg = <1>; - - rear_video_hd_capture_int_cam = ; - rear_video_hd_capture_cam = ; - rear_video_hd_capture_mif = ; - rear_video_hd_capture_int = ; - rear_video_hd_capture_hpg = <1>; - - rear_video_uhd_capture_int_cam = ; - rear_video_uhd_capture_cam = ; - rear_video_uhd_capture_mif = ; - rear_video_uhd_capture_int = ; - rear_video_uhd_capture_hpg = <1>; - - secure_front_int_cam = ; - secure_front_cam = ; - secure_front_mif = ; - secure_front_int = ; - secure_front_hpg = <1>; - - pip_preview_int_cam = ; - pip_preview_cam = ; - pip_preview_mif = ; - pip_preview_int = ; - pip_preview_hpg = <1>; - - pip_capture_int_cam = ; - pip_capture_cam = ; - pip_capture_mif = ; - pip_capture_int = ; - pip_capture_hpg = <1>; - - pip_video_int_cam = ; - pip_video_cam = ; - pip_video_mif = ; - pip_video_int = ; - pip_video_hpg = <1>; - - pip_video_capture_int_cam = ; - pip_video_capture_cam = ; - pip_video_capture_mif = ; - pip_video_capture_int = ; - pip_video_capture_hpg = <1>; - - preview_high_speed_fps_int_cam = ; - preview_high_speed_fps_cam = ; - preview_high_speed_fps_mif = ; - preview_high_speed_fps_int = ; - preview_high_speed_fps_hpg = <1>; - - video_high_speed_60fps_int_cam = ; - video_high_speed_60fps_cam = ; - video_high_speed_60fps_mif = ; - video_high_speed_60fps_int = ; - video_high_speed_60fps_hpg = <1>; - - video_high_speed_480fps_int_cam = ; - video_high_speed_480fps_cam = ; - video_high_speed_480fps_mif = ; - video_high_speed_480fps_int = ; - video_high_speed_480fps_hpg = <1>; - - video_high_speed_60fps_capture_int_cam = ; - video_high_speed_60fps_capture_cam = ; - video_high_speed_60fps_capture_mif = ; - video_high_speed_60fps_capture_int = ; - video_high_speed_60fps_capture_hpg = <1>; - - ext_front_int_cam = ; - ext_front_cam = ; - ext_front_mif = ; - ext_front_int = ; - ext_front_hpg = <1>; - - ext_secure_int_cam = ; - ext_secure_cam = ; - ext_secure_mif = ; - ext_secure_int = ; - ext_secure_hpg = <1>; - - max_int_cam = ; - max_cam = ; - max_mif = ; - max_int = ; - 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 = ; /* 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 = ; - is_bns = <0>; - /* use_ssvc1_internal; */ - /* use_ssvc2_internal; */ - status = "okay"; - }; - - fimc_is_sensor1: fimc_is_sensor@14410000 { - scenario = ; /* 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 = ; - is_bns = <0>; - status = "okay"; - }; - - fimc_is_sensor2: fimc_is_sensor@14420000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <2>; - csi_ch = <2>; - dma_ch = <2 2 2 2>; - vc_ch = <0 1 2 3>; - flite_ch = ; - is_bns = <0>; - status = "okay"; - }; - - fimc_is_sensor3: fimc_is_sensor@14430000 { - scenario = ; /* Normal, Vision, OIS etc */ - id = <3>; - csi_ch = <3>; - dma_ch = <3 3 3 3>; - vc_ch = <0 1 2 3>; - flite_ch = ; - is_bns = <0>; - status = "okay"; - }; }; &pinctrl_0 {