1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2# Copyright (C) 2022 - 2026, Advanced Micro Devices, Inc. 3%YAML 1.2 4--- 5$id: http://devicetree.org/schemas/iio/adc/xlnx,versal-sysmon.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: AMD/Xilinx Versal System Monitor 9 10maintainers: 11 - Salih Erim <salih.erim@amd.com> 12 13description: 14 The AMD/Xilinx Versal System Monitor (SysMon) is the successor to the 15 Zynq UltraScale+ AMS block. It provides on-chip voltage and temperature 16 monitoring with up to 160 voltage measurement points and up to 17 64 temperature satellites distributed across the SoC. The hardware 18 supports configurable threshold alarms and oversampling. The device 19 can be accessed via memory-mapped I/O or via an I2C interface. 20 21properties: 22 compatible: 23 const: xlnx,versal-sysmon 24 25 reg: 26 maxItems: 1 27 28 interrupts: 29 maxItems: 1 30 31 '#io-channel-cells': 32 const: 1 33 34 voltage-channels: 35 type: object 36 description: 37 Container for voltage measurement channels. 38 39 properties: 40 '#address-cells': 41 const: 1 42 43 '#size-cells': 44 const: 0 45 46 patternProperties: 47 '^channel@([0-9a-f]|[1-9][0-9a-f])$': 48 $ref: adc.yaml 49 50 description: 51 Measures a voltage rail. The register index and rail 52 name are assigned by the hardware design tool (Vivado). 53 54 properties: 55 reg: 56 minimum: 0 57 maximum: 159 58 description: 59 Voltage measurement register index assigned by the hardware 60 design tool. 61 62 required: 63 - reg 64 - label 65 66 unevaluatedProperties: false 67 68 required: 69 - '#address-cells' 70 - '#size-cells' 71 72 additionalProperties: false 73 74 temperature-channels: 75 type: object 76 description: 77 Container for temperature satellite measurement channels. 78 79 properties: 80 '#address-cells': 81 const: 1 82 83 '#size-cells': 84 const: 0 85 86 patternProperties: 87 '^channel@([1-9a-f]|[1-3][0-9a-f]|40)$': 88 $ref: adc.yaml 89 90 description: 91 Reads a temperature satellite sensor. Each satellite monitors 92 a specific region of the SoC die. 93 94 properties: 95 reg: 96 minimum: 1 97 maximum: 64 98 description: 99 Temperature satellite number (1-based hardware index). 100 101 required: 102 - reg 103 - label 104 105 unevaluatedProperties: false 106 107 required: 108 - '#address-cells' 109 - '#size-cells' 110 111 additionalProperties: false 112 113required: 114 - compatible 115 - reg 116 117additionalProperties: false 118 119examples: 120 - | 121 #include <dt-bindings/interrupt-controller/arm-gic.h> 122 123 sysmon@f1270000 { 124 compatible = "xlnx,versal-sysmon"; 125 reg = <0xf1270000 0x4000>; 126 interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 127 #io-channel-cells = <1>; 128 129 voltage-channels { 130 #address-cells = <1>; 131 #size-cells = <0>; 132 133 channel@0 { 134 reg = <0>; 135 label = "vccaux"; 136 }; 137 138 channel@3 { 139 reg = <3>; 140 label = "vcc_ram"; 141 bipolar; 142 }; 143 }; 144 145 temperature-channels { 146 #address-cells = <1>; 147 #size-cells = <0>; 148 149 channel@a { 150 reg = <10>; 151 label = "aie-temp-ch1"; 152 }; 153 }; 154 }; 155