On Sat, Oct 29, 2022 at 04:29:05PM +0200, Konrad Dybcio wrote: > > > On 29.10.2022 07:14, Manivannan Sadhasivam wrote: > > Add thermal zone support by making use of the thermistor SYS_THERM6. > > Based on experiments, this thermistor seems to reflect the actual > > surface temperature of the laptop. > > > > For the cooling device, all BIG CPU cores are throttle down to keep the > s/throttle/throttled > > Is it okay to let the 4xA78C run at full throttle in thermal emergencies though? I don't get it. Can you elaborate? > > temperature at a sane level. > > > > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > > --- > > .../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 46 +++++++++++++++++++ > > 1 file changed, 46 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > index ca77c19c6d0d..96e2fa72f782 100644 > > --- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > +++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > @@ -29,6 +29,52 @@ backlight { > > pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>; > > }; > > > > + thermal-zones { > > + skin-temp-thermal { > > + polling-delay-passive = <250>; > > + polling-delay = <0>; > > + thermal-sensors = <&pmk8280_adc_tm 5>; > > + > > + trips { > > + skin_temp_alert0: trip-point0 { > > + temperature = <55000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + > > + skin_temp_alert1: trip-point1 { > > + temperature = <58000>; > > + hysteresis = <1000>; > > + type = "passive"; > > + }; > > + > > + skin-temp-crit { > > + temperature = <73000>; > Ouch, I didn't know we were serving burnt fingers at the cafeteria today :D > > Or maybe this just looks scary.. The laptop looks plastic, so maybe it won't cause instant > burns? > 73c is what the reasonable number I came up with after some experiments. At this point the temperature won't burn your finger but crossing this surely would (that's what happening without this series). Thanks, Mani > Konrad > > + hysteresis = <1000>; > > + type = "critical"; > > + }; > > + }; > > + > > + cooling-maps { > > + map0 { > > + trip = <&skin_temp_alert0>; > > + cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > > + }; > > + > > + map1 { > > + trip = <&skin_temp_alert1>; > > + cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, > > + <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > > + }; > > + }; > > + }; > > + }; > > + > > vreg_edp_bl: regulator-edp-bl { > > compatible = "regulator-fixed"; > > -- மணிவண்ணன் சதாசிவம்