The PM8916 and PMS405 PMIC GPIOs are interrupt controllers, as described in the bindings and used by the driver. Drop the interrupts (apparently copied from downstream tree), just like in commit 61d2ca503d0b ("arm64: dts: qcom: fix pm8150 gpio interrupts"): qcs404-evb-4000.dtb: gpio@c000: 'interrupts' does not match any of the regexes: '-state$', 'pinctrl-[0-9]+' qcs404-evb-4000.dtb: gpio@c000: 'interrupt-controller' is a required property Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220508135932.132378-4-krzysztof.kozlowski@linaro.org
141 lines
2.9 KiB
Plaintext
141 lines
2.9 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0
|
|
// Copyright (c) 2018, Linaro Limited
|
|
|
|
#include <dt-bindings/spmi/spmi.h>
|
|
#include <dt-bindings/input/linux-event-codes.h>
|
|
#include <dt-bindings/iio/qcom,spmi-vadc.h>
|
|
#include <dt-bindings/thermal/thermal.h>
|
|
|
|
/ {
|
|
thermal-zones {
|
|
pms405-thermal {
|
|
polling-delay-passive = <250>;
|
|
polling-delay = <1000>;
|
|
|
|
thermal-sensors = <&pms405_temp>;
|
|
|
|
trips {
|
|
pms405_alert0: pms405-alert0 {
|
|
temperature = <105000>;
|
|
hysteresis = <2000>;
|
|
type = "passive";
|
|
};
|
|
pms405_crit: pms405-crit {
|
|
temperature = <125000>;
|
|
hysteresis = <2000>;
|
|
type = "critical";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&spmi_bus {
|
|
pms405_0: pms405@0 {
|
|
compatible = "qcom,pms405", "qcom,spmi-pmic";
|
|
reg = <0x0 SPMI_USID>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pms405_gpios: gpio@c000 {
|
|
compatible = "qcom,pms405-gpio", "qcom,spmi-gpio";
|
|
reg = <0xc000>;
|
|
gpio-controller;
|
|
gpio-ranges = <&pms405_gpios 0 0 12>;
|
|
#gpio-cells = <2>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
};
|
|
|
|
pon@800 {
|
|
compatible = "qcom,pms405-pon";
|
|
reg = <0x0800>;
|
|
mode-bootloader = <0x2>;
|
|
mode-recovery = <0x1>;
|
|
|
|
pwrkey {
|
|
compatible = "qcom,pm8941-pwrkey";
|
|
interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
|
|
debounce = <15625>;
|
|
bias-pull-up;
|
|
linux,code = <KEY_POWER>;
|
|
};
|
|
};
|
|
|
|
pms405_temp: temp-alarm@2400 {
|
|
compatible = "qcom,spmi-temp-alarm";
|
|
reg = <0x2400>;
|
|
interrupts = <0 0x24 0 IRQ_TYPE_EDGE_RISING>;
|
|
io-channels = <&pms405_adc ADC5_DIE_TEMP>;
|
|
io-channel-names = "thermal";
|
|
#thermal-sensor-cells = <0>;
|
|
};
|
|
|
|
pms405_adc: adc@3100 {
|
|
compatible = "qcom,pms405-adc", "qcom,spmi-adc-rev2";
|
|
reg = <0x3100>;
|
|
interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
#io-channel-cells = <1>;
|
|
|
|
ref_gnd@0 {
|
|
reg = <ADC5_REF_GND>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
vref_1p25@1 {
|
|
reg = <ADC5_1P25VREF>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pon_1: vph_pwr@131 {
|
|
reg = <ADC5_VPH_PWR>;
|
|
qcom,pre-scaling = <1 3>;
|
|
};
|
|
|
|
die_temp@6 {
|
|
reg = <ADC5_DIE_TEMP>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pa_therm1: thermistor1@77 {
|
|
reg = <ADC5_AMUX_THM1_100K_PU>;
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <200>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
pa_therm3: thermistor3@79 {
|
|
reg = <ADC5_AMUX_THM3_100K_PU>;
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <200>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
|
|
xo_therm: xo_temp@76 {
|
|
reg = <ADC5_XO_THERM_100K_PU>;
|
|
qcom,ratiometric;
|
|
qcom,hw-settle-time = <200>;
|
|
qcom,pre-scaling = <1 1>;
|
|
};
|
|
};
|
|
|
|
rtc@6000 {
|
|
compatible = "qcom,pm8941-rtc";
|
|
reg = <0x6000>;
|
|
reg-names = "rtc", "alarm";
|
|
interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
|
|
};
|
|
};
|
|
|
|
pms405_1: pms405@1 {
|
|
compatible = "qcom,pms405", "qcom,spmi-pmic";
|
|
reg = <0x1 SPMI_USID>;
|
|
|
|
pms405_spmi_regulators: regulators {
|
|
compatible = "qcom,pms405-regulators";
|
|
};
|
|
};
|
|
};
|