RE: [PATCH 5/6] arm64: versal-net: Add SysMon and thermal zone
From: Mahapatra, Amit Kumar
Date: Fri Nov 06 2026 - 06:54:17 EST
AMD General
Hello Michal,
> -----Original Message-----
> From: Simek, Michal <michal.simek@xxxxxxx>
> Sent: Monday, November 2, 2026 8:24 PM
> To: Mahapatra, Amit Kumar <amit.kumar-mahapatra@xxxxxxx>; Jonathan
> Cameron <jic23@xxxxxxxxxx>; Potthuri, Sai Krishna
> <sai.krishna.potthuri@xxxxxxx>; David Lechner <dlechner@xxxxxxxxxxxx>; Nuno
> Sá <nuno.sa@xxxxxxxxxx>; Andy Shevchenko <andy@xxxxxxxxxx>; Rob Herring
> <robh@xxxxxxxxxx>; Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>; Conor Dooley
> <conor+dt@xxxxxxxxxx>
> Cc: linux-iio@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux-arm-
> kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> amitrkcian2002@xxxxxxxxx
> Subject: Re: [PATCH 5/6] arm64: versal-net: Add SysMon and thermal zone
>
>
>
> On 11/2/26 13:21, Amit Kumar Mahapatra wrote:
> > Describe the System Monitor (SysMon) block in the PMC, which provides
> > on-chip voltage and temperature monitoring, and use its device
> > temperature channel as the sensor for a thermal zone.
> >
> > SysMon channel 0 is the current maximum temperature across all active
> > satellites.
> >
> > The thermal zone has a critical trip at 125C. Passive trips and
> > cooling maps, voltage channels and per-satellite temperature channels
> > depend on the design and are left to board files.
> >
> > Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@xxxxxxx>
> > ---
> > arch/arm64/boot/dts/xilinx/versal-net.dtsi | 29 ++++++++++++++++++++++
> > 1 file changed, 29 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/xilinx/versal-net.dtsi
> > b/arch/arm64/boot/dts/xilinx/versal-net.dtsi
> > index 21bb917bcba1..394181c9a751 100644
> > --- a/arch/arm64/boot/dts/xilinx/versal-net.dtsi
> > +++ b/arch/arm64/boot/dts/xilinx/versal-net.dtsi
> > @@ -735,6 +735,28 @@ versal_fpga: versal-fpga {
> > compatible = "xlnx,versal-fpga";
> > };
> >
> > + sysmon_temp: thermal-sensor {
> > + compatible = "generic-adc-thermal";
> > + #thermal-sensor-cells = <0>;
> > + io-channels = <&sysmon0 0>;
> > + io-channel-names = "sensor-channel";
> > + };
> > +
> > + thermal-zones {
> > + versal_thermal: versal-thermal {
> > + polling-delay = <1000>; /* milliseconds */
> > + thermal-sensors = <&sysmon_temp>;
> > +
> > + trips {
> > + ot_crit: ot-crit {
> > + temperature = <125000>; /* millicelsius */
> > + hysteresis = <0>; /* millicelsius */
> > + type = "critical";
> > + };
> > + };
> > + };
> > + };
> > +
> > amba: axi {
> > compatible = "simple-bus";
> > bootph-all;
> > @@ -1033,6 +1055,13 @@ spi1: spi@f1970000 {
> > clock-names = "ref_clk", "pclk";
> > };
> >
> > + sysmon0: sysmon@f1270000 {
> > + compatible = "xlnx,versal-sysmon";
> > + reg = <0 0xf1270000 0 0x4000>;
> > + interrupts = <0 202 4>;
> > + #io-channel-cells = <1>;
> > + };
>
> This should have status = "disabled"; because I expect it is configuration related and
> it might not be available. (Or not available via MMIO access).
>
> Pretty much this patch should be sent separately. This patch series don't have
> changes in dt binding. That's why it should go via my tree because there is no
> dependency.
I will make the required changes as suggested above and submit this as a
separate patch to your tree.
Regards,
Amit
>
> Thanks,
> Michal
>