diff options
| author | Wei Ding <weiding@codeaurora.org> | 2017-02-24 21:35:09 +0800 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-03-09 05:54:24 -0800 |
| commit | 4323c16a694c908336bfbeaef4209a556cfee80a (patch) | |
| tree | 73845972199c7033ec0367555ee2058733896dc8 | |
| parent | 9bf700385d74d738a0f6d982886ed8a51ae8fbb9 (diff) | |
ARM: dts: msm: Add support TOF sensor on msm8998
1. Change the power supply to fixed regulator of TOF sensor.
2. Add IRQ gpio for TOF sensor on msm8998.
3. Add TOF entry on msm8998 CDP device.
CRs-Fixed: 2013683
Change-Id: Id518d6f6d9a2c9d34bc054371e6d9be103c02021
Signed-off-by: Wei Ding <weiding@codeaurora.org>
6 files changed, 75 insertions, 54 deletions
diff --git a/arch/arm/boot/dts/qcom/msm8998-camera-sensor-cdp.dtsi b/arch/arm/boot/dts/qcom/msm8998-camera-sensor-cdp.dtsi index e7a61f42dff1..707eca4e9ddd 100644 --- a/arch/arm/boot/dts/qcom/msm8998-camera-sensor-cdp.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-camera-sensor-cdp.dtsi @@ -29,6 +29,16 @@ qcom,switch-source = <&pmi8998_switch1>; status = "ok"; }; + + actuator_regulator: gpio-regulator@0 { + compatible = "regulator-fixed"; + regulator-name = "rear_vana_regulator"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + enable-active-high; + gpio = <&tlmm 27 0>; + vin-supply = <&pmi8998_bob>; + }; }; &cci { @@ -37,14 +47,11 @@ reg = <0x0>; compatible = "qcom,actuator"; qcom,cci-master = <0>; - gpios = <&tlmm 27 0>; - qcom,gpio-vaf = <0>; - qcom,gpio-req-tbl-num = <0>; - qcom,gpio-req-tbl-flags = <0>; - qcom,gpio-req-tbl-label = "CAM_VAF"; - pinctrl-names = "cam_default", "cam_suspend"; - pinctrl-0 = <&cam_actuator_vaf_active>; - pinctrl-1 = <&cam_actuator_vaf_suspend>; + cam_vaf-supply = <&actuator_regulator>; + qcom,cam-vreg-name = "cam_vaf"; + qcom,cam-vreg-min-voltage = <2800000>; + qcom,cam-vreg-max-voltage = <2800000>; + qcom,cam-vreg-op-mode = <0>; }; actuator1: qcom,actuator@1 { @@ -52,14 +59,11 @@ reg = <0x1>; compatible = "qcom,actuator"; qcom,cci-master = <1>; - gpios = <&tlmm 27 0>; - qcom,gpio-vaf = <0>; - qcom,gpio-req-tbl-num = <0>; - qcom,gpio-req-tbl-flags = <0>; - qcom,gpio-req-tbl-label = "CAM_VAF"; - pinctrl-names = "cam_default", "cam_suspend"; - pinctrl-0 = <&cam_actuator_vaf_active>; - pinctrl-1 = <&cam_actuator_vaf_suspend>; + cam_vaf-supply = <&actuator_regulator>; + qcom,cam-vreg-name = "cam_vaf"; + qcom,cam-vreg-min-voltage = <2800000>; + qcom,cam-vreg-max-voltage = <2800000>; + qcom,cam-vreg-op-mode = <0>; }; ois0: qcom,ois@0 { @@ -78,24 +82,23 @@ status = "disabled"; }; - tof0:qcom,tof@0{ + tof0: qcom,tof@0 { cell-index = <0>; reg = <0x29>; compatible = "st,stmvl53l0"; qcom,cci-master = <0>; cam_cci-supply = <&pm8998_lvs1>; - cam_laser-supply = <&pmi8998_bob>; + cam_laser-supply = <&actuator_regulator>; qcom,cam-vreg-name = "cam_cci", "cam_laser"; qcom,cam-vreg-min-voltage = <0 0>; - qcom,cam-vreg-max-voltage = <0 3600000>; + qcom,cam-vreg-max-voltage = <0 2800000>; pinctrl-names = "cam_default", "cam_suspend"; pinctrl-0 = <&cam_tof_active>; pinctrl-1 = <&cam_tof_suspend>; - gpios = <&tlmm 27 0>, - <&tlmm 126 0>; - qcom,gpio-req-tbl-num = <0 1>; - qcom,gpio-req-tbl-flags = <0 0>; - qcom,gpio-req-tbl-label = "CAM_TOF", "CAM_CE"; + gpios = <&tlmm 126 0>; + qcom,gpio-req-tbl-num = <0>; + qcom,gpio-req-tbl-flags = <0>; + qcom,gpio-req-tbl-label = "CAM_CE"; }; eeprom0: qcom,eeprom@0 { diff --git a/arch/arm/boot/dts/qcom/msm8998-camera-sensor-mtp.dtsi b/arch/arm/boot/dts/qcom/msm8998-camera-sensor-mtp.dtsi index c5384eaf17a1..17dcfb560b73 100644 --- a/arch/arm/boot/dts/qcom/msm8998-camera-sensor-mtp.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-camera-sensor-mtp.dtsi @@ -29,6 +29,16 @@ qcom,switch-source = <&pmi8998_switch1>; status = "ok"; }; + + actuator_regulator: gpio-regulator@0 { + compatible = "regulator-fixed"; + regulator-name = "rear_vana_regulator"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + enable-active-high; + gpio = <&tlmm 27 0>; + vin-supply = <&pmi8998_bob>; + }; }; &cci { @@ -37,14 +47,11 @@ reg = <0x0>; compatible = "qcom,actuator"; qcom,cci-master = <0>; - gpios = <&tlmm 27 0>; - qcom,gpio-vaf = <0>; - qcom,gpio-req-tbl-num = <0>; - qcom,gpio-req-tbl-flags = <0>; - qcom,gpio-req-tbl-label = "CAM_VAF"; - pinctrl-names = "cam_default", "cam_suspend"; - pinctrl-0 = <&cam_actuator_vaf_active>; - pinctrl-1 = <&cam_actuator_vaf_suspend>; + cam_vaf-supply = <&actuator_regulator>; + qcom,cam-vreg-name = "cam_vaf"; + qcom,cam-vreg-min-voltage = <2800000>; + qcom,cam-vreg-max-voltage = <2800000>; + qcom,cam-vreg-op-mode = <0>; }; actuator1: qcom,actuator@1 { @@ -52,33 +59,32 @@ reg = <0x1>; compatible = "qcom,actuator"; qcom,cci-master = <1>; - gpios = <&tlmm 27 0>; - qcom,gpio-vaf = <0>; - qcom,gpio-req-tbl-num = <0>; - qcom,gpio-req-tbl-flags = <0>; - qcom,gpio-req-tbl-label = "CAM_VAF"; - pinctrl-names = "cam_default", "cam_suspend"; - pinctrl-0 = <&cam_actuator_vaf_active>; - pinctrl-1 = <&cam_actuator_vaf_suspend>; + cam_vaf-supply = <&actuator_regulator>; + qcom,cam-vreg-name = "cam_vaf"; + qcom,cam-vreg-min-voltage = <2800000>; + qcom,cam-vreg-max-voltage = <2800000>; + qcom,cam-vreg-op-mode = <0>; }; - tof0:qcom,tof@0{ + + tof0: qcom,tof@0 { cell-index = <0>; reg = <0x29>; compatible = "st,stmvl53l0"; qcom,cci-master = <0>; cam_cci-supply = <&pm8998_lvs1>; - cam_laser-supply = <&pmi8998_bob>; + cam_laser-supply = <&actuator_regulator>; qcom,cam-vreg-name = "cam_cci", "cam_laser"; qcom,cam-vreg-min-voltage = <0 0>; - qcom,cam-vreg-max-voltage = <0 3600000>; + qcom,cam-vreg-max-voltage = <0 2800000>; pinctrl-names = "cam_default", "cam_suspend"; pinctrl-0 = <&cam_tof_active>; pinctrl-1 = <&cam_tof_suspend>; - gpios = <&tlmm 27 0>, <&tlmm 126 0>; - qcom,gpio-req-tbl-num = <0 1>; - qcom,gpio-req-tbl-flags = <0 0>; - qcom,gpio-req-tbl-label = "CAM_TOF", "CAM_CE"; + gpios = <&tlmm 126 0>; + qcom,gpio-req-tbl-num = <0>; + qcom,gpio-req-tbl-flags = <0>; + qcom,gpio-req-tbl-label = "CAM_CE"; }; + ois0: qcom,ois@0 { cell-index = <0>; reg = <0x0>; diff --git a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-cdp.dtsi b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-cdp.dtsi index 52d0fdb4a523..41e783e6bf1f 100644 --- a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-cdp.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-cdp.dtsi @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, The Linux Foundation. All rights reserved. + * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -144,6 +144,10 @@ /delete-node/qcom,ois@0; }; +&soc { + /delete-node/gpio-regulator@0; +}; + &cci { actuator0: qcom,actuator@0 { cell-index = <0>; diff --git a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-mtp.dtsi b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-mtp.dtsi index 52d0fdb4a523..722c18a26388 100644 --- a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-mtp.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-mtp.dtsi @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, The Linux Foundation. All rights reserved. + * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -132,6 +132,10 @@ }; }; +&soc { + /delete-node/gpio-regulator@0; +}; + &cci { /delete-node/qcom,camera@0; /delete-node/qcom,camera@1; diff --git a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-qrd.dtsi b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-qrd.dtsi index 87b1146bd361..8b68ece2239f 100644 --- a/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-qrd.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-interposer-camera-sensor-qrd.dtsi @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, The Linux Foundation. All rights reserved. + * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -170,6 +170,10 @@ }; }; +&soc { + /delete-node/gpio-regulator@0; +}; + &cci { /delete-node/qcom,camera@0; /delete-node/qcom,camera@1; diff --git a/arch/arm/boot/dts/qcom/msm8998-pinctrl.dtsi b/arch/arm/boot/dts/qcom/msm8998-pinctrl.dtsi index 4914363b414a..d2e18db982ef 100644 --- a/arch/arm/boot/dts/qcom/msm8998-pinctrl.dtsi +++ b/arch/arm/boot/dts/qcom/msm8998-pinctrl.dtsi @@ -956,12 +956,12 @@ cam_tof_active: cam_tof_active { mux { - pins = "gpio27", "gpio126"; + pins = "gpio26", "gpio126"; function = "gpio"; }; config { - pins = "gpio27", "gpio126"; + pins = "gpio26", "gpio126"; bias-disable; drive-strength = <2>; /* 2 MA */ }; @@ -969,12 +969,12 @@ cam_tof_suspend: cam_tof_suspend { mux { - pins = "gpio27", "gpio126"; + pins = "gpio26", "gpio126"; function = "gpio"; }; config { - pins = "gpio27", "gpio126"; + pins = "gpio26", "gpio126"; bias-pull-down; /* PULL DOWN */ drive-strength = <2>; /* 2 MA */ }; |
