linux-riscv.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/3] Add D1/T113s thermal sensor controller support
@ 2023-06-10 20:42 Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Maksim Kiselev @ 2023-06-10 20:42 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maksim Kiselev, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, linux-pm, devicetree, linux-arm-kernel,
	linux-sunxi, linux-riscv

This series adds support for Allwinner D1/T113s thermal sensor controller.
THIS controller is similar to the one on H6, but with only one sensor and
uses a different scale and offset values.

v3:
- Fixed SoB tag again

v2:
- Fixed SoB tag
- Moved binding patch before driver changes

v1:
- Initial version

Maxim Kiselev (3):
  dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  thermal: sun8i: Add D1/T113s THS controller support
  riscv: dts: allwinner: d1: Add thermal sensor and thermal zone

 .../thermal/allwinner,sun8i-a83t-ths.yaml     | 20 +++++++++++++-
 .../boot/dts/allwinner/sunxi-d1s-t113.dtsi    | 26 +++++++++++++++++++
 drivers/thermal/sun8i_thermal.c               | 13 ++++++++++
 3 files changed, 58 insertions(+), 1 deletion(-)

-- 
2.39.2


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  2023-06-10 20:42 [PATCH v3 0/3] Add D1/T113s thermal sensor controller support Maksim Kiselev
@ 2023-06-10 20:42 ` Maksim Kiselev
  2023-06-10 22:21   ` Conor Dooley
                     ` (2 more replies)
  2023-06-10 20:42 ` [PATCH v3 2/3] thermal: sun8i: Add D1/T113s THS controller support Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 3/3] riscv: dts: allwinner: d1: Add thermal sensor and thermal zone Maksim Kiselev
  2 siblings, 3 replies; 7+ messages in thread
From: Maksim Kiselev @ 2023-06-10 20:42 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maxim Kiselev, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, linux-pm, devicetree, linux-arm-kernel,
	linux-sunxi, linux-riscv

From: Maxim Kiselev <bigunclemax@gmail.com>

Add a binding for D1/T113s thermal sensor controller.

Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>
---
 .../thermal/allwinner,sun8i-a83t-ths.yaml     | 20 ++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
index fbd4212285e2..001faa37fc27 100644
--- a/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
+++ b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
@@ -16,6 +16,7 @@ properties:
       - allwinner,sun8i-a83t-ths
       - allwinner,sun8i-h3-ths
       - allwinner,sun8i-r40-ths
+      - allwinner,sun20i-d1-ths
       - allwinner,sun50i-a64-ths
       - allwinner,sun50i-a100-ths
       - allwinner,sun50i-h5-ths
@@ -61,6 +62,7 @@ allOf:
         compatible:
           contains:
             enum:
+              - allwinner,sun20i-d1-ths
               - allwinner,sun50i-a100-ths
               - allwinner,sun50i-h6-ths
 
@@ -84,7 +86,9 @@ allOf:
       properties:
         compatible:
           contains:
-            const: allwinner,sun8i-h3-ths
+            enum:
+              - allwinner,sun8i-h3-ths
+              - allwinner,sun20i-d1-ths
 
     then:
       properties:
@@ -103,6 +107,7 @@ allOf:
             enum:
               - allwinner,sun8i-h3-ths
               - allwinner,sun8i-r40-ths
+              - allwinner,sun20i-d1-ths
               - allwinner,sun50i-a64-ths
               - allwinner,sun50i-a100-ths
               - allwinner,sun50i-h5-ths
@@ -159,4 +164,17 @@ examples:
          #thermal-sensor-cells = <1>;
     };
 
+  - |
+    thermal-sensor@2009400 {
+          compatible = "allwinner,sun20i-d1-ths";
+          reg = <0x02009400 0x400>;
+          interrupts = <0 90 0>;
+          clocks = <&ccu 0>;
+          clock-names = "bus";
+          resets = <&ccu 2>;
+          nvmem-cells = <&ths_calibration>;
+          nvmem-cell-names = "calibration";
+          #thermal-sensor-cells = <0>;
+    };
+
 ...
-- 
2.39.2


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v3 2/3] thermal: sun8i: Add D1/T113s THS controller support
  2023-06-10 20:42 [PATCH v3 0/3] Add D1/T113s thermal sensor controller support Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
@ 2023-06-10 20:42 ` Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 3/3] riscv: dts: allwinner: d1: Add thermal sensor and thermal zone Maksim Kiselev
  2 siblings, 0 replies; 7+ messages in thread
From: Maksim Kiselev @ 2023-06-10 20:42 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maxim Kiselev, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, Andre Przywara, linux-pm, devicetree,
	linux-arm-kernel, linux-sunxi, linux-riscv

From: Maxim Kiselev <bigunclemax@gmail.com>

This patch adds a thermal sensor controller support for the D1/T113s,
which is similar to the one on H6, but with only one sensor and
different scale and offset values.

Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>
---
 drivers/thermal/sun8i_thermal.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/thermal/sun8i_thermal.c b/drivers/thermal/sun8i_thermal.c
index 793ddce72132..01cc4e130892 100644
--- a/drivers/thermal/sun8i_thermal.c
+++ b/drivers/thermal/sun8i_thermal.c
@@ -628,6 +628,18 @@ static const struct ths_thermal_chip sun50i_h6_ths = {
 	.calc_temp = sun8i_ths_calc_temp,
 };
 
+static const struct ths_thermal_chip sun20i_d1_ths = {
+	.sensor_num = 1,
+	.has_bus_clk_reset = true,
+	.offset = 188552,
+	.scale = 673,
+	.temp_data_base = SUN50I_H6_THS_TEMP_DATA,
+	.calibrate = sun50i_h6_ths_calibrate,
+	.init = sun50i_h6_thermal_init,
+	.irq_ack = sun50i_h6_irq_ack,
+	.calc_temp = sun8i_ths_calc_temp,
+};
+
 static const struct of_device_id of_ths_match[] = {
 	{ .compatible = "allwinner,sun8i-a83t-ths", .data = &sun8i_a83t_ths },
 	{ .compatible = "allwinner,sun8i-h3-ths", .data = &sun8i_h3_ths },
@@ -636,6 +648,7 @@ static const struct of_device_id of_ths_match[] = {
 	{ .compatible = "allwinner,sun50i-a100-ths", .data = &sun50i_a100_ths },
 	{ .compatible = "allwinner,sun50i-h5-ths", .data = &sun50i_h5_ths },
 	{ .compatible = "allwinner,sun50i-h6-ths", .data = &sun50i_h6_ths },
+	{ .compatible = "allwinner,sun20i-d1-ths", .data = &sun20i_d1_ths },
 	{ /* sentinel */ },
 };
 MODULE_DEVICE_TABLE(of, of_ths_match);
-- 
2.39.2


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v3 3/3] riscv: dts: allwinner: d1: Add thermal sensor and thermal zone
  2023-06-10 20:42 [PATCH v3 0/3] Add D1/T113s thermal sensor controller support Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
  2023-06-10 20:42 ` [PATCH v3 2/3] thermal: sun8i: Add D1/T113s THS controller support Maksim Kiselev
@ 2023-06-10 20:42 ` Maksim Kiselev
  2 siblings, 0 replies; 7+ messages in thread
From: Maksim Kiselev @ 2023-06-10 20:42 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maxim Kiselev, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, linux-pm, devicetree, linux-arm-kernel,
	linux-sunxi, linux-riscv

From: Maxim Kiselev <bigunclemax@gmail.com>

This patch adds a thermal sensor controller node for the D1/T113s.
Also it adds a THS calibration data cell and thermal zone.

Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>
---
 .../boot/dts/allwinner/sunxi-d1s-t113.dtsi    | 26 +++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi b/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi
index 922e8e0e2c09..b893f3325554 100644
--- a/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi
+++ b/arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi
@@ -10,6 +10,7 @@
 #include <dt-bindings/reset/sun8i-de2.h>
 #include <dt-bindings/reset/sun20i-d1-ccu.h>
 #include <dt-bindings/reset/sun20i-d1-r-ccu.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
 	#address-cells = <1>;
@@ -138,6 +139,19 @@ ccu: clock-controller@2001000 {
 			#reset-cells = <1>;
 		};
 
+		ths: thermal-sensor@2009400 {
+			compatible = "allwinner,sun20i-d1-ths";
+			reg = <0x02009400 0x400>;
+			interrupts = <SOC_PERIPHERAL_IRQ(58) IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&ccu CLK_BUS_THS>;
+			clock-names = "bus";
+			resets = <&ccu RST_BUS_THS>;
+			nvmem-cells = <&ths_calibration>;
+			nvmem-cell-names = "calibration";
+			status = "disabled";
+			#thermal-sensor-cells = <0>;
+		};
+
 		dmic: dmic@2031000 {
 			compatible = "allwinner,sun20i-d1-dmic",
 				     "allwinner,sun50i-h6-dmic";
@@ -365,6 +379,10 @@ sid: efuse@3006000 {
 			reg = <0x3006000 0x1000>;
 			#address-cells = <1>;
 			#size-cells = <1>;
+
+			ths_calibration: thermal-sensor-calibration@14 {
+				reg = <0x14 0x4>;
+			};
 		};
 
 		crypto: crypto@3040000 {
@@ -843,4 +861,12 @@ rtc: rtc@7090000 {
 			#clock-cells = <1>;
 		};
 	};
+
+	thermal-zones {
+		cpu_thermal: cpu-thermal {
+			polling-delay-passive = <0>;
+			polling-delay = <0>;
+			thermal-sensors = <&ths 0>;
+		};
+	};
 };
-- 
2.39.2


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
@ 2023-06-10 22:21   ` Conor Dooley
  2023-06-11  9:47   ` Krzysztof Kozlowski
  2023-06-11 10:21   ` Conor Dooley
  2 siblings, 0 replies; 7+ messages in thread
From: Conor Dooley @ 2023-06-10 22:21 UTC (permalink / raw)
  To: Maksim Kiselev
  Cc: linux-kernel, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, linux-pm, devicetree, linux-arm-kernel,
	linux-sunxi, linux-riscv


[-- Attachment #1.1: Type: text/plain, Size: 432 bytes --]

On Sat, Jun 10, 2023 at 11:42:18PM +0300, Maksim Kiselev wrote:
> From: Maxim Kiselev <bigunclemax@gmail.com>
> 
> Add a binding for D1/T113s thermal sensor controller.
> 
> Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>

btw, please try not to resubmit patches while there's still some
discussion on the previous version, as things are likely to get
lost/muddled.
One of the downsides of email!

Cheers,
Conor.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

[-- Attachment #2: Type: text/plain, Size: 161 bytes --]

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
  2023-06-10 22:21   ` Conor Dooley
@ 2023-06-11  9:47   ` Krzysztof Kozlowski
  2023-06-11 10:21   ` Conor Dooley
  2 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2023-06-11  9:47 UTC (permalink / raw)
  To: Maksim Kiselev, linux-kernel
  Cc: Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki, Daniel Lezcano,
	Amit Kucheria, Zhang Rui, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Cristian Ciocaltea,
	linux-pm, devicetree, linux-arm-kernel, linux-sunxi, linux-riscv

On 10/06/2023 22:42, Maksim Kiselev wrote:
> From: Maxim Kiselev <bigunclemax@gmail.com>
> 
> Add a binding for D1/T113s thermal sensor controller.
> 
> Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>

One patchset per day, not multiple within 15 minutes.

> ---
>  .../thermal/allwinner,sun8i-a83t-ths.yaml     | 20 ++++++++++++++++++-
>  1 file changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
> index fbd4212285e2..001faa37fc27 100644
> --- a/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
> +++ b/Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
> @@ -16,6 +16,7 @@ properties:
>        - allwinner,sun8i-a83t-ths
>        - allwinner,sun8i-h3-ths
>        - allwinner,sun8i-r40-ths
> +      - allwinner,sun20i-d1-ths
>        - allwinner,sun50i-a64-ths
>        - allwinner,sun50i-a100-ths
>        - allwinner,sun50i-h5-ths
> @@ -61,6 +62,7 @@ allOf:
>          compatible:
>            contains:
>              enum:
> +              - allwinner,sun20i-d1-ths
>                - allwinner,sun50i-a100-ths
>                - allwinner,sun50i-h6-ths
>  
> @@ -84,7 +86,9 @@ allOf:
>        properties:
>          compatible:
>            contains:
> -            const: allwinner,sun8i-h3-ths
> +            enum:
> +              - allwinner,sun8i-h3-ths
> +              - allwinner,sun20i-d1-ths
>  
>      then:
>        properties:
> @@ -103,6 +107,7 @@ allOf:
>              enum:
>                - allwinner,sun8i-h3-ths
>                - allwinner,sun8i-r40-ths
> +              - allwinner,sun20i-d1-ths
>                - allwinner,sun50i-a64-ths
>                - allwinner,sun50i-a100-ths
>                - allwinner,sun50i-h5-ths
> @@ -159,4 +164,17 @@ examples:
>           #thermal-sensor-cells = <1>;
>      };
>  
> +  - |
> +    thermal-sensor@2009400 {
> +          compatible = "allwinner,sun20i-d1-ths";


New compatible does not warrant new example. It's the same as previous.
Drop it.

Best regards,
Krzysztof


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller
  2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
  2023-06-10 22:21   ` Conor Dooley
  2023-06-11  9:47   ` Krzysztof Kozlowski
@ 2023-06-11 10:21   ` Conor Dooley
  2 siblings, 0 replies; 7+ messages in thread
From: Conor Dooley @ 2023-06-11 10:21 UTC (permalink / raw)
  To: Maksim Kiselev
  Cc: linux-kernel, Vasily Khoruzhick, Yangtao Li, Rafael J. Wysocki,
	Daniel Lezcano, Amit Kucheria, Zhang Rui, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
	Samuel Holland, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Cristian Ciocaltea, linux-pm, devicetree, linux-arm-kernel,
	linux-sunxi, linux-riscv


[-- Attachment #1.1: Type: text/plain, Size: 384 bytes --]

On Sat, Jun 10, 2023 at 11:42:18PM +0300, Maksim Kiselev wrote:
> From: Maxim Kiselev <bigunclemax@gmail.com>
> 
> Add a binding for D1/T113s thermal sensor controller.
> 
> Signed-off-by: Maxim Kiselev <bigunclemax@gmail.com>

Since the calibration stuff now makes sense to me (and thanks for that),
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>

Cheers,
Conor.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

[-- Attachment #2: Type: text/plain, Size: 161 bytes --]

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-06-11 10:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-10 20:42 [PATCH v3 0/3] Add D1/T113s thermal sensor controller support Maksim Kiselev
2023-06-10 20:42 ` [PATCH v3 1/3] dt-bindings: thermal: sun8i: Add binding for D1/T113s THS controller Maksim Kiselev
2023-06-10 22:21   ` Conor Dooley
2023-06-11  9:47   ` Krzysztof Kozlowski
2023-06-11 10:21   ` Conor Dooley
2023-06-10 20:42 ` [PATCH v3 2/3] thermal: sun8i: Add D1/T113s THS controller support Maksim Kiselev
2023-06-10 20:42 ` [PATCH v3 3/3] riscv: dts: allwinner: d1: Add thermal sensor and thermal zone Maksim Kiselev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).