Commit 822c8f2a authored by Matthias Kaehlcke's avatar Matthias Kaehlcke Committed by Bjorn Andersson

arm64: dts: qcom: sc7180: coachz: Add thermal config for skin temperature

Add ADC and thermal monitor configuration for skin temperature,
plus a thermal zone that monitors the skin temperature and uses
the big cores as cooling devices.

CoachZ rev1 is stuffed with an incompatible thermistor for the
skin temperature, disable the thermal zone for rev1 to avoid
the use of bogus temperature values.
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Signed-off-by: default avatarMatthias Kaehlcke <mka@chromium.org>
Link: https://lore.kernel.org/r/20210414111007.v1.1.I1a438604a79025307f177347d45815987b105cb5@changeidSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
parent c1124180
...@@ -23,6 +23,15 @@ &charger_thermal { ...@@ -23,6 +23,15 @@ &charger_thermal {
status = "disabled"; status = "disabled";
}; };
/*
* CoachZ rev1 is stuffed with a 47k NTC as thermistor for skin temperature,
* which currently is not supported by the PM6150 ADC driver. Disable the
* skin temperature thermal zone to avoid using bogus temperature values.
*/
&skin_temp_thermal {
status = "disabled";
};
&tlmm { &tlmm {
gpio-line-names = "HUB_RST_L", gpio-line-names = "HUB_RST_L",
"AP_RAM_ID0", "AP_RAM_ID0",
......
...@@ -25,6 +25,50 @@ adau7002: audio-codec-1 { ...@@ -25,6 +25,50 @@ adau7002: audio-codec-1 {
IOVDD-supply = <&pp1800_l15a>; IOVDD-supply = <&pp1800_l15a>;
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
}; };
thermal-zones {
skin_temp_thermal: skin-temp-thermal {
polling-delay-passive = <250>;
polling-delay = <0>;
thermal-sensors = <&pm6150_adc_tm 1>;
sustainable-power = <814>;
trips {
skin_temp_alert0: trip-point0 {
temperature = <42000>;
hysteresis = <1000>;
type = "passive";
};
skin_temp_alert1: trip-point1 {
temperature = <45000>;
hysteresis = <1000>;
type = "passive";
};
skin-temp-crit {
temperature = <60000>;
hysteresis = <1000>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&skin_temp_alert0>;
cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map1 {
trip = <&skin_temp_alert1>;
cooling-device = <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
}; };
&ap_spi_fp { &ap_spi_fp {
...@@ -77,6 +121,25 @@ &panel { ...@@ -77,6 +121,25 @@ &panel {
compatible = "boe,nv110wtm-n61"; compatible = "boe,nv110wtm-n61";
}; };
&pm6150_adc {
skin-temp-thermistor@4e {
reg = <ADC5_AMUX_THM2_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time = <200>;
};
};
&pm6150_adc_tm {
status = "okay";
skin-temp-thermistor@1 {
reg = <1>;
io-channels = <&pm6150_adc ADC5_AMUX_THM2_100K_PU>;
qcom,ratiometric;
qcom,hw-settle-time-us = <200>;
};
};
&pp3300_dx_edp { &pp3300_dx_edp {
gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>; gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment