Re: [PATCH v8 0/7] add thermal sensor driver for A64, A83T, H3, H5, H6, R40

From: Amit Kucheria
Date: Thu Feb 06 2020 - 14:23:50 EST


On Thu, Feb 6, 2020 at 10:16 PM Daniel Lezcano
<daniel.lezcano@xxxxxxxxxx> wrote:
>
>
> Hi Amit,
>
> On 06/02/2020 15:13, Amit Kucheria wrote:
> > Hi Vasily,
> >
> > For this entire series, the DTS files don't contain any trip points.
> > Did I miss some other series?
> >
> > At a minimum, you should add some "hot" or "critical" trip points
> > since then don't require a cooling-map with throttling actions. If you
> > have "passive" trip points, then you need to provide cooling-maps.
>
> Except I'm misunderstanding the bindings, a thermal zone must define
> these required properties:
>
> - polling-delay
> - polling-delay-passive
> - thermal-sensors
> - trips
> - cooling-maps

Right, except for the cooling-maps. Those are exempted if there is the
trip type is not passive. That is my understanding of the existing
bindings.

Trip type critical triggers a shutdown and trip type hot only triggers
a notification - see thermal_core.c:handle_critical_trips(). So we
only need cooling maps for passive trip types.

> > Since this series has been merged, could you please follow up with a
> > fixup series to add the trip points?
> >
> > Regards,
> > Amit
> > p.s. We should catch all this automatically, I'll send out yaml
> > bindings for the thermal framework soon that should catch this stuff.
>
> +1
>
> There was a small discussion about converting the binding to a schema:
>
> https://www.spinics.net/lists/devicetree/msg332424.html


Aah, I missed that. I started working on something last week that
looks similar to your discussion. Pushed a WIP branch here[1], it
looks like I had a similar idea on how to split the bindings. Hope to
finish this up tomorrow for an RFC.

Regards,
Amit

[1] https://github.com/idlethread/linux/commits/up/thermal/yaml-conversion-v1

> > On Thu, Dec 19, 2019 at 10:58 PM Vasily Khoruzhick <anarsoul@xxxxxxxxx> wrote:
> >>
> >> This patchset adds driver for thermal sensor in A64, A83T, H3, H5,
> >> H6 and R40 SoCs.
> >>
> >> v8:
> >> - [vasily] Address more Maxime's comments for dt-schema
> >> - [vasily] Add myself to MAINTAINERS for the driver and schema
> >> - [vasily] Round calibration data size to word boundary for H6 and A64
> >> - [vasily] Change offset for A64 since it reports too low temp otherwise.
> >> Likely conversion formula in user manual is not correct.
> >>
> >> v7:
> >> - [vasily] Address Maxime's comments for dt-schema
> >> - [vasily] Move common part of H3 and H5 dts into sunxi-h3-h5.dtsi
> >> - [vasily] Add Maxime's a-b to the driver patch
> >>
> >> v6:
> >> - [ondrej, vasily] Squash all driver related changes into a
> >> single patch
> >> - [ondrej] Rename calib -> calibration
> >> - [ondrej] Fix thermal zone registration check
> >> - [ondrej] Lower rate of sensor data interrupts to 4/sec/sensor
> >> - [ondrej] Rework scale/offset values, H6 calibration
> >> - [ondrej] Explicitly set mod clock to 24 MHz
> >> - [ondrej] Set undocumented bits in CTRL0 for H6
> >> - [ondrej] Add support for A83T
> >> - [ondrej] Add dts changes for A83T, H3, H5, H6
> >> - [vasily] Add dts changes for A64
> >> - [vasily] Address Maxime's comments for YAML scheme
> >> - [vasily] Make .calc_temp callback mandatory
> >> - [vasily] Set .max_register in regmap config, so regs can be
> >> inspected using debugfs
> >>
> >> Ondrej Jirman (4):
> >> ARM: dts: sun8i-a83t: Add thermal sensor and thermal zones
> >> ARM: dts: sun8i-h3: Add thermal sensor and thermal zones
> >> arm64: dts: allwinner: h5: Add thermal sensor and thermal zones
> >> arm64: dts: allwinner: h6: Add thermal sensor and thermal zones
> >>
> >> Vasily Khoruzhick (1):
> >> arm64: dts: allwinner: a64: Add thermal sensors and thermal zones
> >>
> >> Yangtao Li (2):
> >> thermal: sun8i: add thermal driver for H6/H5/H3/A64/A83T/R40
> >> dt-bindings: thermal: add YAML schema for sun8i-thermal driver
> >> bindings
> >>
> >> .../thermal/allwinner,sun8i-a83t-ths.yaml | 160 +++++
> >> MAINTAINERS | 8 +
> >> arch/arm/boot/dts/sun8i-a83t.dtsi | 36 +
> >> arch/arm/boot/dts/sun8i-h3.dtsi | 20 +
> >> arch/arm/boot/dts/sunxi-h3-h5.dtsi | 6 +
> >> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 42 ++
> >> arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 26 +
> >> arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 33 +
> >> drivers/thermal/Kconfig | 14 +
> >> drivers/thermal/Makefile | 1 +
> >> drivers/thermal/sun8i_thermal.c | 639 ++++++++++++++++++
> >> 11 files changed, 985 insertions(+)
> >> create mode 100644 Documentation/devicetree/bindings/thermal/allwinner,sun8i-a83t-ths.yaml
> >> create mode 100644 drivers/thermal/sun8i_thermal.c
> >>
> >> --
> >> 2.24.1
> >>
>
>
> --
> <http://www.linaro.org/> Linaro.org â Open source software for ARM SoCs
>
> Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
> <http://twitter.com/#!/linaroorg> Twitter |
> <http://www.linaro.org/linaro-blog/> Blog
>