xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/pmiv0104.dtsi (revision 6589b3d76db2d6adbf8f2084c303fb24252a0dc6)
1*8f42f255SLuca Weiss// SPDX-License-Identifier: BSD-3-Clause
2*8f42f255SLuca Weiss/*
3*8f42f255SLuca Weiss * Copyright (c) 2025, Luca Weiss <luca.weiss@fairphone.com>
4*8f42f255SLuca Weiss */
5*8f42f255SLuca Weiss
6*8f42f255SLuca Weiss#include <dt-bindings/interrupt-controller/irq.h>
7*8f42f255SLuca Weiss#include <dt-bindings/spmi/spmi.h>
8*8f42f255SLuca Weiss
9*8f42f255SLuca Weiss/ {
10*8f42f255SLuca Weiss	thermal-zones {
11*8f42f255SLuca Weiss		pmiv0104-thermal {
12*8f42f255SLuca Weiss			polling-delay-passive = <100>;
13*8f42f255SLuca Weiss
14*8f42f255SLuca Weiss			thermal-sensors = <&pmiv0104_temp_alarm>;
15*8f42f255SLuca Weiss
16*8f42f255SLuca Weiss			trips {
17*8f42f255SLuca Weiss				trip0 {
18*8f42f255SLuca Weiss					temperature = <95000>;
19*8f42f255SLuca Weiss					hysteresis = <0>;
20*8f42f255SLuca Weiss					type = "passive";
21*8f42f255SLuca Weiss				};
22*8f42f255SLuca Weiss
23*8f42f255SLuca Weiss				trip1 {
24*8f42f255SLuca Weiss					temperature = <115000>;
25*8f42f255SLuca Weiss					hysteresis = <0>;
26*8f42f255SLuca Weiss					type = "hot";
27*8f42f255SLuca Weiss				};
28*8f42f255SLuca Weiss
29*8f42f255SLuca Weiss				trip2 {
30*8f42f255SLuca Weiss					/*
31*8f42f255SLuca Weiss					 * Current Linux driver currently only supports up to
32*8f42f255SLuca Weiss					 * 125°C, should be updated to 145°C once available.
33*8f42f255SLuca Weiss					 */
34*8f42f255SLuca Weiss					temperature = <125000>;
35*8f42f255SLuca Weiss					hysteresis = <0>;
36*8f42f255SLuca Weiss					type = "critical";
37*8f42f255SLuca Weiss				};
38*8f42f255SLuca Weiss			};
39*8f42f255SLuca Weiss		};
40*8f42f255SLuca Weiss	};
41*8f42f255SLuca Weiss};
42*8f42f255SLuca Weiss
43*8f42f255SLuca Weiss&spmi_bus {
44*8f42f255SLuca Weiss	pmic@PMIV0104_SID {
45*8f42f255SLuca Weiss		compatible = "qcom,pmiv0104", "qcom,spmi-pmic";
46*8f42f255SLuca Weiss		reg = <PMIV0104_SID SPMI_USID>;
47*8f42f255SLuca Weiss		#address-cells = <1>;
48*8f42f255SLuca Weiss		#size-cells = <0>;
49*8f42f255SLuca Weiss
50*8f42f255SLuca Weiss		pmiv0104_temp_alarm: temp-alarm@a00 {
51*8f42f255SLuca Weiss			compatible = "qcom,spmi-temp-alarm";
52*8f42f255SLuca Weiss			reg = <0xa00>;
53*8f42f255SLuca Weiss			interrupts = <PMIV0104_SID 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
54*8f42f255SLuca Weiss			#thermal-sensor-cells = <0>;
55*8f42f255SLuca Weiss		};
56*8f42f255SLuca Weiss
57*8f42f255SLuca Weiss		pmiv0104_gpios: gpio@8800 {
58*8f42f255SLuca Weiss			compatible = "qcom,pmiv0104-gpio", "qcom,spmi-gpio";
59*8f42f255SLuca Weiss			reg = <0x8800>;
60*8f42f255SLuca Weiss			gpio-controller;
61*8f42f255SLuca Weiss			gpio-ranges = <&pmiv0104_gpios 0 0 10>;
62*8f42f255SLuca Weiss			#gpio-cells = <2>;
63*8f42f255SLuca Weiss			interrupt-controller;
64*8f42f255SLuca Weiss			#interrupt-cells = <2>;
65*8f42f255SLuca Weiss		};
66*8f42f255SLuca Weiss
67*8f42f255SLuca Weiss		pmiv0104_eusb2_repeater: phy@fd00 {
68*8f42f255SLuca Weiss			compatible = "qcom,pmiv0104-eusb2-repeater";
69*8f42f255SLuca Weiss			reg = <0xfd00>;
70*8f42f255SLuca Weiss			#phy-cells = <0>;
71*8f42f255SLuca Weiss		};
72*8f42f255SLuca Weiss	};
73*8f42f255SLuca Weiss};
74