This patchs series add support of New Amlogic temperature sensor and minimal
thermal zone for SEI510 and ODROID-N2 boards.
First implementation was doing on IIO[1] but after comments i move on thermal framework.
Formulas and calibration values come from amlogic.
Changes since v5:
- fix patch 5 and 6 send twice
Changes since v4:
- Move thermal-zone in soc dtsi file
- Remove critical trip point and add passive one
- fix commit message
- use devm_platform_ioremap_resource instead of platform_get_resource
Changes since v3:
- Add cooling map and trip point for hot type
- move compatible on g12a instead of g12 to be aligned with others
- add all reviewer, sorry for this mistake
Changes since v2:
- fix yaml documention
- remove unneeded status variable for temperature-sensor node
- rework driver after Martin review
- add some information in commit message
Changes since v1:
- fix enum vs const in documentation
- fix error with thermal-sensor-cells value set to 1 instead of 0
- add some dependencies needed to add cooling-maps
Dependencies :
- patch 3,4 & 5: depends on Neil's patch and series :
- missing dwc2 phy-names[2]
- patchsets to add DVFS on G12a[3] which have deps on [4] and [5]
[1] https://lore.kernel.org/linux-amlogic/[email protected]/
[2] https://lore.kernel.org/linux-amlogic/[email protected]/
[3] https://lore.kernel.org/linux-amlogic/[email protected]/
[4] https://lore.kernel.org/linux-amlogic/[email protected]/
[5] https://lore.kernel.org/linux-amlogic/[email protected]/
Guillaume La Roque (7):
dt-bindings: thermal: Add DT bindings documentation for Amlogic
Thermal
thermal: amlogic: Add thermal driver to support G12 SoCs
arm64: dts: amlogic: g12: add temperature sensor
arm64: dts: meson: g12: Add minimal thermal zone
arm64: dts: amlogic: g12a: add cooling properties
arm64: dts: amlogic: g12b: add cooling properties
MAINTAINERS: add entry for Amlogic Thermal driver
.../bindings/thermal/amlogic,thermal.yaml | 54 +++
MAINTAINERS | 9 +
.../boot/dts/amlogic/meson-g12-common.dtsi | 66 ++++
arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 24 ++
arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 29 ++
drivers/thermal/Kconfig | 11 +
drivers/thermal/Makefile | 1 +
drivers/thermal/amlogic_thermal.c | 333 ++++++++++++++++++
8 files changed, 527 insertions(+)
create mode 100644 Documentation/devicetree/bindings/thermal/amlogic,thermal.yaml
create mode 100644 drivers/thermal/amlogic_thermal.c
--
2.17.1
Add cpu and ddr temperature sensors for G12 Socs
Reviewed-by: Martin Blumenstingl <[email protected]>
Tested-by: Christian Hewitt <[email protected]>
Tested-by: Kevin Hilman <[email protected]>
Signed-off-by: Guillaume La Roque <[email protected]>
---
.../boot/dts/amlogic/meson-g12-common.dtsi | 20 +++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 38d70ce1cfc7..0660d9ef6a86 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -1353,6 +1353,26 @@
};
};
+ cpu_temp: temperature-sensor@34800 {
+ compatible = "amlogic,g12a-cpu-thermal",
+ "amlogic,g12a-thermal";
+ reg = <0x0 0x34800 0x0 0x50>;
+ interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>;
+ clocks = <&clkc CLKID_TS>;
+ #thermal-sensor-cells = <0>;
+ amlogic,ao-secure = <&sec_AO>;
+ };
+
+ ddr_temp: temperature-sensor@34c00 {
+ compatible = "amlogic,g12a-ddr-thermal",
+ "amlogic,g12a-thermal";
+ reg = <0x0 0x34c00 0x0 0x50>;
+ interrupts = <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>;
+ clocks = <&clkc CLKID_TS>;
+ #thermal-sensor-cells = <0>;
+ amlogic,ao-secure = <&sec_AO>;
+ };
+
usb2_phy0: phy@36000 {
compatible = "amlogic,g12a-usb2-phy";
reg = <0x0 0x36000 0x0 0x2000>;
--
2.17.1
On 27/09/2019 20:43, Guillaume La Roque wrote:
> Add cpu and ddr temperature sensors for G12 Socs
>
> Reviewed-by: Martin Blumenstingl <[email protected]>
> Tested-by: Christian Hewitt <[email protected]>
> Tested-by: Kevin Hilman <[email protected]>
> Signed-off-by: Guillaume La Roque <[email protected]>
> ---
> .../boot/dts/amlogic/meson-g12-common.dtsi | 20 +++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 38d70ce1cfc7..0660d9ef6a86 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -1353,6 +1353,26 @@
> };
> };
>
> + cpu_temp: temperature-sensor@34800 {
> + compatible = "amlogic,g12a-cpu-thermal",
> + "amlogic,g12a-thermal";
> + reg = <0x0 0x34800 0x0 0x50>;
> + interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>;
> + clocks = <&clkc CLKID_TS>;
> + #thermal-sensor-cells = <0>;
> + amlogic,ao-secure = <&sec_AO>;
> + };
> +
> + ddr_temp: temperature-sensor@34c00 {
> + compatible = "amlogic,g12a-ddr-thermal",
> + "amlogic,g12a-thermal";
> + reg = <0x0 0x34c00 0x0 0x50>;
> + interrupts = <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>;
> + clocks = <&clkc CLKID_TS>;
> + #thermal-sensor-cells = <0>;
> + amlogic,ao-secure = <&sec_AO>;
> + };
> +
> usb2_phy0: phy@36000 {
> compatible = "amlogic,g12a-usb2-phy";
> reg = <0x0 0x36000 0x0 0x2000>;
>
Reviewed-by: Neil Armstrong <[email protected]>
On Sat, Sep 28, 2019 at 12:14 AM Guillaume La Roque
<[email protected]> wrote:
>
> Add cpu and ddr temperature sensors for G12 Socs
>
> Reviewed-by: Martin Blumenstingl <[email protected]>
> Tested-by: Christian Hewitt <[email protected]>
> Tested-by: Kevin Hilman <[email protected]>
> Signed-off-by: Guillaume La Roque <[email protected]>
Reviewed-by: Amit Kucheria <[email protected]>
> ---
> .../boot/dts/amlogic/meson-g12-common.dtsi | 20 +++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 38d70ce1cfc7..0660d9ef6a86 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -1353,6 +1353,26 @@
> };
> };
>
> + cpu_temp: temperature-sensor@34800 {
> + compatible = "amlogic,g12a-cpu-thermal",
> + "amlogic,g12a-thermal";
> + reg = <0x0 0x34800 0x0 0x50>;
> + interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>;
> + clocks = <&clkc CLKID_TS>;
> + #thermal-sensor-cells = <0>;
> + amlogic,ao-secure = <&sec_AO>;
> + };
> +
> + ddr_temp: temperature-sensor@34c00 {
> + compatible = "amlogic,g12a-ddr-thermal",
> + "amlogic,g12a-thermal";
> + reg = <0x0 0x34c00 0x0 0x50>;
> + interrupts = <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>;
> + clocks = <&clkc CLKID_TS>;
> + #thermal-sensor-cells = <0>;
> + amlogic,ao-secure = <&sec_AO>;
> + };
> +
> usb2_phy0: phy@36000 {
> compatible = "amlogic,g12a-usb2-phy";
> reg = <0x0 0x36000 0x0 0x2000>;
> --
> 2.17.1
>