Re: [PATCH v1 1/4] arm64: dts: mediatek: cherry: Add platform thermal configuration

From: Chen-Yu Tsai
Date: Wed Mar 08 2023 - 23:56:05 EST


On Thu, Feb 23, 2023 at 10:55 PM AngeloGioacchino Del Regno
<angelogioacchino.delregno@xxxxxxxxxxxxx> wrote:
>
> This platform has three auxiliary NTC thermistors, connected to the
> SoC's ADC pins. Enable the auxadc in order to be able to read the
> ADC values, add a generic-adc-thermal LUT for each and finally assign
> them to the SoC's thermal zones.
>
> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>
> ---
> .../boot/dts/mediatek/mt8195-cherry.dtsi | 124 ++++++++++++++++++
> 1 file changed, 124 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
> index 24669093fbed..ae2052a7160d 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
> @@ -104,6 +104,108 @@ ppvar_sys: regulator-ppvar-sys {
> regulator-boot-on;
> };
>
> + tboard_thermistor1: thermal-sensor-t1 {
> + compatible = "generic-adc-thermal";
> + #thermal-sensor-cells = <0>;
> + io-channels = <&auxadc 0>;
> + io-channel-names = "sensor-channel";
> + temperature-lookup-table = < (-5000) 4241
> + 0 4063
> + 5000 3856
> + 10000 3621
> + 15000 3364
> + 20000 3091
> + 25000 2810
> + 30000 2526
> + 35000 2247
> + 40000 1982
> + 45000 1734
> + 50000 1507
> + 55000 1305
> + 60000 1122
> + 65000 964
> + 70000 827
> + 75000 710
> + 80000 606
> + 85000 519
> + 90000 445
> + 95000 382
> + 100000 330
> + 105000 284
> + 110000 245
> + 115000 213
> + 120000 183
> + 125000 161>;
> + };
> +
> + tboard_thermistor2: thermal-sensor-t2 {
> + compatible = "generic-adc-thermal";
> + #thermal-sensor-cells = <0>;
> + io-channels = <&auxadc 0>;

You are reusing the same channel for all three sensors. That doesn't
make a lot of sense.

Furthermore, the design only has two thermistors, connected to the first
two ADC channels. The first one is located near the SoC; the second one
is near the PMIC.

ChenYu

> + io-channel-names = "sensor-channel";
> + temperature-lookup-table = < (-5000) 4241
> + 0 4063
> + 5000 3856
> + 10000 3621
> + 15000 3364
> + 20000 3091
> + 25000 2810
> + 30000 2526
> + 35000 2247
> + 40000 1982
> + 45000 1734
> + 50000 1507
> + 55000 1305
> + 60000 1122
> + 65000 964
> + 70000 827
> + 75000 710
> + 80000 606
> + 85000 519
> + 90000 445
> + 95000 382
> + 100000 330
> + 105000 284
> + 110000 245
> + 115000 213
> + 120000 183
> + 125000 161>;
> + };
> +
> + tboard_thermistor3: thermal-sensor-t3 {
> + compatible = "generic-adc-thermal";
> + #thermal-sensor-cells = <0>;
> + io-channels = <&auxadc 0>;
> + io-channel-names = "sensor-channel";
> + temperature-lookup-table = < (-5000) 4241
> + 0 4063
> + 5000 3856
> + 10000 3621
> + 15000 3364
> + 20000 3091
> + 25000 2810
> + 30000 2526
> + 35000 2247
> + 40000 1982
> + 45000 1734
> + 50000 1507
> + 55000 1305
> + 60000 1122
> + 65000 964
> + 70000 827
> + 75000 710
> + 80000 606
> + 85000 519
> + 90000 445
> + 95000 382
> + 100000 330
> + 105000 284
> + 110000 245
> + 115000 213
> + 120000 183
> + 125000 161>;
> + };
> +
> usb_vbus: regulator-5v0-usb-vbus {
> compatible = "regulator-fixed";
> regulator-name = "usb-vbus";
> @@ -243,6 +345,10 @@ &gpu {
> mali-supply = <&mt6315_7_vbuck1>;
> };
>
> +&auxadc {
> + status = "okay";
> +};
> +
> &i2c0 {
> status = "okay";
>
> @@ -1074,6 +1180,24 @@ mt6315_7_vbuck1: vbuck1 {
> };
> };
>
> +&thermal_zones {
> + ap_ntc1 {
> + polling-delay = <1000>;
> + polling-delay-passive = <0>;
> + thermal-sensors = <&tboard_thermistor1>;
> + };
> + ap_ntc2 {
> + polling-delay = <1000>;
> + polling-delay-passive = <0>;
> + thermal-sensors = <&tboard_thermistor2>;
> + };
> + ap_ntc3 {
> + polling-delay = <1000>;
> + polling-delay-passive = <0>;
> + thermal-sensors = <&tboard_thermistor3>;
> + };
> +};
> +
> &u3phy0 {
> status = "okay";
> };
> --
> 2.39.2
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel