1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0 2729ee9c4SIvan T. Ivanov#include <dt-bindings/iio/qcom,spmi-vadc.h> 3ad5fe787SVinod Koul#include <dt-bindings/input/linux-event-codes.h> 409a587a0SStephan Gerhold#include <dt-bindings/interrupt-controller/irq.h> 5729ee9c4SIvan T. Ivanov#include <dt-bindings/spmi/spmi.h> 6729ee9c4SIvan T. Ivanov 7729ee9c4SIvan T. Ivanov&spmi_bus { 8729ee9c4SIvan T. Ivanov 96300095bSStephan Gerhold pm8916_0: pmic@0 { 102bce84c1SStephen Boyd compatible = "qcom,pm8916", "qcom,spmi-pmic"; 11729ee9c4SIvan T. Ivanov reg = <0x0 SPMI_USID>; 12729ee9c4SIvan T. Ivanov #address-cells = <1>; 13729ee9c4SIvan T. Ivanov #size-cells = <0>; 14729ee9c4SIvan T. Ivanov 15ad5fe787SVinod Koul pon@800 { 16ad5fe787SVinod Koul compatible = "qcom,pm8916-pon"; 17729ee9c4SIvan T. Ivanov reg = <0x800>; 18ad5fe787SVinod Koul mode-bootloader = <0x2>; 19ad5fe787SVinod Koul mode-recovery = <0x1>; 20ad5fe787SVinod Koul 21ad5fe787SVinod Koul pwrkey { 22ad5fe787SVinod Koul compatible = "qcom,pm8941-pwrkey"; 23729ee9c4SIvan T. Ivanov interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>; 24729ee9c4SIvan T. Ivanov debounce = <15625>; 25729ee9c4SIvan T. Ivanov bias-pull-up; 26ad5fe787SVinod Koul linux,code = <KEY_POWER>; 27ad5fe787SVinod Koul }; 280f60e6fbSLoic Poulain 294eb7b63dSStephan Gerhold pm8916_resin: resin { 304eb7b63dSStephan Gerhold compatible = "qcom,pm8941-resin"; 314eb7b63dSStephan Gerhold interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>; 324eb7b63dSStephan Gerhold debounce = <15625>; 334eb7b63dSStephan Gerhold bias-pull-up; 344eb7b63dSStephan Gerhold status = "disabled"; 354eb7b63dSStephan Gerhold }; 364eb7b63dSStephan Gerhold 370f60e6fbSLoic Poulain watchdog { 380f60e6fbSLoic Poulain compatible = "qcom,pm8916-wdt"; 390f60e6fbSLoic Poulain interrupts = <0x0 0x8 6 IRQ_TYPE_EDGE_RISING>; 400f60e6fbSLoic Poulain timeout-sec = <60>; 410f60e6fbSLoic Poulain }; 42729ee9c4SIvan T. Ivanov }; 43729ee9c4SIvan T. Ivanov 447891372dSKonrad Dybcio pm8916_usbin: usb-detect@1300 { 45f5d7bca5SStephan Gerhold compatible = "qcom,pm8941-misc"; 46f5d7bca5SStephan Gerhold reg = <0x1300>; 47f5d7bca5SStephan Gerhold interrupts = <0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>; 48f5d7bca5SStephan Gerhold interrupt-names = "usb_vbus"; 49f5d7bca5SStephan Gerhold status = "disabled"; 50f5d7bca5SStephan Gerhold }; 51f5d7bca5SStephan Gerhold 52729ee9c4SIvan T. Ivanov pm8916_temp: temp-alarm@2400 { 53729ee9c4SIvan T. Ivanov compatible = "qcom,spmi-temp-alarm"; 54bd6429e8SStephen Boyd reg = <0x2400>; 55729ee9c4SIvan T. Ivanov interrupts = <0 0x24 0 IRQ_TYPE_EDGE_RISING>; 56729ee9c4SIvan T. Ivanov io-channels = <&pm8916_vadc VADC_DIE_TEMP>; 57729ee9c4SIvan T. Ivanov io-channel-names = "thermal"; 58729ee9c4SIvan T. Ivanov #thermal-sensor-cells = <0>; 59729ee9c4SIvan T. Ivanov }; 60729ee9c4SIvan T. Ivanov 616300095bSStephan Gerhold pm8916_vadc: adc@3100 { 62729ee9c4SIvan T. Ivanov compatible = "qcom,spmi-vadc"; 63bd6429e8SStephen Boyd reg = <0x3100>; 64729ee9c4SIvan T. Ivanov interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 65729ee9c4SIvan T. Ivanov #address-cells = <1>; 66729ee9c4SIvan T. Ivanov #size-cells = <0>; 67729ee9c4SIvan T. Ivanov #io-channel-cells = <1>; 68729ee9c4SIvan T. Ivanov 69*41c18552SMarijn Suijten channel@0 { 70729ee9c4SIvan T. Ivanov reg = <VADC_USBIN>; 71729ee9c4SIvan T. Ivanov qcom,pre-scaling = <1 10>; 72729ee9c4SIvan T. Ivanov }; 73*41c18552SMarijn Suijten channel@7 { 74729ee9c4SIvan T. Ivanov reg = <VADC_VSYS>; 75729ee9c4SIvan T. Ivanov qcom,pre-scaling = <1 3>; 76729ee9c4SIvan T. Ivanov }; 77*41c18552SMarijn Suijten channel@8 { 78729ee9c4SIvan T. Ivanov reg = <VADC_DIE_TEMP>; 79729ee9c4SIvan T. Ivanov }; 80*41c18552SMarijn Suijten channel@9 { 81729ee9c4SIvan T. Ivanov reg = <VADC_REF_625MV>; 82729ee9c4SIvan T. Ivanov }; 83*41c18552SMarijn Suijten channel@a { 84729ee9c4SIvan T. Ivanov reg = <VADC_REF_1250MV>; 85729ee9c4SIvan T. Ivanov }; 86*41c18552SMarijn Suijten channel@e { 87729ee9c4SIvan T. Ivanov reg = <VADC_GND_REF>; 88729ee9c4SIvan T. Ivanov }; 89*41c18552SMarijn Suijten channel@f { 90729ee9c4SIvan T. Ivanov reg = <VADC_VDD_VADC>; 91729ee9c4SIvan T. Ivanov }; 92729ee9c4SIvan T. Ivanov }; 9309a587a0SStephan Gerhold 9409a587a0SStephan Gerhold rtc@6000 { 9509a587a0SStephan Gerhold compatible = "qcom,pm8941-rtc"; 96ceb01bb8SEric Chanudet reg = <0x6000>, <0x6100>; 97ceb01bb8SEric Chanudet reg-names = "rtc", "alarm"; 9809a587a0SStephan Gerhold interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>; 9909a587a0SStephan Gerhold }; 10009a587a0SStephan Gerhold 10109a587a0SStephan Gerhold pm8916_mpps: mpps@a000 { 102de0c7e12SDmitry Baryshkov compatible = "qcom,pm8916-mpp", "qcom,spmi-mpp"; 10309a587a0SStephan Gerhold reg = <0xa000>; 10409a587a0SStephan Gerhold gpio-controller; 10509a587a0SStephan Gerhold #gpio-cells = <2>; 106de0c7e12SDmitry Baryshkov gpio-ranges = <&pm8916_mpps 0 0 4>; 1073386f014SDmitry Baryshkov interrupt-controller; 1083386f014SDmitry Baryshkov #interrupt-cells = <2>; 10909a587a0SStephan Gerhold }; 11009a587a0SStephan Gerhold 111c95243eeSKrzysztof Kozlowski pm8916_gpios: gpio@c000 { 112019102a9SKrzysztof Kozlowski compatible = "qcom,pm8916-gpio", "qcom,spmi-gpio"; 11309a587a0SStephan Gerhold reg = <0xc000>; 11409a587a0SStephan Gerhold gpio-controller; 115b07bfd8eSKrzysztof Kozlowski gpio-ranges = <&pm8916_gpios 0 0 4>; 11609a587a0SStephan Gerhold #gpio-cells = <2>; 117a984d5d1SKrzysztof Kozlowski interrupt-controller; 118a984d5d1SKrzysztof Kozlowski #interrupt-cells = <2>; 11909a587a0SStephan Gerhold }; 120729ee9c4SIvan T. Ivanov }; 121729ee9c4SIvan T. Ivanov 1226300095bSStephan Gerhold pm8916_1: pmic@1 { 1235582fcb3SSrinivas Kandagatla compatible = "qcom,pm8916", "qcom,spmi-pmic"; 124729ee9c4SIvan T. Ivanov reg = <0x1 SPMI_USID>; 125729ee9c4SIvan T. Ivanov #address-cells = <1>; 126729ee9c4SIvan T. Ivanov #size-cells = <0>; 1275582fcb3SSrinivas Kandagatla 128e79a1385SBjorn Andersson pm8916_pwm: pwm { 129e79a1385SBjorn Andersson compatible = "qcom,pm8916-pwm"; 130e79a1385SBjorn Andersson 131e79a1385SBjorn Andersson #pwm-cells = <2>; 132e79a1385SBjorn Andersson 133e79a1385SBjorn Andersson status = "disabled"; 134e79a1385SBjorn Andersson }; 135e79a1385SBjorn Andersson 136741a5ea7SStephan Gerhold pm8916_vib: vibrator@c000 { 137741a5ea7SStephan Gerhold compatible = "qcom,pm8916-vib"; 138741a5ea7SStephan Gerhold reg = <0xc000>; 139741a5ea7SStephan Gerhold status = "disabled"; 140741a5ea7SStephan Gerhold }; 141741a5ea7SStephan Gerhold 142274cf2bdSStephan Gerhold pm8916_codec: audio-codec@f000 { 1435582fcb3SSrinivas Kandagatla compatible = "qcom,pm8916-wcd-analog-codec"; 144c2f0cbb5SStephan Gerhold reg = <0xf000>; 1455582fcb3SSrinivas Kandagatla reg-names = "pmic-codec-core"; 1465582fcb3SSrinivas Kandagatla clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>; 1475582fcb3SSrinivas Kandagatla clock-names = "mclk"; 1485582fcb3SSrinivas Kandagatla interrupt-parent = <&spmi_bus>; 1495582fcb3SSrinivas Kandagatla interrupts = <0x1 0xf0 0x0 IRQ_TYPE_NONE>, 1505582fcb3SSrinivas Kandagatla <0x1 0xf0 0x1 IRQ_TYPE_NONE>, 1515582fcb3SSrinivas Kandagatla <0x1 0xf0 0x2 IRQ_TYPE_NONE>, 1525582fcb3SSrinivas Kandagatla <0x1 0xf0 0x3 IRQ_TYPE_NONE>, 1535582fcb3SSrinivas Kandagatla <0x1 0xf0 0x4 IRQ_TYPE_NONE>, 1545582fcb3SSrinivas Kandagatla <0x1 0xf0 0x5 IRQ_TYPE_NONE>, 1555582fcb3SSrinivas Kandagatla <0x1 0xf0 0x6 IRQ_TYPE_NONE>, 1565582fcb3SSrinivas Kandagatla <0x1 0xf0 0x7 IRQ_TYPE_NONE>, 1575582fcb3SSrinivas Kandagatla <0x1 0xf1 0x0 IRQ_TYPE_NONE>, 1585582fcb3SSrinivas Kandagatla <0x1 0xf1 0x1 IRQ_TYPE_NONE>, 1595582fcb3SSrinivas Kandagatla <0x1 0xf1 0x2 IRQ_TYPE_NONE>, 1605582fcb3SSrinivas Kandagatla <0x1 0xf1 0x3 IRQ_TYPE_NONE>, 1615582fcb3SSrinivas Kandagatla <0x1 0xf1 0x4 IRQ_TYPE_NONE>, 1625582fcb3SSrinivas Kandagatla <0x1 0xf1 0x5 IRQ_TYPE_NONE>; 1635582fcb3SSrinivas Kandagatla interrupt-names = "cdc_spk_cnp_int", 1645582fcb3SSrinivas Kandagatla "cdc_spk_clip_int", 1655582fcb3SSrinivas Kandagatla "cdc_spk_ocp_int", 1665582fcb3SSrinivas Kandagatla "mbhc_ins_rem_det1", 1675582fcb3SSrinivas Kandagatla "mbhc_but_rel_det", 1685582fcb3SSrinivas Kandagatla "mbhc_but_press_det", 1695582fcb3SSrinivas Kandagatla "mbhc_ins_rem_det", 1705582fcb3SSrinivas Kandagatla "mbhc_switch_int", 1715582fcb3SSrinivas Kandagatla "cdc_ear_ocp_int", 1725582fcb3SSrinivas Kandagatla "cdc_hphr_ocp_int", 1735582fcb3SSrinivas Kandagatla "cdc_hphl_ocp_det", 1745582fcb3SSrinivas Kandagatla "cdc_ear_cnp_int", 1755582fcb3SSrinivas Kandagatla "cdc_hphr_cnp_int", 1765582fcb3SSrinivas Kandagatla "cdc_hphl_cnp_int"; 1775582fcb3SSrinivas Kandagatla #sound-dai-cells = <1>; 178a5cf21b1SStephan Gerhold status = "disabled"; 1795582fcb3SSrinivas Kandagatla }; 180729ee9c4SIvan T. Ivanov }; 181729ee9c4SIvan T. Ivanov}; 182