Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / boot / dts / qcom / pm660l.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2020, Konrad Dybcio
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                 pm660l-thermal {
15                         polling-delay-passive = <250>;
16                         polling-delay = <1000>;
17
18                         thermal-sensors = <&pm660l_temp>;
19
20                         trips {
21                                 pm660l_alert0: pm660l-alert0 {
22                                         temperature = <95000>;
23                                         hysteresis = <2000>;
24                                         type = "passive";
25                                 };
26                                 pm660l_crit: pm660l-crit {
27                                         temperature = <125000>;
28                                         hysteresis = <2000>;
29                                         type = "critical";
30                                 };
31                         };
32                 };
33         };
34 };
35
36 &spmi_bus {
37
38         pmic@2 {
39                 compatible = "qcom,pm660l", "qcom,spmi-pmic";
40                 reg = <0x2 SPMI_USID>;
41                 #address-cells = <1>;
42                 #size-cells = <0>;
43
44                 pm660l_temp: temp-alarm@2400 {
45                         compatible = "qcom,spmi-temp-alarm";
46                         reg = <0x2400>;
47                         interrupts = <0x2 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
48                         #thermal-sensor-cells = <0>;
49                 };
50
51                 pm660l_gpios: gpio@c000 {
52                         compatible = "qcom,pm660l-gpio", "qcom,spmi-gpio";
53                         reg = <0xc000>;
54                         gpio-controller;
55                         gpio-ranges = <&pm660l_gpios 0 0 12>;
56                         #gpio-cells = <2>;
57                         interrupt-controller;
58                         #interrupt-cells = <2>;
59                 };
60         };
61
62         pmic@3 {
63                 compatible = "qcom,pm660l", "qcom,spmi-pmic";
64                 reg = <0x3 SPMI_USID>;
65                 #address-cells = <1>;
66                 #size-cells = <0>;
67
68                 pm660l_lpg: pwm {
69                         compatible = "qcom,pm660l-lpg";
70
71                         status = "disabled";
72                 };
73
74                 pm660l_wled: leds@d800 {
75                         compatible = "qcom,pm660l-wled";
76                         reg = <0xd800>, <0xd900>;
77                         interrupts = <0x3 0xd8 0x1 IRQ_TYPE_EDGE_RISING>,
78                                      <0x3 0xd8 0x2 IRQ_TYPE_EDGE_RISING>;
79                         interrupt-names = "ovp", "short";
80                         label = "backlight";
81
82                         status = "disabled";
83                 };
84
85                 pm660l_spmi_regulators: regulators {
86                         compatible = "qcom,pm660l-regulators";
87                 };
88         };
89 };
90