1229d5bcaSVinod Koul// SPDX-License-Identifier: BSD-3-Clause 2229d5bcaSVinod Koul/* 3229d5bcaSVinod Koul * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. 4229d5bcaSVinod Koul * Copyright (c) 2019, Linaro Limited 5229d5bcaSVinod Koul */ 6229d5bcaSVinod Koul 7229d5bcaSVinod Koul#include <dt-bindings/iio/qcom,spmi-vadc.h> 8229d5bcaSVinod Koul#include <dt-bindings/interrupt-controller/irq.h> 9229d5bcaSVinod Koul#include <dt-bindings/spmi/spmi.h> 10229d5bcaSVinod Koul 114c5a410dSDmitry Baryshkov/ { 124c5a410dSDmitry Baryshkov thermal-zones { 133a786086SManivannan Sadhasivam pm8150b-thermal { 144c5a410dSDmitry Baryshkov polling-delay-passive = <100>; 154c5a410dSDmitry Baryshkov 164c5a410dSDmitry Baryshkov thermal-sensors = <&pm8150b_temp>; 174c5a410dSDmitry Baryshkov 184c5a410dSDmitry Baryshkov trips { 194c5a410dSDmitry Baryshkov trip0 { 204c5a410dSDmitry Baryshkov temperature = <95000>; 214c5a410dSDmitry Baryshkov hysteresis = <0>; 224c5a410dSDmitry Baryshkov type = "passive"; 234c5a410dSDmitry Baryshkov }; 244c5a410dSDmitry Baryshkov 254c5a410dSDmitry Baryshkov trip1 { 264c5a410dSDmitry Baryshkov temperature = <115000>; 274c5a410dSDmitry Baryshkov hysteresis = <0>; 284c5a410dSDmitry Baryshkov type = "hot"; 294c5a410dSDmitry Baryshkov }; 304c5a410dSDmitry Baryshkov 314c5a410dSDmitry Baryshkov trip2 { 324c5a410dSDmitry Baryshkov temperature = <145000>; 334c5a410dSDmitry Baryshkov hysteresis = <0>; 344c5a410dSDmitry Baryshkov type = "critical"; 354c5a410dSDmitry Baryshkov }; 364c5a410dSDmitry Baryshkov }; 374c5a410dSDmitry Baryshkov }; 384c5a410dSDmitry Baryshkov }; 394c5a410dSDmitry Baryshkov}; 404c5a410dSDmitry Baryshkov 41229d5bcaSVinod Koul&spmi_bus { 42229d5bcaSVinod Koul pmic@2 { 43229d5bcaSVinod Koul compatible = "qcom,pm8150b", "qcom,spmi-pmic"; 44229d5bcaSVinod Koul reg = <0x2 SPMI_USID>; 45229d5bcaSVinod Koul #address-cells = <1>; 46229d5bcaSVinod Koul #size-cells = <0>; 47229d5bcaSVinod Koul 4887783dbeSKrzysztof Kozlowski pon@800 { 49229d5bcaSVinod Koul compatible = "qcom,pm8916-pon"; 50229d5bcaSVinod Koul reg = <0x0800>; 51229d5bcaSVinod Koul 52229d5bcaSVinod Koul status = "disabled"; 53229d5bcaSVinod Koul }; 54229d5bcaSVinod Koul 550c9a86fbSLuca Weiss pm8150b_vbus: usb-vbus-regulator@1100 { 56f70c6dc0SWesley Cheng compatible = "qcom,pm8150b-vbus-reg"; 57f70c6dc0SWesley Cheng status = "disabled"; 58f70c6dc0SWesley Cheng reg = <0x1100>; 59f70c6dc0SWesley Cheng }; 60f70c6dc0SWesley Cheng 61*5a053951SBryan O'Donoghue pm8150b_typec: typec@1500 { 62*5a053951SBryan O'Donoghue compatible = "qcom,pm8150b-typec"; 63*5a053951SBryan O'Donoghue status = "disabled"; 64*5a053951SBryan O'Donoghue reg = <0x1500>, 65*5a053951SBryan O'Donoghue <0x1700>; 66*5a053951SBryan O'Donoghue interrupts = <0x2 0x15 0x00 IRQ_TYPE_EDGE_RISING>, 67*5a053951SBryan O'Donoghue <0x2 0x15 0x01 IRQ_TYPE_EDGE_BOTH>, 68*5a053951SBryan O'Donoghue <0x2 0x15 0x02 IRQ_TYPE_EDGE_RISING>, 69*5a053951SBryan O'Donoghue <0x2 0x15 0x03 IRQ_TYPE_EDGE_BOTH>, 70*5a053951SBryan O'Donoghue <0x2 0x15 0x04 IRQ_TYPE_EDGE_RISING>, 71*5a053951SBryan O'Donoghue <0x2 0x15 0x05 IRQ_TYPE_EDGE_RISING>, 72*5a053951SBryan O'Donoghue <0x2 0x15 0x06 IRQ_TYPE_EDGE_BOTH>, 73*5a053951SBryan O'Donoghue <0x2 0x15 0x07 IRQ_TYPE_EDGE_RISING>, 74*5a053951SBryan O'Donoghue <0x2 0x17 0x00 IRQ_TYPE_EDGE_RISING>, 75*5a053951SBryan O'Donoghue <0x2 0x17 0x01 IRQ_TYPE_EDGE_RISING>, 76*5a053951SBryan O'Donoghue <0x2 0x17 0x02 IRQ_TYPE_EDGE_RISING>, 77*5a053951SBryan O'Donoghue <0x2 0x17 0x03 IRQ_TYPE_EDGE_RISING>, 78*5a053951SBryan O'Donoghue <0x2 0x17 0x04 IRQ_TYPE_EDGE_RISING>, 79*5a053951SBryan O'Donoghue <0x2 0x17 0x05 IRQ_TYPE_EDGE_RISING>, 80*5a053951SBryan O'Donoghue <0x2 0x17 0x06 IRQ_TYPE_EDGE_RISING>, 81*5a053951SBryan O'Donoghue <0x2 0x17 0x07 IRQ_TYPE_EDGE_RISING>; 82*5a053951SBryan O'Donoghue interrupt-names = "or-rid-detect-change", 83*5a053951SBryan O'Donoghue "vpd-detect", 84*5a053951SBryan O'Donoghue "cc-state-change", 85*5a053951SBryan O'Donoghue "vconn-oc", 86*5a053951SBryan O'Donoghue "vbus-change", 87*5a053951SBryan O'Donoghue "attach-detach", 88*5a053951SBryan O'Donoghue "legacy-cable-detect", 89*5a053951SBryan O'Donoghue "try-snk-src-detect", 90*5a053951SBryan O'Donoghue "sig-tx", 91*5a053951SBryan O'Donoghue "sig-rx", 92*5a053951SBryan O'Donoghue "msg-tx", 93*5a053951SBryan O'Donoghue "msg-rx", 94*5a053951SBryan O'Donoghue "msg-tx-failed", 95*5a053951SBryan O'Donoghue "msg-tx-discarded", 96*5a053951SBryan O'Donoghue "msg-rx-discarded", 97*5a053951SBryan O'Donoghue "fr-swap"; 98*5a053951SBryan O'Donoghue vdd-vbus-supply = <&pm8150b_vbus>; 99*5a053951SBryan O'Donoghue }; 100*5a053951SBryan O'Donoghue 1014c5a410dSDmitry Baryshkov pm8150b_temp: temp-alarm@2400 { 1024c5a410dSDmitry Baryshkov compatible = "qcom,spmi-temp-alarm"; 1034c5a410dSDmitry Baryshkov reg = <0x2400>; 1044c5a410dSDmitry Baryshkov interrupts = <0x2 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; 1054c5a410dSDmitry Baryshkov io-channels = <&pm8150b_adc ADC5_DIE_TEMP>; 1064c5a410dSDmitry Baryshkov io-channel-names = "thermal"; 1074c5a410dSDmitry Baryshkov #thermal-sensor-cells = <0>; 1084c5a410dSDmitry Baryshkov }; 1094c5a410dSDmitry Baryshkov 1104c5a410dSDmitry Baryshkov pm8150b_adc: adc@3100 { 111229d5bcaSVinod Koul compatible = "qcom,spmi-adc5"; 112229d5bcaSVinod Koul reg = <0x3100>; 113229d5bcaSVinod Koul #address-cells = <1>; 114229d5bcaSVinod Koul #size-cells = <0>; 115229d5bcaSVinod Koul #io-channel-cells = <1>; 116229d5bcaSVinod Koul interrupts = <0x2 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 117229d5bcaSVinod Koul 11841c18552SMarijn Suijten channel@0 { 119229d5bcaSVinod Koul reg = <ADC5_REF_GND>; 120229d5bcaSVinod Koul qcom,pre-scaling = <1 1>; 121229d5bcaSVinod Koul label = "ref_gnd"; 122229d5bcaSVinod Koul }; 123229d5bcaSVinod Koul 12441c18552SMarijn Suijten channel@1 { 125229d5bcaSVinod Koul reg = <ADC5_1P25VREF>; 126229d5bcaSVinod Koul qcom,pre-scaling = <1 1>; 127229d5bcaSVinod Koul label = "vref_1p25"; 128229d5bcaSVinod Koul }; 129229d5bcaSVinod Koul 13041c18552SMarijn Suijten channel@6 { 131229d5bcaSVinod Koul reg = <ADC5_DIE_TEMP>; 132229d5bcaSVinod Koul qcom,pre-scaling = <1 1>; 133229d5bcaSVinod Koul label = "die_temp"; 134229d5bcaSVinod Koul }; 135229d5bcaSVinod Koul 13641c18552SMarijn Suijten channel@9 { 137229d5bcaSVinod Koul reg = <ADC5_CHG_TEMP>; 138229d5bcaSVinod Koul qcom,pre-scaling = <1 1>; 139229d5bcaSVinod Koul label = "chg_temp"; 140229d5bcaSVinod Koul }; 141229d5bcaSVinod Koul }; 142229d5bcaSVinod Koul 14328a7eb65SDmitry Baryshkov pm8150b_adc_tm: adc-tm@3500 { 14428a7eb65SDmitry Baryshkov compatible = "qcom,spmi-adc-tm5"; 14528a7eb65SDmitry Baryshkov reg = <0x3500>; 14628a7eb65SDmitry Baryshkov interrupts = <0x2 0x35 0x0 IRQ_TYPE_EDGE_RISING>; 14728a7eb65SDmitry Baryshkov #thermal-sensor-cells = <1>; 14828a7eb65SDmitry Baryshkov #address-cells = <1>; 14928a7eb65SDmitry Baryshkov #size-cells = <0>; 15028a7eb65SDmitry Baryshkov status = "disabled"; 15128a7eb65SDmitry Baryshkov }; 15228a7eb65SDmitry Baryshkov 153229d5bcaSVinod Koul pm8150b_gpios: gpio@c000 { 154019102a9SKrzysztof Kozlowski compatible = "qcom,pm8150b-gpio", "qcom,spmi-gpio"; 155229d5bcaSVinod Koul reg = <0xc000>; 156229d5bcaSVinod Koul gpio-controller; 157b07bfd8eSKrzysztof Kozlowski gpio-ranges = <&pm8150b_gpios 0 0 12>; 158229d5bcaSVinod Koul #gpio-cells = <2>; 15961d2ca50SJonathan Marek interrupt-controller; 16061d2ca50SJonathan Marek #interrupt-cells = <2>; 161229d5bcaSVinod Koul }; 162229d5bcaSVinod Koul }; 163229d5bcaSVinod Koul 164229d5bcaSVinod Koul pmic@3 { 165229d5bcaSVinod Koul compatible = "qcom,pm8150b", "qcom,spmi-pmic"; 166229d5bcaSVinod Koul reg = <0x3 SPMI_USID>; 167229d5bcaSVinod Koul #address-cells = <1>; 168229d5bcaSVinod Koul #size-cells = <0>; 169efe9185cSDmitry Baryshkov 17015f50a48SKrzysztof Kozlowski pm8150b_lpg: pwm { 171efe9185cSDmitry Baryshkov compatible = "qcom,pm8150b-lpg"; 172efe9185cSDmitry Baryshkov 173efe9185cSDmitry Baryshkov #address-cells = <1>; 174efe9185cSDmitry Baryshkov #size-cells = <0>; 175efe9185cSDmitry Baryshkov #pwm-cells = <2>; 176efe9185cSDmitry Baryshkov 177efe9185cSDmitry Baryshkov status = "disabled"; 178efe9185cSDmitry Baryshkov }; 179229d5bcaSVinod Koul }; 180229d5bcaSVinod Koul}; 181