14870c76cSKonrad Dybcio// SPDX-License-Identifier: BSD-3-Clause 24870c76cSKonrad Dybcio/* 34870c76cSKonrad Dybcio * Copyright (c) 2020, Konrad Dybcio 44870c76cSKonrad Dybcio */ 54870c76cSKonrad Dybcio 64bf09754SKonrad Dybcio#include <dt-bindings/iio/qcom,spmi-vadc.h> 74870c76cSKonrad Dybcio#include <dt-bindings/input/linux-event-codes.h> 84870c76cSKonrad Dybcio#include <dt-bindings/interrupt-controller/irq.h> 94870c76cSKonrad Dybcio#include <dt-bindings/spmi/spmi.h> 104bf09754SKonrad Dybcio#include <dt-bindings/thermal/thermal.h> 114bf09754SKonrad Dybcio 124bf09754SKonrad Dybcio/ { 134bf09754SKonrad Dybcio thermal-zones { 146b056f38SKrzysztof Kozlowski pm660-thermal { 154bf09754SKonrad Dybcio polling-delay-passive = <250>; 164bf09754SKonrad Dybcio polling-delay = <1000>; 174bf09754SKonrad Dybcio 184bf09754SKonrad Dybcio thermal-sensors = <&pm660_temp>; 194bf09754SKonrad Dybcio 204bf09754SKonrad Dybcio trips { 214bf09754SKonrad Dybcio pm660_alert0: pm660-alert0 { 224bf09754SKonrad Dybcio temperature = <95000>; 234bf09754SKonrad Dybcio hysteresis = <2000>; 244bf09754SKonrad Dybcio type = "passive"; 254bf09754SKonrad Dybcio }; 264bf09754SKonrad Dybcio pm660_crit: pm660-crit { 274bf09754SKonrad Dybcio temperature = <125000>; 284bf09754SKonrad Dybcio hysteresis = <2000>; 294bf09754SKonrad Dybcio type = "critical"; 304bf09754SKonrad Dybcio }; 314bf09754SKonrad Dybcio }; 324bf09754SKonrad Dybcio }; 334bf09754SKonrad Dybcio }; 344bf09754SKonrad Dybcio}; 354870c76cSKonrad Dybcio 364870c76cSKonrad Dybcio&spmi_bus { 374870c76cSKonrad Dybcio 384870c76cSKonrad Dybcio pmic@0 { 394870c76cSKonrad Dybcio compatible = "qcom,pm660", "qcom,spmi-pmic"; 404870c76cSKonrad Dybcio reg = <0x0 SPMI_USID>; 414870c76cSKonrad Dybcio #address-cells = <1>; 424870c76cSKonrad Dybcio #size-cells = <0>; 434870c76cSKonrad Dybcio 444870c76cSKonrad Dybcio rtc@6000 { 454870c76cSKonrad Dybcio compatible = "qcom,pm8941-rtc"; 464870c76cSKonrad Dybcio reg = <0x6000>, <0x6100>; 474870c76cSKonrad Dybcio reg-names = "rtc", "alarm"; 484870c76cSKonrad Dybcio interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>; 494870c76cSKonrad Dybcio }; 504870c76cSKonrad Dybcio 514870c76cSKonrad Dybcio pon: pon@800 { 5236730a8fSShawn Guo compatible = "qcom,pm8998-pon"; 534870c76cSKonrad Dybcio reg = <0x800>; 5436730a8fSShawn Guo mode-bootloader = <0x2>; 5536730a8fSShawn Guo mode-recovery = <0x1>; 564870c76cSKonrad Dybcio 579f6cbe37SDang Huynh pon_pwrkey: pwrkey { 584870c76cSKonrad Dybcio compatible = "qcom,pm8941-pwrkey"; 594870c76cSKonrad Dybcio interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>; 604870c76cSKonrad Dybcio debounce = <15625>; 614870c76cSKonrad Dybcio bias-pull-up; 624870c76cSKonrad Dybcio linux,code = <KEY_POWER>; 639f6cbe37SDang Huynh 649f6cbe37SDang Huynh status = "disabled"; 654870c76cSKonrad Dybcio }; 664870c76cSKonrad Dybcio 679f6cbe37SDang Huynh pon_resin: resin { 689f6cbe37SDang Huynh compatible = "qcom,pm8941-resin"; 699f6cbe37SDang Huynh interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>; 709f6cbe37SDang Huynh debounce = <15625>; 719f6cbe37SDang Huynh bias-pull-up; 729f6cbe37SDang Huynh 739f6cbe37SDang Huynh status = "disabled"; 749f6cbe37SDang Huynh }; 754870c76cSKonrad Dybcio }; 764870c76cSKonrad Dybcio 774bf09754SKonrad Dybcio pm660_temp: temp-alarm@2400 { 784bf09754SKonrad Dybcio compatible = "qcom,spmi-temp-alarm"; 794bf09754SKonrad Dybcio reg = <0x2400>; 804bf09754SKonrad Dybcio interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>; 814bf09754SKonrad Dybcio io-channels = <&pm660_adc ADC5_DIE_TEMP>; 824bf09754SKonrad Dybcio io-channel-names = "thermal"; 834bf09754SKonrad Dybcio #thermal-sensor-cells = <0>; 844bf09754SKonrad Dybcio }; 854bf09754SKonrad Dybcio 864bf09754SKonrad Dybcio pm660_adc: adc@3100 { 874bf09754SKonrad Dybcio compatible = "qcom,spmi-adc-rev2"; 884bf09754SKonrad Dybcio reg = <0x3100>; 894bf09754SKonrad Dybcio interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 904bf09754SKonrad Dybcio #address-cells = <1>; 914bf09754SKonrad Dybcio #size-cells = <0>; 924bf09754SKonrad Dybcio #io-channel-cells = <1>; 934bf09754SKonrad Dybcio 94*41c18552SMarijn Suijten channel@0 { 954bf09754SKonrad Dybcio reg = <ADC5_REF_GND>; 964bf09754SKonrad Dybcio qcom,decimation = <1024>; 974bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 98*41c18552SMarijn Suijten label = "ref_gnd"; 994bf09754SKonrad Dybcio }; 1004bf09754SKonrad Dybcio 101*41c18552SMarijn Suijten channel@1 { 1024bf09754SKonrad Dybcio reg = <ADC5_1P25VREF>; 1034bf09754SKonrad Dybcio qcom,decimation = <1024>; 1044bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 105*41c18552SMarijn Suijten label = "vref_1p25"; 1064bf09754SKonrad Dybcio }; 1074bf09754SKonrad Dybcio 108*41c18552SMarijn Suijten channel@6 { 1094bf09754SKonrad Dybcio reg = <ADC5_DIE_TEMP>; 1104bf09754SKonrad Dybcio qcom,decimation = <1024>; 1114bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 112*41c18552SMarijn Suijten label = "die_temp"; 1134bf09754SKonrad Dybcio }; 1144bf09754SKonrad Dybcio 115*41c18552SMarijn Suijten channel@4c { 1164bf09754SKonrad Dybcio reg = <ADC5_XO_THERM_100K_PU>; 1174bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1184bf09754SKonrad Dybcio qcom,decimation = <1024>; 1194bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1204bf09754SKonrad Dybcio qcom,ratiometric; 121*41c18552SMarijn Suijten label = "xo_therm"; 1224bf09754SKonrad Dybcio }; 1234bf09754SKonrad Dybcio 124*41c18552SMarijn Suijten channel@4d { 1254bf09754SKonrad Dybcio reg = <ADC5_AMUX_THM1_100K_PU>; 1264bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1274bf09754SKonrad Dybcio qcom,decimation = <1024>; 1284bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1294bf09754SKonrad Dybcio qcom,ratiometric; 130*41c18552SMarijn Suijten label = "msm_therm"; 1314bf09754SKonrad Dybcio }; 1324bf09754SKonrad Dybcio 133*41c18552SMarijn Suijten channel@4e { 1344bf09754SKonrad Dybcio reg = <ADC5_AMUX_THM2_100K_PU>; 1354bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1364bf09754SKonrad Dybcio qcom,decimation = <1024>; 1374bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1384bf09754SKonrad Dybcio qcom,ratiometric; 139*41c18552SMarijn Suijten label = "emmc_therm"; 1404bf09754SKonrad Dybcio }; 1414bf09754SKonrad Dybcio 142*41c18552SMarijn Suijten channel@4f { 1434bf09754SKonrad Dybcio reg = <ADC5_AMUX_THM3_100K_PU>; 1444bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1454bf09754SKonrad Dybcio qcom,decimation = <1024>; 1464bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1474bf09754SKonrad Dybcio qcom,ratiometric; 148*41c18552SMarijn Suijten label = "pa_therm0"; 1494bf09754SKonrad Dybcio }; 1504bf09754SKonrad Dybcio 151*41c18552SMarijn Suijten channel@50 { 1524bf09754SKonrad Dybcio reg = <ADC5_AMUX_THM4_100K_PU>; 1534bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1544bf09754SKonrad Dybcio qcom,decimation = <1024>; 1554bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1564bf09754SKonrad Dybcio qcom,ratiometric; 157*41c18552SMarijn Suijten label = "pa_therm1"; 1584bf09754SKonrad Dybcio }; 1594bf09754SKonrad Dybcio 160*41c18552SMarijn Suijten channel@51 { 1614bf09754SKonrad Dybcio reg = <ADC5_AMUX_THM5_100K_PU>; 1624bf09754SKonrad Dybcio qcom,pre-scaling = <1 1>; 1634bf09754SKonrad Dybcio qcom,decimation = <1024>; 1644bf09754SKonrad Dybcio qcom,hw-settle-time = <200>; 1654bf09754SKonrad Dybcio qcom,ratiometric; 166*41c18552SMarijn Suijten label = "quiet_therm"; 1674bf09754SKonrad Dybcio }; 1684bf09754SKonrad Dybcio 169*41c18552SMarijn Suijten channel@83 { 1704bf09754SKonrad Dybcio reg = <ADC5_VPH_PWR>; 1714bf09754SKonrad Dybcio qcom,decimation = <1024>; 1724bf09754SKonrad Dybcio qcom,pre-scaling = <1 3>; 173*41c18552SMarijn Suijten label = "vph_pwr"; 1744bf09754SKonrad Dybcio }; 1754bf09754SKonrad Dybcio 176*41c18552SMarijn Suijten channel@85 { 1774bf09754SKonrad Dybcio reg = <ADC5_VCOIN>; 1784bf09754SKonrad Dybcio qcom,decimation = <1024>; 1794bf09754SKonrad Dybcio qcom,pre-scaling = <1 3>; 180*41c18552SMarijn Suijten label = "vcoin"; 1814bf09754SKonrad Dybcio }; 1824bf09754SKonrad Dybcio }; 1834bf09754SKonrad Dybcio 184c95243eeSKrzysztof Kozlowski pm660_gpios: gpio@c000 { 185019102a9SKrzysztof Kozlowski compatible = "qcom,pm660-gpio", "qcom,spmi-gpio"; 1864870c76cSKonrad Dybcio reg = <0xc000>; 1874870c76cSKonrad Dybcio gpio-controller; 1884870c76cSKonrad Dybcio gpio-ranges = <&pm660_gpios 0 0 13>; 1894870c76cSKonrad Dybcio #gpio-cells = <2>; 1904870c76cSKonrad Dybcio interrupt-controller; 19122f5adc7SŁukasz Patron #interrupt-cells = <2>; 1924870c76cSKonrad Dybcio }; 1934870c76cSKonrad Dybcio }; 194b59b058cSAngeloGioacchino Del Regno 195b59b058cSAngeloGioacchino Del Regno pmic@1 { 196b59b058cSAngeloGioacchino Del Regno compatible = "qcom,pm660", "qcom,spmi-pmic"; 197b59b058cSAngeloGioacchino Del Regno reg = <0x1 SPMI_USID>; 198b59b058cSAngeloGioacchino Del Regno #address-cells = <1>; 199b59b058cSAngeloGioacchino Del Regno #size-cells = <0>; 200b59b058cSAngeloGioacchino Del Regno 201c29ed5afSKrzysztof Kozlowski pm660_spmi_regulators: regulators { 202b59b058cSAngeloGioacchino Del Regno compatible = "qcom,pm660-regulators"; 203b59b058cSAngeloGioacchino Del Regno }; 204b59b058cSAngeloGioacchino Del Regno }; 2054870c76cSKonrad Dybcio}; 206