camera-devicetree: Import changes from CPH2581_15.0.0.850(EX01)

Change-Id: Id0712225f4e7bd4ab3d3991485b2e6fa7bd9fe4f
Signed-off-by: chandu078 <chandudyavanapelli03@gmail.com>
This commit is contained in:
chandu078
2025-03-15 13:53:51 +05:30
parent fd4eec498b
commit dccd18ae30
24 changed files with 4736 additions and 62 deletions

View File

@@ -13,7 +13,7 @@
pins = "gpio70";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -42,7 +42,7 @@
pins = "gpio71";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -71,7 +71,7 @@
pins = "gpio72";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -100,7 +100,7 @@
pins = "gpio73";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -129,7 +129,7 @@
pins = "gpio74";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -158,7 +158,7 @@
pins = "gpio75";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -186,7 +186,7 @@
pins = "gpio20";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -213,7 +213,7 @@
pins = "gpio21";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};

View File

@@ -1,14 +1,34 @@
dtbo-$(CONFIG_ARCH_PINEAPPLE) := pineapple-camera.dtbo
dtbo-$(CONFIG_ARCH_PINEAPPLE) += pineapple-camera-v2.dtbo \
pineapple-camera-sensor-cdp.dtbo \
pineapple-camera-sensor-mtp.dtbo \
pineapple-camera-sensor-hdk.dtbo \
pineapple-camera-sensor-qrd.dtbo \
pineapple-camera-sensor-aim500.dtbo
dtbo-$(CONFIG_ARCH_CLIFFS) += cliffs-camera.dtbo
dtbo-$(CONFIG_ARCH_CLIFFS) += cliffs-camera-sensor-cdp.dtbo \
cliffs-camera-sensor-mtp.dtbo \
cliffs-camera-sensor-qrd.dtbo
#dtbo-$(CONFIG_ARCH_PINEAPPLE) += pineapple-camera-v2.dtbo \
# pineapple-camera-sensor-cdp.dtbo \
# pineapple-camera-sensor-mtp.dtbo \
# pineapple-camera-sensor-hdk.dtbo \
# pineapple-camera-sensor-qrd.dtbo \
# pineapple-camera-sensor-aim500.dtbo
#OPLUS_DTS_OVERLAY start
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/waffle-camera-overlay.dtbo \
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/waffle-camera-overlay-evb.dtbo \
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/caihong-camera-overlay.dtbo \
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/corvette-camera-overlay.dtbo \
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/giulia-camera-overlay.dtbo \
dtbo-$(CONFIG_ARCH_PINEAPPLE) += oplus/giuliaC-camera-overlay.dtbo \
#OPLUS_DTS_OVERLAY end
dtbo-$(CONFIG_ARCH_CLIFFS) += cliffs-camera.dtbo
#OPLUS_DTS_OVERLAY start
dtbo-$(CONFIG_ARCH_CLIFFS) += oplus/audi-camera-overlay.dtbo \
dtbo-$(CONFIG_ARCH_CLIFFS) += oplus/avalon-camera-overlay.dtbo \
#OPLUS_DTS_OVERLAY end
#dtbo-$(CONFIG_ARCH_CLIFFS) += cliffs-camera-sensor-cdp.dtbo \
# cliffs-camera-sensor-mtp.dtbo \
# cliffs-camera-sensor-qrd.dtbo
dtbo-$(CONFIG_ARCH_VOLCANO) += volcano-camera.dtbo
dtbo-$(CONFIG_ARCH_VOLCANO) += volcano-camera-fp1-fp2.dtbo
dtbo-$(CONFIG_ARCH_VOLCANO) += volcano-camera-qrd.dtbo

View File

@@ -0,0 +1,17 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-cliffs.h>
#include <dt-bindings/clock/qcom,camcc-cliffs.h>
#include <dt-bindings/interconnect/qcom,cliffs.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../cliffs-camera.dtsi"
#include "audi_camera_overlay_common.dtsi"
/ {
model = "Qualcomm Technologies, Inc. cliffs MTP,Audi";
compatible = "qcom,cliffs-mtp", "qcom,cliffs", "qcom,mtp";
oplus,project-id = <23803 23865 23866>;
};

View File

@@ -0,0 +1,66 @@
&actuator_triple_main {
pid_version = <0x20>;
pid_register = /bits/ 8 <0x0B 0x82
0x0A 0x00
0x0E 0x8C
0x0F 0xC1
0x08 0x1E
0x09 0x20
0x10 0x35
0x11 0x41
0x12 0x6E
0x13 0x22
0x14 0x14
0x15 0x00
0x16 0x20
0x17 0x3C
0x18 0xAA
0x1A 0x00
0x1B 0x30
0x1C 0xBE
0x1D 0xDC
0x1E 0xE1
0x1F 0x14
0x20 0x21
0x21 0x29
0x22 0x3C
0x23 0xB9
0x24 0x9C
0x25 0x07
0x26 0xC3
0x27 0xBC
0x28 0x7C
0x29 0x0B
0x2A 0x3C
0x2B 0x9A
0x2C 0x84
0x2D 0xC9
0x2E 0x3E
0x2F 0xD6
0x30 0x00
0x31 0x3D
0x32 0x00
0x33 0x28
0x34 0xC0
0x35 0x46
0x36 0xC7
0x3C 0x50
0x3D 0xC5
0x52 0x14
0x53 0x50
0x54 0x14
0x55 0x32
0x50 0x46
0x51 0xD8
0x56 0x23
0x57 0xB4
0x58 0x40
0x59 0x0B
0x5A 0x00
0x5B 0x02
0x5C 0x32
0x5E 0x00
0x5F 0x00
0xC4 0x00
>;
};

View File

@@ -0,0 +1,348 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_rear_wide: qcom,camera-flash0 {
cell-index = <0>;
compatible = "qcom,camera-flash";
qcom,flash-name = "pmic";
oplus,flash-max-current = <2000>;
flash-source = <&pmxr2230_flash0 &pmxr2230_flash1>;
torch-source = <&pmxr2230_torch0 &pmxr2230_torch1>;
switch-source = <&pmxr2230_switch2>;
status = "ok";
};
led_flash_rear_ultrawide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
oplus,flash-max-current = <2000>;
flash-source = <&pmxr2230_flash0 &pmxr2230_flash1>;
torch-source = <&pmxr2230_torch0 &pmxr2230_torch1>;
switch-source = <&pmxr2230_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.1-audi-main-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.1-audi-wide-enhance", "qcom,csiphy";
};
&cam_csiphy4{
cell-index = <4>;
compatible = "qcom,csiphy-v2.2.1-audi-front-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
qcom,init-voltage = <1050000>;
};
&L2M {
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
qcom,init-voltage = <1050000>;
};
&L3M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L4M {
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L3C {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
};
&cam_cci0 {
actuator_rear_wide: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <5000 170000>;
status = "ok";
};
ois_rear_wide: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_vdig-supply = <&L2M>;
regulator-names = "cam_vio", "cam_vaf", "cam_vdig";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000>;
rgltr-max-voltage = <1800000 2800000 1100000>;
rgltr-load-current = <5000 170000 600000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
ois,name="bu63169";
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_rear_wide: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L3M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <90000 600000 5000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst0>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst0>;
gpios = <&tlmm 64 0>,
<&tlmm 15 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <24000000>;
status = "ok";
};
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_rear_wide>;
actuator-src = <&actuator_rear_wide>;
ois-src = <&ois_rear_wide>;
led-flash-src = <&led_flash_rear_wide>;
cam_vana-supply = <&L3M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio","cam_vaf",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 2700000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 2800000 0>;
rgltr-load-current = <90000 600000 5000 170000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst0>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst0>;
gpios = <&tlmm 64 0>,
<&tlmm 15 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <24000000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x2210>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0xC000>;
status = "ok";
};
eeprom_rear_ultrawide: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L23B>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L3C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <1000 30000 150000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 65 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_rear_ultrawide>;
led-flash-src = <&led_flash_rear_ultrawide>;
cam_vio-supply = <&L23B>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L3C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <1000 30000 148000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 65 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se8_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_front: qcom,eeprom2 {
cell-index = <2>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L23B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
// aon-user;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <60000 200000 1000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 68 0>,
<&tlmm 3 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET3";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-i2c-sensor";
reg = <0x20>;
csiphy-sd-index = <4>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_front>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L23B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <60000 200000 1000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 68 0>,
<&tlmm 3 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET3";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};

View File

@@ -0,0 +1,18 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-cliffs.h>
#include <dt-bindings/clock/qcom,camcc-cliffs.h>
#include <dt-bindings/interconnect/qcom,cliffs.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../cliffs-camera.dtsi"
#include "regulator/aw37004.dtsi"
#include "avalon_camera_overlay_common.dtsi"
/ {
model = "Qualcomm Technologies, Inc. cliffs MTP,Avalon";
compatible = "qcom,cliffs-mtp", "qcom,cliffs", "qcom,mtp";
oplus,project-id = <24211 24212>;
};

View File

@@ -0,0 +1,319 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_rear_wide: qcom,camera-flash0 {
cell-index = <0>;
compatible = "qcom,camera-flash";
qcom,flash-name = "pmic";
oplus,flash-max-current = <1500>;
flash-source = <&pmxr2230_flash0 &pmxr2230_flash1>;
torch-source = <&pmxr2230_torch0 &pmxr2230_torch1>;
switch-source = <&pmxr2230_switch2>;
status = "ok";
};
led_flash_rear_ultrawide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
oplus,flash-max-current = <1500>;
flash-source = <&pmxr2230_flash2 &pmxr2230_flash3>;
torch-source = <&pmxr2230_torch2 &pmxr2230_torch3>;
switch-source = <&pmxr2230_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.1-audi-main-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.1-audi-wide-enhance", "qcom,csiphy";
};
&cam_csiphy4{
cell-index = <4>;
compatible = "qcom,csiphy-v2.2.1-audi-front-enhance", "qcom,csiphy";
};
&cam_cci0 {
actuator_rear_wide: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <5000 170000>;
status = "ok";
};
ois_rear_wide: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_vdig-supply = <&aw37004_dvdd2>;
regulator-names = "cam_vio", "cam_vaf", "cam_vdig";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1050000>;
rgltr-max-voltage = <1800000 2800000 1050000>;
rgltr-load-current = <5000 170000 600000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
ois,name="bu63169";
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_rear_wide: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&aw37004_avdd2>;
cam_vdig-supply = <&aw37004_dvdd2>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <90000 600000 5000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst0>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst0>;
gpios = <&tlmm 64 0>,
<&tlmm 15 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <24000000>;
status = "ok";
};
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_rear_wide>;
actuator-src = <&actuator_rear_wide>;
ois-src = <&ois_rear_wide>;
led-flash-src = <&led_flash_rear_wide>;
cam_vana-supply = <&aw37004_avdd2>;
cam_vdig-supply = <&aw37004_dvdd2>;
cam_vio-supply = <&L23B>;
cam_vaf-supply = <&L15B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio","cam_vaf",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 2700000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 2800000 0>;
rgltr-load-current = <90000 600000 5000 170000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst0>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst0>;
gpios = <&tlmm 64 0>,
<&tlmm 15 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET0";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <24000000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x2210>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0xC000>;
status = "ok";
};
eeprom_rear_ultrawide: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L23B>;
cam_vana-supply = <&aw37004_avdd1>;
cam_vdig-supply = <&L3C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <1000 30000 150000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 65 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_rear_ultrawide>;
led-flash-src = <&led_flash_rear_ultrawide>;
cam_vio-supply = <&L23B>;
cam_vana-supply = <&aw37004_avdd1>;
cam_vdig-supply = <&L3C>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <1000 30000 148000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 65 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se8_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_front: qcom,eeprom2 {
cell-index = <2>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&aw37004_avdd1>;
cam_vdig-supply = <&aw37004_dvdd1>;
cam_vio-supply = <&L23B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
// aon-user;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <60000 200000 1000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 68 0>,
<&tlmm 3 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET3";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-i2c-sensor";
reg = <0x20>;
csiphy-sd-index = <4>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_front>;
cam_vana-supply = <&aw37004_avdd1>;
cam_vdig-supply = <&aw37004_dvdd1>;
cam_vio-supply = <&L23B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <60000 200000 1000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 68 0>,
<&tlmm 3 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET3";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};

View File

@@ -0,0 +1,19 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "caihong_camera_overlay_common.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple Caihong MTP";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <23926 23976 23978 23927>;
//oplus,hw-id = <OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};

View File

@@ -0,0 +1,366 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_rear: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
//iovdd
&L4B {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
//avdd
&L16B {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
//cam0 dvdd
&L2G {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
};
//cam1 dvdd
//&L11B {
// regulator-min-microvolt = <1200000>;
// regulator-max-microvolt = <1200000>;
// qcom,init-voltage = <1200000>;
//};
//cam0 af
&L9B {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&cam_cci0 {
eeprom_front: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L4B>;
cam_vana-supply = <&L16B>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
insensor-page-eeprom-support = <1>;
oplus-eeprom-name = "sc820cs_caihong";
status = "ok";
};
//front camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_front>;
cam_vio-supply = <&L4B>;
cam_vana-supply = <&L16B>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci0 {
actuator_rear: qcom,actuator0{
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L4B>;
cam_vaf-supply = <&L9B>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <300000 1200000>;
//reactive-ctrl-support;
// reg_addr addr_type reg_data data_type delay data_mask
//reactive-reg-setting = < 0x02 1 0x00 1 2800 0x00 >;
actuator,name = "gt9772";
status = "ok";
};
eeprom_rear: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L16B>;
cam_vdig-supply = <&L2G>;
cam_vio-supply = <&L4B>;
cam_vaf-supply = <&L9B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1200000 1800000 2800000 0>;
rgltr-max-voltage = <2800000 1200000 1800000 2800000 0>;
rgltr-load-current = <600000 1200000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_rear>;
actuator-src = <&actuator_rear>;
led-flash-src = <&led_flash_rear>;
cam_vana-supply = <&L16B>;
cam_vdig-supply = <&L2G>;
cam_vio-supply = <&L4B>;
cam_vaf-supply = <&L9B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1200000 1800000 2800000 0>;
rgltr-max-voltage = <2800000 1200000 1800000 2800000 0>;
rgltr-load-current = <300000 1200000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
//is-support-laser = <1>;
//enable_qsc_write_in_advance = <1>;
//qsc_reg_addr = <0x24C0>;
eeprom_slave_addr = <0xA0>;
//qsc_data_size = <2304>;
//write_qsc_addr = <0x5800>;
status = "ok";
};
};
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio7";
function = "gpio";
};
config {
pins = "gpio7";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio7";
function = "gpio";
};
config {
pins = "gpio7";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_mclk1_active_1: cam_sensor_mclk1_active_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk1_suspend_1: cam_sensor_mclk1_suspend_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_active_4: cam_sensor_mclk4_active_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_suspend_4: cam_sensor_mclk4_suspend_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
};

View File

@@ -0,0 +1,19 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "corvette_camera_overlay_common.dtsi"
#include "corvette_camera_main_actuator_pid.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Corvette MTP";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <23814>;
oplus,hw-id = <OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};

View File

@@ -0,0 +1,66 @@
&actuator_triple_main {
pid_version = <0x20>;
pid_register = /bits/ 8 <0x0B 0x82
0x0A 0x00
0x0E 0x8C
0x0F 0xC1
0x08 0x1E
0x09 0x20
0x10 0x35
0x11 0x41
0x12 0x6E
0x13 0x22
0x14 0x14
0x15 0x00
0x16 0x20
0x17 0x3C
0x18 0xAA
0x1A 0x00
0x1B 0x30
0x1C 0xBE
0x1D 0xDC
0x1E 0xE1
0x1F 0x14
0x20 0x21
0x21 0x29
0x22 0x3C
0x23 0xB9
0x24 0x9C
0x25 0x07
0x26 0xC3
0x27 0xBC
0x28 0x7C
0x29 0x0B
0x2A 0x3C
0x2B 0x9A
0x2C 0x84
0x2D 0xC9
0x2E 0x3E
0x2F 0xD6
0x30 0x00
0x31 0x3D
0x32 0x00
0x33 0x28
0x34 0xC0
0x35 0x46
0x36 0xC7
0x3C 0x50
0x3D 0xC5
0x52 0x14
0x53 0x50
0x54 0x14
0x55 0x32
0x50 0x46
0x51 0xD8
0x56 0x23
0x57 0xB4
0x58 0x40
0x59 0x0B
0x5A 0x00
0x5B 0x02
0x5C 0x32
0x5E 0x00
0x5F 0x00
0xC4 0x00
>;
};

View File

@@ -0,0 +1,602 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_triple_rear_wide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_tele: qcom,camera-flash2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_ultrawide: qcom,camera-flash3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.0-enhance4wide", "qcom,csiphy";
};
&cam_csiphy2{
cell-index = <2>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2M {
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
qcom,init-voltage = <1050000>;
};
&L3M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L4M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L5M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L6M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L8B {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L2G {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
&cam_cci0 {
actuator_triple_main: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L8B>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <300000 600000>;
status = "ok";
};
ois_rear: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L8B>;
cam_v_custom2-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <300000 600000 600000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
//ois,name="bu63169";//??
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_main: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L8B>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_main>;
actuator-src = <&actuator_triple_main>;
ois-src = <&ois_rear>;
led-flash-src = <&led_flash_triple_rear_wide>;
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L8B>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x1150>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0xC800>;
status = "ok";
};
eeprom_uw: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//wide camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_uw>;
led-flash-src = <&led_flash_triple_rear_ultrawide>;
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
eeprom_tele: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L4M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000 0>;
rgltr-max-voltage = <2800000 1800000 0>;
rgltr-load-current = <300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
//rear 2M
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <3>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_tele>;
led-flash-src = <&led_flash_triple_rear_tele>;
cam_vana-supply = <&L4M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000 0>;
rgltr-max-voltage = <2800000 1800000 0>;
rgltr-load-current = <300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_aon_front: qcom,eeprom3 {
cell-index = <3>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// front
qcom,cam-sensor3 {
cell-index = <3>;
reg = <0x20>;
compatible = "qcom,cam-i2c-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_aon_front>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&pm8550ve_gpios {
cam_sensor_vana_ultrawide_default: cam_sensor_vana_ultrawide_default {
pins = "gpio3";
function = "normal";
};
};
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_vaf_front_default: cam_sensor_vaf_front_default {
/* VIO LDO */
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_mclk1_active_1: cam_sensor_mclk1_active_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk1_suspend_1: cam_sensor_mclk1_suspend_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_active_4: cam_sensor_mclk4_active_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_suspend_4: cam_sensor_mclk4_suspend_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
};

View File

@@ -0,0 +1,17 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "giulia_camera_overlay_common.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Corvette MTP";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <23851>;
};

View File

@@ -0,0 +1,17 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "giuliaC_camera_overlay_common.dtsi"
/ {
model = "Qualcomm Technologies, Inc. giuliaC MTP";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <23867>;
};

View File

@@ -0,0 +1,636 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_triple_rear_wide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_tele: qcom,camera-flash2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_ultrawide: qcom,camera-flash3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
camera_vana1_main_ldo: gpio-regulator0-02@2 {
compatible = "regulator-fixed";
reg = <0x00 0x00>;
regulator-name = "camera_vana1_main_ldo";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <135>;
enable-active-high;
gpio = <&pm8550vs_c_gpios 3 0>;
pinctrl-names = "default";
pinctrl-0 = <&cam_sensor_vana1_main_default>;
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.0-enhance_giulia", "qcom,csiphy";
};
&cam_csiphy2{
cell-index = <2>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2M {
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1050000>;
qcom,init-voltage = <1050000>;
};
&L3M {
regulator-min-microvolt = <2200000>;
regulator-max-microvolt = <2200000>;
qcom,init-voltage = <2200000>;
};
&L4M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L5M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L6M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L8B {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L2G {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
&cam_cci0 {
actuator_triple_main: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <300000 600000>;
status = "ok";
};
ois_rear: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <300000 600000 600000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
//ois,name="bu63169";//??
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_main: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&camera_vana1_main_ldo>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_main>;
actuator-src = <&actuator_triple_main>;
ois-src = <&ois_rear>;
led-flash-src = <&led_flash_triple_rear_wide>;
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&camera_vana1_main_ldo>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x2210>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0x1000>;
status = "ok";
};
eeprom_uw: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//wide camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_uw>;
led-flash-src = <&led_flash_triple_rear_ultrawide>;
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
eeprom_tele: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L3M>;
cam_vdig-supply = <&L2M>;
cam_vaf-supply = <&L8B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_vaf", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2200000 1000000 2800000 0>;
rgltr-max-voltage = <1800000 2200000 1050000 2800000 0>;
rgltr-load-current = <150000 300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
actuator_triple_tele: qcom,actuator1 {
cell-index = <1>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L8B>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <300000 600000>;
status = "ok";
};
//rear tele
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <3>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_tele>;
actuator-src = <&actuator_triple_tele>;
led-flash-src = <&led_flash_triple_rear_tele>;
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L3M>;
cam_vdig-supply = <&L2M>;
cam_vaf-supply = <&L8B>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana", "cam_vdig", "cam_vaf", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2200000 1000000 2800000 0>;
rgltr-max-voltage = <1800000 2200000 1050000 2800000 0>;
rgltr-load-current = <150000 300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_aon_front: qcom,eeprom3 {
cell-index = <3>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1000000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// front
qcom,cam-sensor3 {
cell-index = <3>;
reg = <0x20>;
compatible = "qcom,cam-i2c-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_aon_front>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <2800000 1000000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&pm8550vs_c_gpios {
cam_sensor_vana1_main_default: cam_sensor_vana1_main_default {
pins = "gpio3";
function = "normal";
input-disable;
output-low;
power-source = <1>; /* 1.8V */
qcom,drive-strength = <2>;
};
};
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_vaf_front_default: cam_sensor_vaf_front_default {
/* VIO LDO */
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_mclk1_active_1: cam_sensor_mclk1_active_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk1_suspend_1: cam_sensor_mclk1_suspend_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_active_4: cam_sensor_mclk4_active_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_suspend_4: cam_sensor_mclk4_suspend_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
};

View File

@@ -0,0 +1,602 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_triple_rear_wide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_tele: qcom,camera-flash2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_ultrawide: qcom,camera-flash3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash3>;
torch-source = <&pm8550_torch0 &pm8550_torch3>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.0-enhance_giulia", "qcom,csiphy";
};
&cam_csiphy2{
cell-index = <2>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2M {
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
qcom,init-voltage = <1050000>;
};
&L3M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L4M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L5M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L6M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L8B {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L2G {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
qcom,init-voltage = <1200000>;
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
&cam_cci0 {
actuator_triple_main: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <300000 600000>;
status = "ok";
};
ois_rear: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <300000 600000 600000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
//ois,name="bu63169";//??
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_main: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_main>;
actuator-src = <&actuator_triple_main>;
ois-src = <&ois_rear>;
led-flash-src = <&led_flash_triple_rear_wide>;
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L5M>;
cam_vaf-supply = <&L7M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 300000 1200000 300000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active_1
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend_1
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x2210>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0x1000>;
status = "ok";
};
eeprom_uw: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//wide camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_uw>;
led-flash-src = <&led_flash_triple_rear_ultrawide>;
cam_vio-supply = <&L5M>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2G>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana",
"cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1200000 0>;
rgltr-max-voltage = <1800000 2800000 1200000 0>;
rgltr-load-current = <300000 300000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
eeprom_tele: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L4M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000 0>;
rgltr-max-voltage = <2800000 1800000 0>;
rgltr-load-current = <300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
//rear 2M
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <3>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_tele>;
led-flash-src = <&led_flash_triple_rear_tele>;
cam_vana-supply = <&L4M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1800000 0>;
rgltr-max-voltage = <2800000 1800000 0>;
rgltr-load-current = <300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk0_active
&cam_sensor_active_rst5>;
pinctrl-1 = <&cam_sensor_mclk0_suspend
&cam_sensor_suspend_rst5>;
gpios = <&tlmm 100 0>,
<&tlmm 110 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK0",
"CAM_RESET5";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK0_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_aon_front: qcom,eeprom3 {
cell-index = <3>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
// front
qcom,cam-sensor3 {
cell-index = <3>;
reg = <0x20>;
compatible = "qcom,cam-i2c-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_aon_front>;
cam_vana-supply = <&L4M>;
cam_vdig-supply = <&L2M>;
cam_vio-supply = <&L5M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <2800000 1050000 1800000 0>;
rgltr-max-voltage = <2800000 1050000 1800000 0>;
rgltr-load-current = <300000 1200000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active_4
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend_4
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
/*&pm8550ve_gpios {
cam_sensor_vana_ultrawide_default: cam_sensor_vana_ultrawide_default {
pins = "gpio3";
function = "normal";
};
};*/
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_vaf_front_default: cam_sensor_vaf_front_default {
/* VIO LDO */
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cam_sensor_mclk1_active_1: cam_sensor_mclk1_active_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk1_suspend_1: cam_sensor_mclk1_suspend_1 {
/* MCLK1 */
mux {
pins = "gpio101";
function = "cam_mclk";
};
config {
pins = "gpio101";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_active_4: cam_sensor_mclk4_active_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-disable; /* No PULL */
drive-strength = <4>; /* 2 MA */
};
};
cam_sensor_mclk4_suspend_4: cam_sensor_mclk4_suspend_4 {
/* MCLK4 */
mux {
pins = "gpio104";
function = "cam_aon_mclk4";
};
config {
pins = "gpio104";
bias-pull-down; /* PULL DOWN */
drive-strength = <4>; /* 2 MA */
};
};
};

View File

@@ -0,0 +1,50 @@
&qupv3_se7_i2c {
#address-cells = <1>;
#size-cells = <0>;
status = "ok";
aw37004@28{
compatible = "qualcomm,aw37004";
reg = <0x28>;
status = "okay";
aw37004_dvdd1:on,aw37004@0{
offset = /bits/ 16 <0x0000>;
regulator-name ="aw37004-dvdd1";
regulator-min-microvolt = <600000>;
regulator-max-microvolt = <1800000>;
min-dropout-voltage = <100000>;
init-voltage = <1050000>;
iout_ua = <650000>;
};
aw37004_dvdd2:on,aw37004@1{
offset = /bits/ 16 <0x0001>;
regulator-name ="aw37004-dvdd2";
regulator-min-microvolt = <600000>;
regulator-max-microvolt = <1800000>;
min-dropout-voltage = <100000>;
init-voltage = <1200000>;
iout_ua = <650000>;
};
aw37004_avdd1:on,aw37004@2{
offset = /bits/ 16 <0x0002>;
regulator-name ="aw37004-avdd1";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <4300000>;
min-dropout-voltage = <200000>;
init-voltage = <2800000>;
iout_ua = <650000>;
};
aw37004_avdd2:on,aw37004@3{
offset = /bits/ 16 <0x0003>;
regulator-name ="aw37004-avdd2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <4300000>;
min-dropout-voltage = <200000>;
init-voltage = <2800000>;
iout_ua = <650000>;
};
};
};

View File

@@ -0,0 +1,19 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "waffle_camera_overlay_common_evb.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP,waffle_evb";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <22825 22877>;
oplus,hw-id = <OPLUS_EVB1 OPLUS_EVB2>;
};

View File

@@ -0,0 +1,19 @@
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/clock/qcom,camcc-pineapple.h>
#include <dt-bindings/interconnect/qcom,pineapple.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/oplus/hw-id.h>
#include "../pineapple-camera-v2.dtsi"
#include "waffle_camera_overlay_common.dtsi"
#include "waffle_camera_main_actuator_pid.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Pineapple MTP";
compatible = "qcom,pineapple-mtp", "qcom,pineapple", "qcom,mtp";
oplus,project-id = <22825 22877>;
oplus,hw-id = <OPLUS_T0 OPLUS_EVT1 OPLUS_EVT2 OPLUS_DVT1 OPLUS_DVT2 OPLUS_PVT1>;
};

View File

@@ -0,0 +1,66 @@
&actuator_triple_main {
pid_version = <0x20>;
pid_register = /bits/ 8 <0x0B 0x82
0x0A 0x00
0x0E 0x8C
0x0F 0xC1
0x08 0x1E
0x09 0x20
0x10 0x35
0x11 0x41
0x12 0x6E
0x13 0x22
0x14 0x14
0x15 0x00
0x16 0x20
0x17 0x3C
0x18 0xAA
0x1A 0x00
0x1B 0x30
0x1C 0xBE
0x1D 0xDC
0x1E 0xE1
0x1F 0x14
0x20 0x21
0x21 0x29
0x22 0x3C
0x23 0xB9
0x24 0x9C
0x25 0x07
0x26 0xC3
0x27 0xBC
0x28 0x7C
0x29 0x0B
0x2A 0x3C
0x2B 0x9A
0x2C 0x84
0x2D 0xC9
0x2E 0x3E
0x2F 0xD6
0x30 0x00
0x31 0x3D
0x32 0x00
0x33 0x28
0x34 0xC0
0x35 0x46
0x36 0xC7
0x3C 0x50
0x3D 0xC5
0x52 0x14
0x53 0x50
0x54 0x14
0x55 0x32
0x50 0x46
0x51 0xD8
0x56 0x23
0x57 0xB4
0x58 0x40
0x59 0x0B
0x5A 0x00
0x5B 0x02
0x5C 0x32
0x5E 0x00
0x5F 0x00
0xC4 0x00
>;
};

View File

@@ -0,0 +1,637 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_triple_rear_wide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_tele: qcom,camera-flash2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_ultrawide: qcom,camera-flash3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.0-enhance4wide", "qcom,csiphy";
};
&cam_csiphy2{
cell-index = <2>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L3M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L4M {
regulator-min-microvolt = <2900000>;
regulator-max-microvolt = <2900000>;
qcom,init-voltage = <2900000>;
};
&L5M {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
qcom,init-voltage = <3000000>;
};
&L6M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7M {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
qcom,init-voltage = <3000000>;
};
&L1N {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2N {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L3N {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L4N {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2900000>;
qcom,init-voltage = <2800000>;
};
&L5N {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3304000>;
qcom,init-voltage = <2800000>;
};
&L6N{
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7N{
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
&cam_cci0 {
actuator_triple_main: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 3000000>;
rgltr-max-voltage = <1800000 3000000>;
rgltr-load-current = <600000 300000>;
reactive-ctrl-support;
// reg_addr addr_type reg_data data_type delay data_mask
reactive-reg-setting = < 0x02 1 0x00 1 2800 0x00 >;
is_update_pid;
actuator,name = "ak7316";
status = "ok";
};
ois_rear: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 3000000 3000000>;
rgltr-max-voltage = <1800000 3000000 3000000>;
rgltr-load-current = <600000 300000 300000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
//ois,name="bu63169";//??
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_main: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-load-current = <300000 600000 1200000 600000 300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_main>;
actuator-src = <&actuator_triple_main>;
ois-src = <&ois_rear>;
led-flash-src = <&led_flash_triple_rear_wide>;
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-load-current = <300000 600000 1200000 600000 300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x1E30>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0xC000>;
status = "ok";
};
actuator_triple_uw: qcom,actuator1 {
cell-index = <1>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
regulator-names = "cam_vio","cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <600000 600000>;
status = "ok";
};
eeprom_uw: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L3N>;
cam_vana-supply = <&L4M>;
cam_v_custom1-supply = <&L6N>;
cam_vaf-supply = <&L7N>;
cam_vdig-supply = <&L2M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana","cam_v_custom1",
"cam_vaf","cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-max-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-load-current = <600000 300000 600000 600000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//wide camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <2>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_uw>;
actuator-src = <&actuator_triple_uw>;
led-flash-src = <&led_flash_triple_rear_ultrawide>;
cam_vio-supply = <&L3N>;
cam_vana-supply = <&L4M>;
cam_v_custom1-supply = <&L6N>;
cam_vaf-supply = <&L7N>;
cam_vdig-supply = <&L2M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana","cam_v_custom1",
"cam_vaf","cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-max-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-load-current = <600000 300000 600000 600000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
ois_tele: qcom,ois@1{
cell-index = <2>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <600000 600000 300000>;
ois_gyro,position=<3>;
ois_gyro,type=<0>;
ois,type=<1>;
ois,name="sem1217s";
ois_module,vendor=<0>;
ois_actuator,vednor=<7>;
ois,fw=<1>;
download,fw=<1>;
ois_eis_function = <6>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
actuator_triple_tele: qcom,actuator2{
cell-index = <2>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <600000 600000 300000>;
actuator,name = "sem1217s";
status = "ok";
};
eeprom_tele: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L1N>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_v_custom1","cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 1200000 600000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk3_active
&cam_sensor_active_rst3>;
pinctrl-1 = <&cam_sensor_mclk3_suspend
&cam_sensor_suspend_rst3>;
gpios = <&tlmm 103 0>,
<&tlmm 109 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
//tele
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
ois-src = <&ois_tele>;
eeprom-src = <&eeprom_tele>;
actuator-src = <&actuator_triple_tele>;
led-flash-src = <&led_flash_triple_rear_tele>;
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L1N>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_v_custom1","cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 1200000 600000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk3_active
&cam_sensor_active_rst3>;
pinctrl-1 = <&cam_sensor_mclk3_suspend
&cam_sensor_suspend_rst3>;
gpios = <&tlmm 103 0>,
<&tlmm 109 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_aon_front: qcom,eeprom3 {
cell-index = <3>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L2N>;
cam_vio-supply = <&L3N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 0>;
rgltr-load-current = <300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor3 {
cell-index = <3>;
reg = <0x20>;
compatible = "qcom,cam-i2c-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_aon_front>;
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L2N>;
cam_vio-supply = <&L3N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <2800000 1100000 1800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 0>;
rgltr-load-current = <300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&pm8550ve_gpios {
cam_sensor_vana_ultrawide_default: cam_sensor_vana_ultrawide_default {
pins = "gpio3";
function = "normal";
};
};
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_vaf_front_default: cam_sensor_vaf_front_default {
/* VIO LDO */
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
};

View File

@@ -0,0 +1,723 @@
#include <dt-bindings/msm-camera.h>
&soc {
led_flash_triple_rear_wide: qcom,camera-flash1 {
cell-index = <1>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_tele: qcom,camera-flash2 {
cell-index = <2>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
led_flash_triple_rear_ultrawide: qcom,camera-flash3 {
cell-index = <3>;
compatible = "qcom,camera-flash";
flash-source = <&pm8550_flash0 &pm8550_flash1>;
torch-source = <&pm8550_torch0 &pm8550_torch1>;
switch-source = <&pm8550_switch2>;
status = "ok";
};
qcom,cam-res-mgr {
compatible = "qcom,cam-res-mgr";
status = "ok";
};
};
&cam_csiphy0{
cell-index = <0>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&cam_csiphy1{
cell-index = <1>;
compatible = "qcom,csiphy-v2.2.0-enhance4wide", "qcom,csiphy";
};
&cam_csiphy2{
cell-index = <2>;
compatible = "qcom,csiphy-v2.2.0-enhance", "qcom,csiphy";
};
&L1M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2M {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L3M {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&L4M {
regulator-min-microvolt = <2900000>;
regulator-max-microvolt = <2900000>;
qcom,init-voltage = <2900000>;
};
&L5M {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
qcom,init-voltage = <3000000>;
};
&L6M {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7M {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
qcom,init-voltage = <3000000>;
};
&L1N {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L2N {
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
qcom,init-voltage = <1100000>;
};
&L3N {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L4N {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2900000>;
qcom,init-voltage = <2800000>;
};
&L5N {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3304000>;
qcom,init-voltage = <2800000>;
};
&L6N{
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
qcom,init-voltage = <1800000>;
};
&L7N{
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,init-voltage = <2800000>;
};
&i2c_freq_400Khz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci1 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_100Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_400Khz_cci0 {
hw-scl-stretch-en = <1>;
};
&i2c_freq_1Mhz_cci0 {
hw-scl-stretch-en = <1>;
};
&cam_cci0 {
pinctrl-0 = <&cci_i2c_scl0_active_evb &cci_i2c_sda0_active_evb>;
pinctrl-2 = <&cci_i2c_scl1_active_evb &cci_i2c_sda1_active_evb>;
actuator_triple_main: qcom,actuator0 {
cell-index = <0>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
regulator-names = "cam_vio", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 3000000>;
rgltr-max-voltage = <1800000 3000000>;
rgltr-load-current = <600000 300000>;
reactive-ctrl-support;
// reg_addr addr_type reg_data data_type delay data_mask
reactive-reg-setting = < 0x02 1 0x00 1 2800 0x00 >;
actuator,name = "ak7316";
status = "ok";
};
ois_rear: qcom,ois@0{
cell-index = <0>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_1>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 3000000 3000000>;
rgltr-max-voltage = <1800000 3000000 3000000>;
rgltr-load-current = <600000 300000 300000>;
ois_gyro,position=<3>;
ois_gyro,type=<3>;
ois,type=<0>;
//ois,name="bu63169";//??
ois_module,vendor=<1>;
ois_actuator,vednor=<2>;
ois,fw=<1>;
status = "ok";
};
eeprom_main: qcom,eeprom0 {
cell-index = <0>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-load-current = <300000 600000 1200000 600000 300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//main camera
qcom,cam-sensor0 {
cell-index = <0>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <1>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_main>;
actuator-src = <&actuator_triple_main>;
ois-src = <&ois_rear>;
led-flash-src = <&led_flash_triple_rear_wide>;
cam_vana-supply = <&L6M>;
cam_v_custom1-supply = <&L3M>;
cam_vdig-supply = <&L1M>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L5M>;
cam_v_custom2-supply = <&L7M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_v_custom1", "cam_vdig", "cam_vio", "cam_vaf", "cam_v_custom2",
"cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-max-voltage = <1800000 2800000 1100000 1800000 3000000 3000000 0>;
rgltr-load-current = <300000 600000 1200000 600000 300000 300000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk1_active
&cam_sensor_active_rst1>;
pinctrl-1 = <&cam_sensor_mclk1_suspend
&cam_sensor_suspend_rst1>;
gpios = <&tlmm 101 0>,
<&tlmm 82 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK1",
"CAM_RESET1";
cci-master = <CCI_MASTER_1>;
clocks = <&camcc CAM_CC_MCLK1_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
enable_qsc_write_in_advance = <1>;
qsc_reg_addr = <0x1E30>;
eeprom_slave_addr = <0xA0>;
qsc_data_size = <3072>;
write_qsc_addr = <0xC000>;
status = "ok";
};
actuator_triple_uw: qcom,actuator1 {
cell-index = <1>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
regulator-names = "cam_vio","cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000>;
rgltr-max-voltage = <1800000 2800000>;
rgltr-load-current = <600000 600000>;
status = "ok";
};
eeprom_uw: qcom,eeprom1 {
cell-index = <1>;
compatible = "qcom,eeprom";
cam_vio-supply = <&L3N>;
cam_vana-supply = <&L4M>;
cam_v_custom1-supply = <&L6N>;
cam_vaf-supply = <&L7N>;
cam_vdig-supply = <&L2M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana","cam_v_custom1",
"cam_vaf","cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-max-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-load-current = <600000 300000 600000 600000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
//wide camera
qcom,cam-sensor1 {
cell-index = <1>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <2>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_uw>;
actuator-src = <&actuator_triple_uw>;
led-flash-src = <&led_flash_triple_rear_ultrawide>;
cam_vio-supply = <&L3N>;
cam_vana-supply = <&L4M>;
cam_v_custom1-supply = <&L6N>;
cam_vaf-supply = <&L7N>;
cam_vdig-supply = <&L2M>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio", "cam_vana","cam_v_custom1",
"cam_vaf","cam_vdig", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-max-voltage = <1800000 2900000 1800000 2800000 1100000 0>;
rgltr-load-current = <600000 300000 600000 600000 1200000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk2_active
&cam_sensor_active_rst2>;
pinctrl-1 = <&cam_sensor_mclk2_suspend
&cam_sensor_suspend_rst2>;
gpios = <&tlmm 102 0>,
<&tlmm 14 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK2",
"CAM_RESET2";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK2_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&cam_cci1 {
pinctrl-0 = <&cci_i2c_scl2_active_evb &cci_i2c_sda2_active_evb>;
ois_tele: qcom,ois@1{
cell-index = <2>;
compatible = "qcom,ois";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <600000 600000 300000>;
ois_gyro,position=<3>;
ois_gyro,type=<0>;
ois,type=<1>;
ois,name="sem1217s";
ois_module,vendor=<0>;
ois_actuator,vednor=<7>;
ois,fw=<1>;
download,fw=<1>;
ois_eis_function = <6>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
actuator_triple_tele: qcom,actuator2{
cell-index = <2>;
compatible = "qcom,actuator";
cci-master = <CCI_MASTER_0>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
regulator-names = "cam_vio", "cam_vaf","cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2800000 2800000>;
rgltr-max-voltage = <1800000 2800000 2800000>;
rgltr-load-current = <600000 600000 300000>;
actuator,name = "sem1217s";
status = "ok";
};
eeprom_tele: qcom,eeprom2 {
cell-index = <2>;
compatible = "qcom,eeprom";
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L1N>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_v_custom1","cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 1200000 600000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk3_active
&cam_sensor_active_rst3>;
pinctrl-1 = <&cam_sensor_mclk3_suspend
&cam_sensor_suspend_rst3>;
gpios = <&tlmm 103 0>,
<&tlmm 109 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
actuator_ois_eeprom_merge = <1>;
status = "ok";
};
//tele
qcom,cam-sensor2 {
cell-index = <2>;
compatible = "qcom,cam-sensor";
csiphy-sd-index = <0>;
sensor-position-roll = <90>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
ois-src = <&ois_tele>;
eeprom-src = <&eeprom_tele>;
actuator-src = <&actuator_triple_tele>;
led-flash-src = <&led_flash_triple_rear_tele>;
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L1N>;
cam_vio-supply = <&L3N>;
cam_vaf-supply = <&L7N>;
cam_v_custom1-supply = <&L5N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_vaf",
"cam_v_custom1","cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 2800000 2800000 0>;
rgltr-load-current = <300000 1200000 600000 600000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk3_active
&cam_sensor_active_rst3>;
pinctrl-1 = <&cam_sensor_mclk3_suspend
&cam_sensor_suspend_rst3>;
gpios = <&tlmm 103 0>,
<&tlmm 109 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK3",
"CAM_RESET3";
cci-master = <CCI_MASTER_0>;
clocks = <&camcc CAM_CC_MCLK3_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&qupv3_se9_i2c {
status = "ok";
qcom,clk-freq-out = <1000000>;
eeprom_aon_front: qcom,eeprom3 {
cell-index = <3>;
reg = <0x54>;
compatible = "qcom,cam-i2c-eeprom";
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L2N>;
cam_vio-supply = <&L3N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <2800000 1100000 1800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 0>;
rgltr-load-current = <300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
qcom,cam-sensor3 {
cell-index = <3>;
reg = <0x20>;
compatible = "qcom,cam-i2c-sensor";
csiphy-sd-index = <4>;
sensor-position-roll = <270>;
sensor-position-pitch = <0>;
sensor-position-yaw = <180>;
eeprom-src = <&eeprom_aon_front>;
cam_vana-supply = <&L4N>;
cam_vdig-supply = <&L2N>;
cam_vio-supply = <&L3N>;
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vana", "cam_vdig", "cam_vio", "cam_clk";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <2800000 1100000 1800000 0>;
rgltr-max-voltage = <2800000 1100000 1800000 0>;
rgltr-load-current = <300000 1200000 600000 0>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
pinctrl-0 = <&cam_sensor_mclk4_active
&cam_sensor_active_rst4>;
pinctrl-1 = <&cam_sensor_mclk4_suspend
&cam_sensor_suspend_rst4>;
gpios = <&tlmm 104 0>,
<&tlmm 7 0>;
gpio-reset = <1>;
gpio-req-tbl-num = <0 1>;
gpio-req-tbl-flags = <1 0>;
gpio-req-tbl-label = "CAMIF_MCLK4",
"CAM_RESET4";
clocks = <&camcc CAM_CC_MCLK4_CLK>;
clock-names = "cam_clk";
clock-cntl-level = "nominal";
clock-rates = <19200000>;
status = "ok";
};
};
&pm8550ve_gpios {
cam_sensor_vana_ultrawide_default: cam_sensor_vana_ultrawide_default {
pins = "gpio3";
function = "normal";
};
};
&cam_sensor_active_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
&cam_sensor_suspend_rst1 {
mux {
pins = "gpio82";
function = "gpio";
};
config {
pins = "gpio82";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
};
};
&cam_sensor_active_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
qcom,apps;
};
};
&cam_sensor_suspend_rst2 {
mux {
pins = "gpio14";
function = "gpio";
};
config {
pins = "gpio14";
bias-pull-down; /* PULL DOWN */
drive-strength = <2>; /* 2 MA */
output-low;
qcom,remote;
};
};
&tlmm {
cam_sensor_vaf_front_default: cam_sensor_vaf_front_default {
/* VIO LDO */
mux {
pins = "gpio97";
function = "gpio";
};
config {
pins = "gpio97";
bias-disable; /* No PULL */
drive-strength = <2>; /* 2 MA */
};
};
cci_i2c_sda0_active_evb: cci_i2c_sda0_active_evb {
mux {
/* CLK, DATA */
pins = "gpio113";
function = "cci_i2c_sda0";
};
config {
pins = "gpio113";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
cci_i2c_scl0_active_evb: cci_i2c_scl0_active_evb {
mux {
/* CLK, DATA */
pins = "gpio114";
function = "cci_i2c_scl0";
};
config {
pins = "gpio114";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
cci_i2c_sda1_active_evb: cci_i2c_sda1_active_evb {
mux {
/* CLK, DATA */
pins = "gpio115";
function = "cci_i2c_sda1";
};
config {
pins = "gpio115";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
cci_i2c_scl1_active_evb: cci_i2c_scl1_active_evb {
mux {
/* CLK, DATA */
pins = "gpio116";
function = "cci_i2c_scl1";
};
config {
pins = "gpio116";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
cci_i2c_sda2_active_evb: cci_i2c_sda2_active_evb {
mux {
/* CLK, DATA */
pins = "gpio117";
function = "cci_i2c_sda2";
};
config {
pins = "gpio117";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
cci_i2c_scl2_active_evb: cci_i2c_scl2_active_evb {
mux {
/* CLK, DATA */
pins = "gpio118";
function = "cci_i2c_scl2";
};
config {
pins = "gpio118";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
};
};
};

View File

@@ -66,8 +66,8 @@
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio","cam_vaf", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2960000 0>;
rgltr-max-voltage = <1800000 2960000 0>;
rgltr-min-voltage = <2960000 2960000 0>;
rgltr-max-voltage = <2960000 2960000 0>;
rgltr-load-current = <4000 119000 0>;
status = "ok";
};
@@ -84,8 +84,8 @@
regulator-names = "cam_vio", "cam_vdig",
"cam_clk", "cam_vana", "cam_v_custom1", "cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <1800000 1352000 0 2800000 3304000 3600000>;
rgltr-min-voltage = <2960000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <2960000 1352000 0 2800000 3304000 3600000>;
rgltr-load-current = <155000 680000 0 50000 30000 2500000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -120,8 +120,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana",
"cam_vaf", "cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-min-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-max-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-load-current = <4000 913000 0 91400 119000 63100>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -161,8 +161,8 @@
regulator-names = "cam_vio", "cam_vdig",
"cam_clk", "cam_vana", "cam_v_custom1", "cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <1800000 1352000 0 2800000 3304000 3600000>;
rgltr-min-voltage = <2960000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <2960000 1352000 0 2800000 3304000 3600000>;
rgltr-load-current = <155000 680000 0 50000 30000 2500000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -205,8 +205,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana",
"cam_vaf", "cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-min-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-max-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-load-current = <4000 913000 0 91400 119000 63100>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -256,8 +256,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk",
"cam_vana", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <1800000 1056000 0 2800000 2960000>;
rgltr-min-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-load-current = <4000 260700 0 67700 103000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -298,8 +298,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk",
"cam_vana", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <1800000 1056000 0 2800000 2960000>;
rgltr-min-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-load-current = <4000 260700 0 67700 103000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -337,8 +337,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana", "cam_v_custom1",
"cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <1800000 1352000 0 2800000 3304000 3600000>;
rgltr-min-voltage = <2960000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <2960000 1352000 0 2800000 3304000 3600000>;
rgltr-load-current = <155000 680000 0 50000 30000 2500000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -378,8 +378,8 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana", "cam_v_custom1",
"cam_v_custom2";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <1800000 1352000 0 2800000 3304000 3600000>;
rgltr-min-voltage = <2960000 1200000 0 2800000 3304000 3600000>;
rgltr-max-voltage = <2960000 1352000 0 2800000 3304000 3600000>;
rgltr-load-current = <155000 680000 0 50000 30000 2500000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -435,8 +435,8 @@
regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana",
"cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1056000 0 2800000 1800000>;
rgltr-max-voltage = <1800000 1056000 0 2800000 1800000>;
rgltr-min-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-load-current = <6000 454000 0 77900 29400>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -471,8 +471,8 @@
regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana",
"cam_v_custom1", "cam_vaf";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1104000 0 2800000 1800000 2960000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 1800000 2960000>;
rgltr-min-voltage = <2960000 1104000 0 2800000 2960000 2960000>;
rgltr-max-voltage = <2960000 1104000 0 2800000 2960000 2960000>;
rgltr-load-current = <6000 644000 0 77900 82900 103000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -512,8 +512,8 @@
"cam_v_custom1";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM1>;
rgltr-min-voltage = <1800000 1056000 0 2800000 1800000>;
rgltr-max-voltage = <1800000 1056000 0 2800000 1800000>;
rgltr-min-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-max-voltage = <2960000 1056000 0 2800000 2960000>;
rgltr-load-current = <6000 454000 0 77900 29400>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -561,8 +561,8 @@
"cam_v_custom1", "cam_vaf";
rgltr-cntrl-support;
aon-camera-id = <AON_CAM2>;
rgltr-min-voltage = <1800000 1104000 0 2800000 1800000 2960000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 1800000 2960000>;
rgltr-min-voltage = <2960000 1104000 0 2800000 2960000 2960000>;
rgltr-max-voltage = <2960000 1104000 0 2800000 2960000 2960000>;
rgltr-load-current = <6000 644000 0 77900 82900 103000>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -624,8 +624,9 @@
regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana",
"cam_vaf", "cam_v_custom1";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
i3c-i2c-target;
rgltr-min-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-max-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-load-current = <4000 913000 0 91400 119000 63100>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";
@@ -656,8 +657,8 @@
cam_clk-supply = <&cam_cc_titan_top_gdsc>;
regulator-names = "cam_vio" ,"cam_vaf", "cam_clk";
rgltr-cntrl-support;
rgltr-min-voltage = <1800000 2960000 0>;
rgltr-max-voltage = <1800000 2960000 0>;
rgltr-min-voltage = <2960000 2960000 0>;
rgltr-max-voltage = <2960000 2960000 0>;
rgltr-load-current = <4000 119000 0>;
status = "ok";
};
@@ -686,8 +687,8 @@
"cam_vaf", "cam_v_custom1";
rgltr-cntrl-support;
i3c-target;
rgltr-min-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 1800000>;
rgltr-min-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-max-voltage = <2960000 1104000 0 1800000 2960000 3304000>;
rgltr-load-current = <4000 913000 0 91400 119000 63100>;
gpio-no-mux = <0>;
pinctrl-names = "cam_default", "cam_suspend";

View File

@@ -13,7 +13,7 @@
pins = "gpio113";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -42,7 +42,7 @@
pins = "gpio114";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -71,7 +71,7 @@
pins = "gpio115";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -100,7 +100,7 @@
pins = "gpio116";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -129,7 +129,7 @@
pins = "gpio117";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -158,7 +158,7 @@
pins = "gpio118";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -186,7 +186,7 @@
pins = "gpio12";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -213,7 +213,7 @@
pins = "gpio13";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -241,7 +241,7 @@
pins = "gpio112";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -270,7 +270,7 @@
pins = "gpio153";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -299,7 +299,7 @@
pins = "gpio119";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -328,7 +328,7 @@
pins = "gpio120";
bias-pull-up; /* PULL UP*/
drive-strength = <2>; /* 2 MA */
qcom,i2c_pull;
//qcom,i2c_pull;
};
};
@@ -847,6 +847,33 @@
qcom,remote;
};
};
qupv3_hub_i2c4_sda_active: qupv3_hub_i2c4_sda_active {
mux {
pins = "gpio72";
function = "i2chub0_se4_l0";
};
config {
pins = "gpio72";
drive-strength = <2>;
//bias-pull-up;
};
};
qupv3_hub_i2c4_scl_active: qupv3_hub_i2c4_scl_active {
mux {
pins = "gpio73";
function = "i2chub0_se4_l1";
};
config {
pins = "gpio73";
drive-strength = <2>;
//bias-pull-up;
};
};
};
&soc {