2020-02-28 06:15:00

by Christian Hewitt

[permalink] [raw]
Subject: [PATCH] arm64: dts: meson: add thermal zones to gxl-s905x-khadas-vim

Add thermal zones to the VIM1 board, copying the zone config from the
existing VIM2 board.

Suggested-by: Nick Xie <[email protected]>
Signed-off-by: Christian Hewitt <[email protected]>
---
.../dts/amlogic/meson-gxl-s905x-khadas-vim.dts | 50 ++++++++++++++++++++++
1 file changed, 50 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
index 440bc23..2c198c4 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
@@ -6,6 +6,7 @@
/dts-v1/;

#include <dt-bindings/input/input.h>
+#include <dt-bindings/thermal/thermal.h>

#include "meson-gxl-s905x-p212.dtsi"

@@ -63,6 +64,39 @@
};
};
};
+
+ thermal-zones {
+ cpu-thermal {
+ polling-delay-passive = <250>; /* milliseconds */
+ polling-delay = <1000>; /* milliseconds */
+
+ thermal-sensors = <&scpi_sensors 0>;
+
+ trips {
+ cpu_alert0: cpu-alert0 {
+ temperature = <70000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "active";
+ };
+
+ cpu_alert1: cpu-alert1 {
+ temperature = <80000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ map0 {
+ trip = <&cpu_alert1>;
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+ };
};

&cec_AO {
@@ -72,6 +106,22 @@
hdmi-phandle = <&hdmi_tx>;
};

+&cpu0 {
+ #cooling-cells = <2>;
+};
+
+&cpu1 {
+ #cooling-cells = <2>;
+};
+
+&cpu2 {
+ #cooling-cells = <2>;
+};
+
+&cpu3 {
+ #cooling-cells = <2>;
+};
+
&hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
--
2.7.4


2020-03-03 14:42:52

by Neil Armstrong

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: meson: add thermal zones to gxl-s905x-khadas-vim

Hi,

On 28/02/2020 07:12, Christian Hewitt wrote:
> Add thermal zones to the VIM1 board, copying the zone config from the
> existing VIM2 board.
>
> Suggested-by: Nick Xie <[email protected]>
> Signed-off-by: Christian Hewitt <[email protected]>
> ---
> .../dts/amlogic/meson-gxl-s905x-khadas-vim.dts | 50 ++++++++++++++++++++++
> 1 file changed, 50 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
> index 440bc23..2c198c4 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
> @@ -6,6 +6,7 @@
> /dts-v1/;
>
> #include <dt-bindings/input/input.h>
> +#include <dt-bindings/thermal/thermal.h>
>
> #include "meson-gxl-s905x-p212.dtsi"
>
> @@ -63,6 +64,39 @@
> };
> };
> };
> +
> + thermal-zones {
> + cpu-thermal {
> + polling-delay-passive = <250>; /* milliseconds */
> + polling-delay = <1000>; /* milliseconds */
> +
> + thermal-sensors = <&scpi_sensors 0>;
> +
> + trips {
> + cpu_alert0: cpu-alert0 {
> + temperature = <70000>; /* millicelsius */
> + hysteresis = <2000>; /* millicelsius */
> + type = "active";
> + };
> +
> + cpu_alert1: cpu-alert1 {
> + temperature = <80000>; /* millicelsius */
> + hysteresis = <2000>; /* millicelsius */
> + type = "passive";
> + };
> + };
> +
> + cooling-maps {
> + map0 {
> + trip = <&cpu_alert1>;
> + cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
> + <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
> + <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
> + <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
> + };
> + };
> + };
> + };
> };
>
> &cec_AO {
> @@ -72,6 +106,22 @@
> hdmi-phandle = <&hdmi_tx>;
> };
>
> +&cpu0 {
> + #cooling-cells = <2>;
> +};
> +
> +&cpu1 {
> + #cooling-cells = <2>;
> +};
> +
> +&cpu2 {
> + #cooling-cells = <2>;
> +};
> +
> +&cpu3 {
> + #cooling-cells = <2>;
> +};
> +
> &hdmi_tx {
> status = "okay";
> pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
>

Following the g12a/g12b/sm1 work, this should go into the meson-gx.dtsi instead, with some bits in meson-gxm.dtsi
to handle the second spu cluster.

Neil