xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/pm6350.dtsi (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1d8a3c775SLuca Weiss// SPDX-License-Identifier: BSD-3-Clause
2d8a3c775SLuca Weiss/*
3d8a3c775SLuca Weiss * Copyright (c) 2021, Luca Weiss <luca@z3ntu.xyz>
4d8a3c775SLuca Weiss */
5d8a3c775SLuca Weiss
6*f6e2d691SMarijn Suijten#include <dt-bindings/input/input.h>
7d8a3c775SLuca Weiss#include <dt-bindings/spmi/spmi.h>
8d8a3c775SLuca Weiss
916c0c46fSLuca Weiss/ {
1016c0c46fSLuca Weiss	thermal-zones {
1116c0c46fSLuca Weiss		pm6350-thermal {
1216c0c46fSLuca Weiss			polling-delay-passive = <100>;
1316c0c46fSLuca Weiss
1416c0c46fSLuca Weiss			thermal-sensors = <&pm6350_temp>;
1516c0c46fSLuca Weiss
1616c0c46fSLuca Weiss			trips {
1716c0c46fSLuca Weiss				trip0 {
1816c0c46fSLuca Weiss					temperature = <95000>;
1916c0c46fSLuca Weiss					hysteresis = <0>;
2016c0c46fSLuca Weiss					type = "passive";
2116c0c46fSLuca Weiss				};
2216c0c46fSLuca Weiss
2316c0c46fSLuca Weiss				trip1 {
2416c0c46fSLuca Weiss					temperature = <115000>;
2516c0c46fSLuca Weiss					hysteresis = <0>;
2616c0c46fSLuca Weiss					type = "hot";
2716c0c46fSLuca Weiss				};
2816c0c46fSLuca Weiss
2916c0c46fSLuca Weiss				trip2 {
3016c0c46fSLuca Weiss					temperature = <125000>;
3116c0c46fSLuca Weiss					hysteresis = <0>;
3216c0c46fSLuca Weiss					type = "critical";
3316c0c46fSLuca Weiss				};
3416c0c46fSLuca Weiss			};
3516c0c46fSLuca Weiss		};
3616c0c46fSLuca Weiss	};
3716c0c46fSLuca Weiss};
3816c0c46fSLuca Weiss
39d8a3c775SLuca Weiss&spmi_bus {
40d8a3c775SLuca Weiss	pmic@0 {
41d8a3c775SLuca Weiss		compatible = "qcom,pm6350", "qcom,spmi-pmic";
42d8a3c775SLuca Weiss		reg = <0x0 SPMI_USID>;
43d8a3c775SLuca Weiss		#address-cells = <1>;
44d8a3c775SLuca Weiss		#size-cells = <0>;
45d8a3c775SLuca Weiss
46d8a3c775SLuca Weiss		pm6350_pon: pon@800 {
47d8a3c775SLuca Weiss			compatible = "qcom,pm8998-pon";
48d8a3c775SLuca Weiss			reg = <0x800>;
49d8a3c775SLuca Weiss			mode-bootloader = <0x2>;
50d8a3c775SLuca Weiss			mode-recovery = <0x1>;
51d8a3c775SLuca Weiss
52d8a3c775SLuca Weiss			pm6350_pwrkey: pwrkey {
53d8a3c775SLuca Weiss				compatible = "qcom,pm8941-pwrkey";
54d8a3c775SLuca Weiss				interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>;
55d8a3c775SLuca Weiss				debounce = <15625>;
56d8a3c775SLuca Weiss				bias-pull-up;
57d8a3c775SLuca Weiss				linux,code = <KEY_POWER>;
58d8a3c775SLuca Weiss			};
59d8a3c775SLuca Weiss
60d8a3c775SLuca Weiss			pm6350_resin: resin {
61d8a3c775SLuca Weiss				compatible = "qcom,pm8941-resin";
62d8a3c775SLuca Weiss				interrupts = <0x0 0x8 0x1 IRQ_TYPE_EDGE_BOTH>;
63d8a3c775SLuca Weiss				debounce = <15625>;
64d8a3c775SLuca Weiss				bias-pull-up;
65d8a3c775SLuca Weiss				status = "disabled";
66d8a3c775SLuca Weiss			};
67d8a3c775SLuca Weiss		};
68d8a3c775SLuca Weiss
6916c0c46fSLuca Weiss		pm6350_temp: temp-alarm@2400 {
7016c0c46fSLuca Weiss			compatible = "qcom,spmi-temp-alarm";
7116c0c46fSLuca Weiss			reg = <0x2400>;
7216c0c46fSLuca Weiss			interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
7316c0c46fSLuca Weiss			#thermal-sensor-cells = <0>;
7416c0c46fSLuca Weiss		};
7516c0c46fSLuca Weiss
76c95243eeSKrzysztof Kozlowski		pm6350_gpios: gpio@c000 {
77019102a9SKrzysztof Kozlowski			compatible = "qcom,pm6350-gpio", "qcom,spmi-gpio";
78d8a3c775SLuca Weiss			reg = <0xc000>;
79d8a3c775SLuca Weiss			gpio-controller;
80b07bfd8eSKrzysztof Kozlowski			gpio-ranges = <&pm6350_gpios 0 0 9>;
81d8a3c775SLuca Weiss			#gpio-cells = <2>;
82d8a3c775SLuca Weiss			interrupt-controller;
83d8a3c775SLuca Weiss			#interrupt-cells = <2>;
84d8a3c775SLuca Weiss		};
85d8a3c775SLuca Weiss	};
86d8a3c775SLuca Weiss
87d8a3c775SLuca Weiss	pmic@1 {
88d8a3c775SLuca Weiss		compatible = "qcom,pm6350", "qcom,spmi-pmic";
89d8a3c775SLuca Weiss		reg = <0x1 SPMI_USID>;
90d8a3c775SLuca Weiss		#address-cells = <1>;
91d8a3c775SLuca Weiss		#size-cells = <0>;
92d8a3c775SLuca Weiss	};
93d8a3c775SLuca Weiss};
94