diff --git a/config/sun.mk b/config/sun.mk index 43a8a45f..022fef7e 100644 --- a/config/sun.mk +++ b/config/sun.mk @@ -2,6 +2,7 @@ dtbo-$(CONFIG_ARCH_SUN) := sun-camera.dtbo dtbo-$(CONFIG_ARCH_SUN) += sun-camera-sensor-mtp.dtbo \ sun-camera-sensor-rumi.dtbo \ sun-camera-sensor-cdp.dtbo \ + sun-camera-sensor-hdk.dtbo \ sun-camera-sensor-qrd.dtbo dtbo-$(CONFIG_ARCH_TUNA) += tuna-camera.dtbo diff --git a/sun-camera-sensor-hdk.dts b/sun-camera-sensor-hdk.dts new file mode 100644 index 00000000..2baad661 --- /dev/null +++ b/sun-camera-sensor-hdk.dts @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +/dts-v1/; +/plugin/; + +#include +#include +#include +#include +#include +#include + +#include "sun-camera-sensor-hdk.dtsi" +/ { + model = "Qualcomm Technologies, Inc. Sun QRD"; + compatible = "qcom,sun-qrd", "qcom,sun", "qcom,qrd"; + qcom,msm-id = <618 0x10000>, <618 0x20000>, <639 0x10000>, <639 0x20000>, + <0x100026a 0x10000>, <0x100026a 0x20000>, + <0x100027f 0x10000>, <0x100027f 0x20000>; + qcom,board-id = <0x1001F 0>; +}; diff --git a/sun-camera-sensor-hdk.dtsi b/sun-camera-sensor-hdk.dtsi new file mode 100644 index 00000000..76fa011a --- /dev/null +++ b/sun-camera-sensor-hdk.dtsi @@ -0,0 +1,782 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +#include +&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"; + }; + + led_flash_asc_rear: qcom,camera-flash4 { + cell-index = <4>; + compatible = "qcom,camera-flash"; + flash-source = <&pm8550_flash0 &pm8550_flash1>; + torch-source = <&pm8550_torch0 &pm8550_torch1>; + switch-source = <&pm8550_switch2>; + status = "ok"; + }; + + led_flash_rear_aux: qcom,camera-flash5 { + cell-index = <5>; + 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_cci0 { + + actuator_triple_wide: qcom,actuator2 { + cell-index = <2>; + compatible = "qcom,actuator"; + cci-master = ; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vaf"; + rgltr-cntrl-support; + rgltr-min-voltage = <2960000>; + rgltr-max-voltage = <2960000>; + rgltr-load-current = <119000>; + status = "ok"; + }; + + actuator_rear_aux: qcom,actuator8 { + cell-index = <8>; + compatible = "qcom,actuator"; + cci-master = ; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vaf"; + rgltr-cntrl-support; + rgltr-min-voltage = <2960000>; + rgltr-max-voltage = <2960000>; + rgltr-load-current = <100000>; + status = "ok"; + }; + + ois_wide: qcom,ois0 { + cell-index = <2>; + compatible = "qcom,ois"; + cci-master = ; + cam_vio-supply = <&L5M>; + cam_vaf-supply = <&L7M>; + 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-load-current = <4000 220000 0>; + status = "ok"; + }; + + eeprom_tof1: qcom,eeprom7 { + cell-index = <7>; + compatible = "qcom,eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&S7I>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L5N>; + cam_v_custom1-supply = <&L7N>; + cam_v_custom2-supply = <&DBO3>; + regulator-names = "cam_vio", "cam_vdig", + "cam_clk", "cam_vana", "cam_v_custom1", "cam_v_custom2"; + rgltr-cntrl-support; + rgltr-min-voltage = <1800000 1256000 0 2800000 3304000 3600000>; + rgltr-max-voltage = <1800000 1340000 0 2800000 3304000 3600000>; + rgltr-load-current = <155000 680000 0 50000 30000 2500000>; + 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 89 0>, + <&tlmm 13 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK0_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + eeprom_rear_aux: qcom,eeprom8 { + cell-index = <8>; + compatible = "qcom,eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_vaf-supply = <&L7M>; + cam_v_custom1-supply = <&L6M>; + 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 2800000>; + rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 2800000>; + rgltr-load-current = <6400 850000 0 114500 100000 140000>; + 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 89 0>, + <&tlmm 13 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK0_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + eeprom_wide: qcom,eeprom2 { + cell-index = <2>; + compatible = "qcom,eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L6M>; + cam_vaf-supply = <&L7M>; + cam_v_custom1-supply = <&L3N>; + 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-load-current = <4000 913000 0 91400 119000 63100>; + 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 90 0>, + <&tlmm 15 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK1_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor7 { + cell-index = <7>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <0>; + eeprom-src = <&eeprom_tof1>; + sensor-position-roll = <270>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&S7I>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L5N>; + cam_v_custom1-supply = <&L7N>; + cam_v_custom2-supply = <&DBO3>; + regulator-names = "cam_vio", "cam_vdig", + "cam_clk", "cam_vana", "cam_v_custom1", "cam_v_custom2"; + rgltr-cntrl-support; + rgltr-min-voltage = <1800000 1256000 0 2800000 3304000 3600000>; + rgltr-max-voltage = <1800000 1340000 0 2800000 3304000 3600000>; + rgltr-load-current = <155000 680000 0 50000 30000 2500000>; + 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 89 0>, + <&tlmm 13 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK0_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor2 { + cell-index = <2>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <1>; + sensor-position-roll = <270>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + eeprom-src = <&eeprom_wide>; + ois-src = <&ois_wide>; + actuator-src = <&actuator_triple_wide>; + led-flash-src = <&led_flash_triple_rear_wide>; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L6M>; + cam_vaf-supply = <&L7M>; + cam_v_custom1-supply = <&L3N>; + 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-load-current = <4000 913000 0 91400 119000 63100>; + 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 90 0>, + <&tlmm 15 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK1_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor8 { + cell-index = <8>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <0>; + sensor-position-roll = <90>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + eeprom-src = <&eeprom_rear_aux>; + actuator-src = <&actuator_rear_aux>; + led-flash-src = <&led_flash_rear_aux>; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_vaf-supply = <&L7M>; + cam_v_custom1-supply = <&L6M>; + 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 2800000>; + rgltr-max-voltage = <1800000 1104000 0 2800000 2960000 2800000>; + rgltr-load-current = <6400 850000 0 114500 100000 140000>; + 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 89 0>, + <&tlmm 13 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK0_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + +}; + +&cam_cci1 { + actuator_triple_tele: qcom,actuator3{ + cell-index = <3>; + compatible = "qcom,actuator"; + cci-master = ; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vaf"; + rgltr-cntrl-support; + rgltr-min-voltage = <2960000>; + rgltr-max-voltage = <2960000>; + rgltr-load-current = <100000>; + status = "ok"; + }; + + eeprom_tele: qcom,eeprom3 { + cell-index = <3>; + compatible = "qcom,eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L2M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L4M>; + cam_vaf-supply = <&L7M>; + 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-load-current = <4000 260700 0 67700 100000>; + 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 92 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK3_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor3 { + cell-index = <3>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <3>; + sensor-position-roll = <270>; + 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_vdig-supply = <&L2M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L4M>; + cam_vaf-supply = <&L7M>; + 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-load-current = <4000 260700 0 67700 100000>; + 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 92 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 = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK3_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + +}; + +&cam_cci2 { + eeprom_tof2: qcom,eeprom5 { + cell-index = <5>; + compatible = "qcom,eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&S7I>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L5N>; + cam_v_custom1-supply = <&L7N>; + cam_v_custom2-supply = <&DBO3>; + regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana", + "cam_v_custom1", "cam_v_custom2"; + rgltr-cntrl-support; + rgltr-min-voltage = <1800000 1256000 0 2800000 3304000 3600000>; + rgltr-max-voltage = <1800000 1340000 0 2800000 3304000 3600000>; + rgltr-load-current = <155000 680000 0 50000 30000 2500000>; + gpio-no-mux = <0>; + pinctrl-names = "cam_default", "cam_suspend"; + pinctrl-0 = <&cam_sensor_mclk5_active + &cam_sensor_active_rst5>; + pinctrl-1 = <&cam_sensor_mclk5_suspend + &cam_sensor_suspend_rst5>; + gpios = <&tlmm 94 0>, + <&tlmm 110 0>; + gpio-reset = <1>; + gpio-req-tbl-num = <0 1>; + gpio-req-tbl-flags = <1 0>; + gpio-req-tbl-label = "CAMIF_MCLK5", + "CAM_RESET5"; + cci-master = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK5_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor5 { + cell-index = <5>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <5>; + sensor-position-roll = <90>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + eeprom-src = <&eeprom_tof2>; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&S7I>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L5N>; + cam_v_custom1-supply = <&L7N>; + cam_v_custom2-supply = <&DBO3>; + regulator-names = "cam_vio", "cam_vdig", "cam_clk", "cam_vana", + "cam_v_custom1", "cam_v_custom2"; + rgltr-cntrl-support; + rgltr-min-voltage = <1800000 1256000 0 2800000 3304000 3600000>; + rgltr-max-voltage = <1800000 1340000 0 2800000 3304000 3600000>; + rgltr-load-current = <155000 680000 0 50000 30000 2500000>; + gpio-no-mux = <0>; + pinctrl-names = "cam_default", "cam_suspend"; + pinctrl-0 = <&cam_sensor_mclk5_active + &cam_sensor_active_rst5>; + pinctrl-1 = <&cam_sensor_mclk5_suspend + &cam_sensor_suspend_rst5>; + gpios = <&tlmm 94 0>, + <&tlmm 110 0>; + gpio-reset = <1>; + gpio-req-tbl-num = <0 1>; + gpio-req-tbl-flags = <1 0>; + gpio-req-tbl-label = "CAMIF_MCLK5", + "CAM_RESET5"; + cci-master = ; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK5_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; +}; + + +&qupv3_se9_i2c { + status = "ok"; + qcom,high-perf; + qcom,clk-freq-out = <1000000>; + qcom,pm-ctrl-client; + + eeprom_asc_front: qcom,eeprom1 { + cell-index = <4>; + reg = <0x58>; + compatible = "qcom,cam-i2c-eeprom"; + cam_vio-supply = <&L1I>; + cam_vdig-supply = <&L2N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L6N>; + regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana"; + rgltr-cntrl-support; + rgltr-min-voltage = <1200000 1104000 0 2800000>; + rgltr-max-voltage = <1200000 1104000 0 2800000>; + rgltr-load-current = <3000 283000 0 50000>; + 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 93 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 = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK4_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor1 { + cell-index = <4>; + reg = <0x22>; + compatible = "qcom,cam-i2c-sensor"; + csiphy-sd-index = <4>; + sensor-position-roll = <90>; + sensor-position-pitch = <0>; + sensor-position-yaw = <0>; + eeprom-src = <&eeprom_asc_front>; + cam_vio-supply = <&L1I>; + cam_vdig-supply = <&L2N>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L6N>; + regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana"; + rgltr-cntrl-support; + aon-camera-id = ; + rgltr-min-voltage = <1200000 1104000 0 2800000>; + rgltr-max-voltage = <1200000 1104000 0 2800000>; + rgltr-load-current = <3000 283000 0 50000>; + 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 93 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 = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK4_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; +}; + +&i3c3 { + se-clock-frequency = <64000000>; + i3c-scl-hz = <8300000>; + dfs-index = <0>; + i2c-scl-hz = <1000000>; + qcom,pm-ctrl-client; + status = "ok"; + + actuator_UW_asc_rear: qcom,actuator@c { + cell-index = <1>; + compatible = "qcom,cam-i2c-actuator"; + reg = <0x0C 0x00 0x10>; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vaf"; + rgltr-cntrl-support; + rgltr-min-voltage = <2960000>; + rgltr-max-voltage = <2960000>; + rgltr-load-current = <100000>; + status = "ok"; + }; + + eeprom_asc_rear: qcom,eeprom@50 { + cell-index = <6>; + reg = <0x50 0x00 0x10>; + compatible = "qcom,cam-i2c-eeprom"; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_v_custom1-supply = <&L4N>; + cam_vaf-supply = <&L7M>; + 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-load-current = <6000 454000 0 77900 29400 100000>; + 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 91 0>, + <&tlmm 3 0>; + gpio-reset = <1>; + gpio-req-tbl-num = <0 1>; + gpio-req-tbl-flags = <1 0>; + gpio-req-tbl-label = "CAMIF_MCLK2", + "CAM_RESET2"; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK2_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + eeprom_i3c_UltraWide: qcom,eeprom@52 { + cell-index = <1>; + reg = <0x52 0x00 0x10>; + compatible = "qcom,cam-i2c-eeprom"; + cam_vio-supply = <&L1I>; + cam_vdig-supply = <&L1M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana", + "cam_vaf"; + rgltr-cntrl-support; + rgltr-min-voltage = <1200000 1104000 0 2800000 2960000>; + rgltr-max-voltage = <1200000 1104000 0 2800000 2960000>; + rgltr-load-current = <3000 355000 0 95000 100000>; + 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 91 0>, + <&tlmm 3 0>; + gpio-reset = <1>; + gpio-req-tbl-num = <0 1>; + gpio-req-tbl-flags = <1 0>; + gpio-req-tbl-label = "CAMIF_MCLK2", + "CAM_RESET2"; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK2_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor@33,36008580000 { + cell-index = <1>; + reg = <0x33 0x360 0x08580000>; + assigned-address = <0xa>; + compatible = "qcom,cam-sensor"; + csiphy-sd-index = <2>; + sensor-position-roll = <270>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + eeprom-src = <&eeprom_i3c_UltraWide>; + actuator-src = <&actuator_UW_asc_rear>; + led-flash-src = <&led_flash_triple_rear_ultrawide>; + cam_vio-supply = <&L1I>; + cam_vdig-supply = <&L1M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana", + "cam_vaf"; + rgltr-cntrl-support; + aon-camera-id = ; + i3c-target; + rgltr-min-voltage = <1200000 1104000 0 2800000 2960000>; + rgltr-max-voltage = <1200000 1104000 0 2800000 2960000>; + rgltr-load-current = <3000 355000 0 95000 100000>; + gpio-no-mux = <0>; + pinctrl-names = "cam_default", "cam_suspend"; + pinctrl-0 = <&cam_sensor_mclk2_active + &cam_sensor_active_rst2 + &cam_sensor_i3cSelect_active>; + pinctrl-1 = <&cam_sensor_mclk2_suspend + &cam_sensor_suspend_rst2 + &cam_sensor_i3cSelect_suspend>; + gpios = <&tlmm 91 0>, + <&tlmm 3 0>, + <&tlmm 6 0>; + gpio-reset = <1>; + gpio-custom1 = <2>; + gpio-req-tbl-num = <0 1 2>; + gpio-req-tbl-flags = <1 0 0>; + gpio-req-tbl-label = "CAMIF_MCLK2", + "CAM_RESET2", + "CAM_I3CSELECT"; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK2_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; + + qcom,cam-sensor@10 { + cell-index = <6>; + reg = <0x10 0x00 0x10>; + compatible = "qcom,cam-i2c-sensor"; + csiphy-sd-index = <2>; + sensor-position-roll = <90>; + sensor-position-pitch = <0>; + sensor-position-yaw = <180>; + eeprom-src = <&eeprom_asc_rear>; + actuator-src = <&actuator_UW_asc_rear>; + led-flash-src = <&led_flash_asc_rear>; + cam_vio-supply = <&L5M>; + cam_vdig-supply = <&L1M>; + cam_clk-supply = <&cam_cc_titan_top_gdsc>; + cam_vana-supply = <&L3M>; + cam_v_custom1-supply = <&L4N>; + cam_vaf-supply = <&L7M>; + regulator-names = "cam_vio", "cam_vdig","cam_clk", "cam_vana", + "cam_v_custom1", "cam_vaf"; + rgltr-cntrl-support; + aon-camera-id = ; + rgltr-min-voltage = <1800000 1104000 0 2800000 1800000 2960000>; + rgltr-max-voltage = <1800000 1104000 0 2800000 1800000 2960000>; + rgltr-load-current = <6000 454000 0 77900 29400 100000>; + gpio-no-mux = <0>; + pinctrl-names = "cam_default", "cam_suspend"; + pinctrl-0 = <&cam_sensor_mclk2_active + &cam_sensor_active_rst2 + &cam_sensor_ponv_rear_active>; + pinctrl-1 = <&cam_sensor_mclk2_suspend + &cam_sensor_suspend_rst2 + &cam_sensor_ponv_rear_suspend>; + gpios = <&tlmm 91 0>, + <&tlmm 3 0>, + <&tlmm 2 0>; + gpio-reset = <1>; + gpio-standby = <2>; + gpio-req-tbl-num = <0 1 2>; + gpio-req-tbl-flags = <1 0 0>; + gpio-req-tbl-label = "CAMIF_MCLK2", + "CAM_RESET2", + "CAM_STANDBY"; + clocks = <&cambistmclkcc CAM_BIST_MCLK_CC_MCLK2_CLK>; + clock-names = "cam_clk"; + clock-cntl-level = "nominal"; + clock-rates = <24000000>; + status = "ok"; + }; +}; diff --git a/sun-camera-sensor-qrd.dts b/sun-camera-sensor-qrd.dts index 7a25dd6f..2c5a52f9 100644 --- a/sun-camera-sensor-qrd.dts +++ b/sun-camera-sensor-qrd.dts @@ -20,5 +20,5 @@ qcom,msm-id = <618 0x10000>, <618 0x20000>, <639 0x10000>, <639 0x20000>, <0x100026a 0x10000>, <0x100026a 0x20000>, <0x100027f 0x10000>, <0x100027f 0x20000>; - qcom,board-id = <0x1000B 0>, <0x1001F 0>, <0x2000B 0>, <0x3000B 0>; + qcom,board-id = <0x1000B 0>, <0x2000B 0>, <0x3000B 0>; };