ARM: dts: msm: Add PMIC devices for shima

Add top level SPMI slave devices for PMK8350, PM8350, PM8350C,
PM8350B and PMR735B PMICs.

Add support for managing the PM8008I and PM8008J chips via I2C.
This ensures that consumers are able to modify the physical state
of these PMIC regulators.

Change-Id: I0f94cd804cdfae9d6feee56981891430c3bb2156
This commit is contained in:
Kiran Gunda 2020-06-15 19:27:19 +05:30
commit 0c4b2d529d

View file

@ -0,0 +1,278 @@
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include "pmk8350.dtsi"
#include "pm8350.dtsi"
#include "pm8350c.dtsi"
#include "pm8350b.dtsi"
#include "pmr735b.dtsi"
&pm8350_gpios {
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio6";
function = "normal";
input-enable;
bias-pull-up;
power-source = <1>;
};
};
};
&pm8350c_gpios {
pm8008i_reset {
pm8008i_active: pm8008i_active {
pins = "gpio7";
function = "normal";
bias-disable;
output-high;
power-source = <1>;
};
};
pm8008j_reset {
pm8008j_active: pm8008j_active {
pins = "gpio8";
function = "normal";
bias-disable;
output-high;
power-source = <1>;
};
};
};
&qupv3_se5_i2c {
#address-cells = <1>;
#size-cells = <0>;
status = "ok"
pm8008i@8 {
compatible = "qcom,i2c-pmic";
reg = <0x8>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pm8008i_active>;
pm8008-chip@900 {
compatible = "qcom,pm8008-chip";
reg = <0x900>;
PM8008I_EN: qcom,pm8008-chip-en {
regulator-name = "pm8008i-chip-en";
};
};
qcom,revid@100 {
compatible = "qcom,qpnp-revid";
reg = <0x100>;
};
};
pm8008i@9 {
compatible = "qcom,i2c-pmic";
reg = <0x9>;
#address-cells = <1>;
#size-cells = <0>;
qcom,pm8008i-regulator {
compatible = "qcom,pm8008-regulator";
#address-cells = <1>;
#size-cells = <0>;
pm8008_en-supply = <&PM8008I_EN>;
vdd_l1_l2-supply = <&S9B>;
vdd_l3_l4-supply = <&BOB>;
vdd_l5-supply = <&S11B>;
vdd_l6-supply = <&BOB>;
vdd_l7-supply = <&BOB>;
L1I: pm8008i_l1: regulator@4000 {
reg = <0x4000>;
regulator-name = "pm8008i_l1";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1200000>;
qcom,min-dropout-voltage = <225000>;
qcom,hpm-min-load = <30000>;
};
L2I: pm8008i_l2: regulator@4100 {
reg = <0x4100>;
regulator-name = "pm8008i_l2";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <1150000>;
qcom,min-dropout-voltage = <184000>;
qcom,hpm-min-load = <30000>;
};
L3I: pm8008i_l3: regulator@4200 {
reg = <0x4200>;
regulator-name = "pm8008i_l3";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3000000>;
qcom,min-dropout-voltage = <96000>;
};
L4I: pm8008i_l4: regulator@4300 {
reg = <0x4300>;
regulator-name = "pm8008i_l4";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2900000>;
qcom,min-dropout-voltage = <88000>;
};
L5I: pm8008i_l5: regulator@4400 {
reg = <0x4400>;
regulator-name = "pm8008i_l5";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
qcom,min-dropout-voltage = <152000>;
};
L6I: pm8008i_l6: regulator@4500 {
reg = <0x4500>;
regulator-name = "pm8008i_l6";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2900000>;
qcom,min-dropout-voltage = <128000>;
};
L7I: pm8008i_l7: regulator@4600 {
reg = <0x4600>;
regulator-name = "pm8008i_l7";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3000000>;
qcom,min-dropout-voltage = <300000>;
};
};
};
pm8008j@c {
compatible = "qcom,i2c-pmic";
reg = <0xc>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pm8008j_active>;
pm8008-chip@900 {
compatible = "qcom,pm8008-chip";
reg = <0x900>;
PM8008J_EN: qcom,pm8008-chip-en {
regulator-name = "pm8008j-chip-en";
};
};
qcom,revid@100 {
compatible = "qcom,qpnp-revid";
reg = <0x100>;
};
};
pm8008j@d {
compatible = "qcom,i2c-pmic";
reg = <0xd>;
#address-cells = <1>;
#size-cells = <0>;
qcom,pm8008j-regulator {
compatible = "qcom,pm8008-regulator";
#address-cells = <1>;
#size-cells = <0>;
pm8008_en-supply = <&PM8008J_EN>;
vdd_l1_l2-supply = <&S9B>;
vdd_l3_l4-supply = <&S11B>;
vdd_l5-supply = <&BOB>;
vdd_l6-supply = <&BOB>;
vdd_l7-supply = <&BOB>;
L1J: pm8008j_l1: regulator@4000 {
reg = <0x4000>;
regulator-name = "pm8008j_l1";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <1150000>;
qcom,min-dropout-voltage = <160000>;
qcom,hpm-min-load = <30000>;
};
L2J: pm8008j_l2: regulator@4100 {
reg = <0x4100>;
regulator-name = "pm8008j_l2";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <1150000>;
qcom,min-dropout-voltage = <0>;
qcom,hpm-min-load = <30000>;
};
L3J: pm8008j_l3: regulator@4200 {
reg = <0x4200>;
regulator-name = "pm8008j_l3";
regulator-min-microvolt = <1650000>;
regulator-max-microvolt = <1950000>;
qcom,min-dropout-voltage = <56000>;
};
L4J: pm8008j_l4: regulator@4300 {
reg = <0x4300>;
regulator-name = "pm8008j_l4";
regulator-min-microvolt = <1504000>;
regulator-max-microvolt = <3544000>;
qcom,min-dropout-voltage = <0>;
};
L5J: pm8008j_l5: regulator@4400 {
reg = <0x4400>;
regulator-name = "pm8008j_l5";
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <2900000>;
qcom,min-dropout-voltage = <104000>;
};
L6J: pm8008j_l6: regulator@4500 {
reg = <0x4500>;
regulator-name = "pm8008j_l6";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
qcom,min-dropout-voltage = <0>;
};
L7J: pm8008j_l7: regulator@4600 {
reg = <0x4600>;
regulator-name = "pm8008j_l7";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3544000>;
qcom,min-dropout-voltage = <0>;
};
};
};
};
&pm8350_tz {
io-channels = <&pmk8350_vadc PM8350_ADC7_DIE_TEMP>;
io-channel-names = "thermal";
};
&pm8350b_tz {
io-channels = <&pmk8350_vadc PM8350B_ADC7_DIE_TEMP>;
io-channel-names = "thermal";
};
&pmk8350_sdam_2 {
hap_cl_brake: cl_brake@7c {
reg = <0x7c 0x1>;
bits = <0 8>;
};
};
&pm8350b_haptics {
nvmem-cell-names = "hap_cl_brake";
nvmem-cells = <&hap_cl_brake>;
};
&pmr735b_tz {
io-channels = <&pmk8350_vadc PMR735B_ADC7_DIE_TEMP>;
io-channel-names = "thermal";
};