blob: ddbaf7280b03075aca5d9b5c984108e7d6cb2fdb [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2019, The Linux Foundation. All rights reserved.
4 */
5
6#include <dt-bindings/iio/qcom,spmi-vadc.h>
7#include <dt-bindings/input/linux-event-codes.h>
8#include <dt-bindings/interrupt-controller/irq.h>
9#include <dt-bindings/spmi/spmi.h>
10#include <dt-bindings/thermal/thermal.h>
11
12/ {
13 thermal-zones {
14 pm6150_thermal: pm6150-thermal {
15 polling-delay-passive = <100>;
16 polling-delay = <0>;
17 thermal-sensors = <&pm6150_temp>;
18
19 trips {
20 pm6150_trip0: trip0 {
21 temperature = <95000>;
22 hysteresis = <0>;
23 type = "passive";
24 };
25
26 pm6150_crit: crit {
27 temperature = <115000>;
28 hysteresis = <0>;
29 type = "critical";
30 };
31 };
32 };
33 };
34};
35
36&spmi_bus {
37 pm6150_lsid0: pmic@0 {
38 compatible = "qcom,pm6150", "qcom,spmi-pmic";
39 reg = <0x0 SPMI_USID>;
40 #address-cells = <1>;
41 #size-cells = <0>;
42
43 pm6150_pon: pon@800 {
44 compatible = "qcom,pm8998-pon";
45 reg = <0x800>;
46 mode-bootloader = <0x2>;
47 mode-recovery = <0x1>;
48
49 pm6150_pwrkey: pwrkey {
50 compatible = "qcom,pm8941-pwrkey";
51 interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
52 debounce = <15625>;
53 bias-pull-up;
54 linux,code = <KEY_POWER>;
55 };
56
57 pm6150_resin: resin {
58 compatible = "qcom,pm8941-resin";
59 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
60 debounce = <15625>;
61 bias-pull-up;
62 status = "disabled";
63 };
64 };
65
66 pm6150_temp: temp-alarm@2400 {
67 compatible = "qcom,spmi-temp-alarm";
68 reg = <0x2400>;
69 interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>;
70 io-channels = <&pm6150_adc ADC5_DIE_TEMP>;
71 io-channel-names = "thermal";
72 #thermal-sensor-cells = <0>;
73 };
74
75 pm6150_adc: adc@3100 {
76 compatible = "qcom,spmi-adc5";
77 reg = <0x3100>;
78 interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
79 #address-cells = <1>;
80 #size-cells = <0>;
81 #io-channel-cells = <1>;
82
83 channel@6 {
84 reg = <ADC5_DIE_TEMP>;
85 label = "die_temp";
86 };
87 };
88
89 pm6150_adc_tm: adc-tm@3500 {
90 compatible = "qcom,spmi-adc-tm5";
91 reg = <0x3500>;
92 interrupts = <0x0 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
93 #thermal-sensor-cells = <1>;
94 #address-cells = <1>;
95 #size-cells = <0>;
96 status = "disabled";
97 };
98
99 pm6150_rtc: rtc@6000 {
100 compatible = "qcom,pm8941-rtc";
101 reg = <0x6000>, <0x6100>;
102 reg-names = "rtc", "alarm";
103 interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>;
104 status = "disabled";
105 };
106
107 pm6150_gpios: gpio@c000 {
108 compatible = "qcom,pm6150-gpio", "qcom,spmi-gpio";
109 reg = <0xc000>;
110 gpio-controller;
111 gpio-ranges = <&pm6150_gpios 0 0 10>;
112 #gpio-cells = <2>;
113 interrupt-controller;
114 #interrupt-cells = <2>;
115 };
116 };
117
118 pm6150_lsid1: pmic@1 {
119 compatible = "qcom,pm6150", "qcom,spmi-pmic";
120 reg = <0x1 SPMI_USID>;
121 #address-cells = <1>;
122 #size-cells = <0>;
123 };
124};