Skip to contentSkip to conversation

ARM: dts: exynos5422-odroidxu3: Add pwm-fan node

PATCH Superseded Anand Moon 3 participants 11 messages Jun 14, 2015 – Jun 15, 2015

Subsystems (2)

v6 of 7 Superseded Latest is v7 →

lore
Share & tools
lore

Anand Moon

author
#0 lore raw

PATCH v6 1/4 ARM: dts: exynos5422-odroidxu3: Add pwm-fan node

Add pwm-fan node to the Odroid-XU3 board.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 10 ++++++++++
 1 file changed, 10 insertions(+)
arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +10 -0
index deb8d78..a2f9941 100644
@@ -107,6 +107,15 @@
 			clocks = <&i2s0 CLK_I2S_CDCLK>;
 		};
 	};
+
+	fan0: pwm-fan {
+		compatible = "pwm-fan";
+		pwms = <&pwm 0 20972 0>;
+		cooling-min-state = <0>;
+		cooling-max-state = <3>;
+		#cooling-cells = <2>;
+		cooling-levels = <0 130 170 230>;
+	};
 };
 
 &clock_audss {
@@ -461,6 +470,7 @@
 	 */
 	pinctrl-0 = <&pwm0_out &pwm1_out &pwm2_out &pwm3_out>;
 	pinctrl-names = "default";
+	samsung,pwm-outputs = <0>;
 	status = "okay";
 };
 
Signature · 1 line
2.4.3
author
#1 lore raw

PATCH v6 2/4 ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +25 -0
index a2f9941..b6570fc 100644
@@ -474,6 +474,31 @@
 	status = "okay";
 };
 
+&tmu_cpu0 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu1 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu2 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu3 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_gpu {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
 &rtc {
 	status = "okay";
 	clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
Signature · 1 line
2.4.3
#2 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

Quoted 20 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

Quoted 5 lines

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

Why did you took my email and pasted it here?
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/343702.html

It is written now in first person so it pretends that you wrote this. You are actually doing this for second time - taking my reply and putting into commit message or changelog. Why?

And where is proper changelog?

Krzysztof

Quoted 41 lines
---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +25 -0
index a2f9941..b6570fc 100644
@@ -474,6 +474,31 @@
 	status = "okay";
 };
 
+&tmu_cpu0 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu1 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu2 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_cpu3 {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
+&tmu_gpu {
+	vtmu-supply = <&ldo7_reg>;
+	status = "okay";
+};
+
 &rtc {
 	status = "okay";
 	clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
author
#3 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

hi Krzysztof

Quoted 27 lines · Krzysztof Kozlowski
Quoted 20 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

Quoted 5 lines

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

Quoted 9 lines

Why did you took my email and pasted it here?
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/343702.html

It is written now in first person so it pretends that you wrote this. You are actually doing this for second time - taking my reply and putting into commit message or changelog. Why?

And where is proper changelog?

Sorry: My intention was never to take credit on what your guidance and your pointers.
I value ever input of your and try not to repeat the mistakes I am repeating. I will send updated version soon.

-Anand Moon

Quoted 44 lines

Krzysztof

Quoted 41 lines
---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +25 -0
index a2f9941..b6570fc 100644
@@ -474,6 +474,31 @@
      status = "okay";
 };
 
+&tmu_cpu0 {
+     vtmu-supply = <&ldo7_reg>;
+     status = "okay";
+};
+
+&tmu_cpu1 {
+     vtmu-supply = <&ldo7_reg>;
+     status = "okay";
+};
+
+&tmu_cpu2 {
+     vtmu-supply = <&ldo7_reg>;
+     status = "okay";
+};
+
+&tmu_cpu3 {
+     vtmu-supply = <&ldo7_reg>;
+     status = "okay";
+};
+
+&tmu_gpu {
+     vtmu-supply = <&ldo7_reg>;
+     status = "okay";
+};
+
 &rtc {
      status = "okay";
      clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
#4 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

Quoted 37 lines · Anand Moon

hi Krzysztof

Quoted 34 lines · Krzysztof Kozlowski
Quoted 20 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

Quoted 5 lines

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

Why did you took my email and pasted it here?
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/343702.html

It is written now in first person so it pretends that you wrote this. You are actually doing this for second time - taking my reply and putting into commit message or changelog. Why?

Quoted 7 lines
Quoted 2 lines

And where is proper changelog?

Sorry: My intention was never to take credit on what your guidance and your pointers.
I value ever input of your and try not to repeat the mistakes I am repeating. I will send updated version soon.

If you want to quote me, then it's fine. But please indicate that this is a quote.

Thanks for resending. Later I'll give the patchset a try on my XU3-Lite.

Best regards,
Krzysztof

#5 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

In reply to Anand Moon
Quoted 5 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

This does not look right.
You put this "Tested-by" since beginning of this patchset (v1) but first it was LDO10. Then you proposed LDO18 and now you use LDO7 from my suggestion. Which of this was tested by Markus because I cannot find his emails with it on LKML?

Krzysztof

Quoted 23 lines

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
author
#6 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

hi Krzysztof

Quoted 4 lines · Krzysztof Kozlowski
Quoted 3 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

Quoted 8 lines
Quoted 2 lines

This does not look right.
You put this "Tested-by" since beginning of this patchset (v1) but first it was LDO10. Then you proposed LDO18 and now you use LDO7 from my suggestion. Which of this was tested by Markus because I cannot find his emails with it on LKML?

Markus Reichl tested the earlier version with LDO10. Commit logs got carry forward by mistake.

-Anand Moon

Quoted 27 lines

Krzysztof

Quoted 23 lines

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
#7 lore raw

Re: [PATCHv6 2/4] ARM: dts: exynos5422-odroidxu3: Enable TMU at Exynos5422 base

Hi Anand, Krzysztof

Am 15.06.2015 um 04:23 schrieb Anand Moon:

Quoted 10 lines

hi Krzysztof

Quoted 7 lines · Krzysztof Kozlowski
Quoted 5 lines · Anand Moon

This changes enables TMU IP block on the Exynos5422 Odroid-XU3 device.

Quoted 7 lines
Quoted 5 lines

This does not look right.
You put this "Tested-by" since beginning of this patchset (v1) but first it was LDO10. Then you proposed LDO18 and now you use LDO7 from my suggestion. Which of this was tested by Markus because I cannot find his emails with it on LKML?

Markus Reichl tested the earlier version with LDO10.

This is right.

Quoted 33 lines

Commit logs got carry forward by mistake.

-Anand Moon

Quoted 27 lines

Krzysztof

Quoted 23 lines

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5: Use LDO7 regulator instead of LD010.

The output of LDO18 goes to VDD_EMMC_1V8. This is not regulator for TMU.

I think the schematics are missing some of details but it can be deducted that:
1. TEMP SE is supplied by VDD18_TS power domain. It consists of 5 pairs of pins (XTSTEST_OUT[0-4], XTSEXT_RES[0-4]).
2. The VDD18_TS01, VDD18_TS23 and VDD18_TS4 are wired to the LDO7 of S2MPS11 PMIC.
3. I confirmed with the Exynos5422 datasheet that these VDD18_TS{01,23,4} supply the XTSTEST pins (OUT and RES).

So the LDO7 it is... but before using it there is a caveat. The LDO7 is also connected to VDD of MIPI, HDMI and few more. So when you use this regulator in TMU it may be turned off by TMU driver (e.g. during unbind). In such case these other blocks also should be tested and checked whether they take this regulator and enable it.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 25 ++++++++++++++++++++++
 1 file changed, 25 insertions(+)
Signature · 1 line
Markus Reichl
author
#8 lore raw

PATCH v6 3/4 ARM: dts: exynos5422-odroidxu3: Define default thermal-zones

In reply to Anand Moon

Trip points corresponding to the one defined in the exynos_tmu_data.c for Exynos5422 have been included so define thermal-zones attribute.

---
Changes rebase on git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung branch for-next Changes from v5 : Rename exynos5-cpu-thermal.dtsi to exynos5422-cpu-thermal.dtsi
as this file belongs to exynos5422 boards

---
 arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi | 59 +++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)
 create mode 100644 arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi
arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi new file +59 -0
new file mode 100644
index 0000000..c73393a
@@ -0,0 +1,59 @@
+/*
+ * Device tree sources for Exynos5422 thermal zone
+ *
+ * Copyright (c) 2015 Lukasz Majewski <[email protected]>
+ *			Anand Moon <[email protected]>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ */
+
+#include <dt-bindings/thermal/thermal.h>
+
+/ {
+	thermal-zones {
+		cpu0_thermal: cpu0-thermal {
+			thermal-sensors = <&tmu_cpu0 0>;
+			polling-delay-passive = <0>;
+			polling-delay = <0>;
+			trips {
+				cpu_alert0: cpu-alert-0 {
+					temperature = <50000>; /* millicelsius */
+					hysteresis = <5000>; /* millicelsius */
+					type = "active";
+				};
+				cpu_alert1: cpu-alert-1 {
+					temperature = <60000>; /* millicelsius */
+					hysteresis = <5000>; /* millicelsius */
+					type = "active";
+				};
+				cpu_alert2: cpu-alert-2 {
+					temperature = <70000>; /* millicelsius */
+					hysteresis = <5000>; /* millicelsius */
+					type = "active";
+				};
+				cpu_crit0: cpu-crit-0 {
+					temperature = <120000>; /* millicelsius */
+					hysteresis = <0>; /* millicelsius */
+					type = "critical";
+				};
+			};
+			cooling-maps {
+				map0 {
+				     trip = <&cpu_alert0>;
+				     cooling-device = <&fan0 0 1>;
+				};
+				map1 {
+				     trip = <&cpu_alert1>;
+				     cooling-device = <&fan0 1 2>;
+				};
+				map2 {
+				     trip = <&cpu_alert2>;
+				     cooling-device = <&fan0 2 3>;
+				};
+			};
+		};
+	};
+};
Signature · 1 line
2.4.3
author
#9 lore raw

PATCH v6 4/4 ARM: dts: exynos5422-odroidxu3: Enable thermal-zones

In reply to Anand Moon

Include exynos5422-cpu-thermal.dtsi to enable thermal_zone support.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 1 +
 1 file changed, 1 insertion(+)
arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi +1 -0
index b6570fc..1565667 100644
@@ -15,6 +15,7 @@
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/sound/samsung-i2s.h>
 #include "exynos5800.dtsi"
+#include "exynos5422-cpu-thermal.dtsi"
 
 / {
 	memory {
Signature · 1 line
2.4.3
Acked-by on v6 4/4
#10 lore raw

Re: [PATCHv6 4/4] ARM: dts: exynos5422-odroidxu3: Enable thermal-zones

Quoted 8 lines · Anand Moon

Include exynos5422-cpu-thermal.dtsi to enable thermal_zone support.

---
 arch/arm/boot/dts/exynos5422-odroidxu3-common.dtsi | 1 +
 1 file changed, 1 insertion(+)

Best regards,
Krzysztof