Re: [PATCH v6 3/5] thermal: renesas: rzg3e: Add thermal driver for the Renesas RZ/G3E SoC
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2025-08-05 09:35:32
Also in:
linux-pm, linux-renesas-soc, lkml
Hi John, On Tue, 5 Aug 2025 at 11:22, John Madieu [off-list ref] wrote:
quoted
From: Geert Uytterhoeven <geert@linux-m68k.org> On Tue, 5 Aug 2025 at 10:27, John Madieu [off-list ref] wrote:quoted
quoted
From: Geert Uytterhoeven <geert@linux-m68k.org> On Thu, 22 May 2025 at 20:23, John Madieu [off-list ref] wrote:quoted
The RZ/G3E SoC integrates a Temperature Sensor Unit (TSU) block designed to monitor the chip's junction temperature. This sensor is connected to channel 1 of the APB port clock/reset and providestemperature measurements. RZ/V2H and RZ/V2N have a second set of trim values for the second TSU instance. So I guess you want to specify the offset in DT instead.What do you think of 'renesas,tsu-channel' property or alike Property to specify the channel being used ?While I agree instance IDs canbe useful (sometimes), the DT maintainers do not like them very much, cfr. commit 6a57cf210711c068 ("docs: dt: writing-bindings: Document discouraged instance IDs"), which prefers cell/phandle arguments. For this particular case: 1. The instance ID for the single TSU on RZ/G3E would be one, not zero (oh, the SYS_LSI_OTPTSU1TRMVAL[01] register names do contain "TSU1"), 2. It will break the moment a new SoC is released that stores trim values at different offsets in the SYSC block. Hence a property containing a SYSC phandle and register offset sounds better to me.This sounds good to me. I see something like: renesas,tsu-channel1 = <&sysc off1>; renesas,tsu-channel2 = <&sysc off2>; /* Optional, for V2H */ /* or */ renesas,tsu-channel-map = <&sysc off1 off2>; I would go for the first option to make it easier for V2H (while adding support for it later) so it can choose using either, or both, regardless of the index. What do you think ?
As the property would be part of the TSU node, it would always
refer to that specific channel/instance, so e.g.
renesas,tsu-trim = <&sysc 0x320>;
for the first TSU instance, and
renesas,tsu-trim = <&sysc 0x330>;
for the second instance.
P.S. Please don't write "V2H" on its own, as both R-Car V2H and RZ/V2H
exist in the Renesas SoC portfolio ;-)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds