On Mon, Apr 25, 2022 at 01:42:05PM +0000, Sebastian Ene wrote: > The stall detection mechanism allows to configure the expiration > duration and the internal counter clock frequency measured in Hz. > Add these properties in the schema. > > Signed-off-by: Sebastian Ene <sebastianene@xxxxxxxxxx> > --- > .../devicetree/bindings/misc/vm-wdt.yaml | 44 +++++++++++++++++++ > 1 file changed, 44 insertions(+) > create mode 100644 Documentation/devicetree/bindings/misc/vm-wdt.yaml > > diff --git a/Documentation/devicetree/bindings/misc/vm-wdt.yaml b/Documentation/devicetree/bindings/misc/vm-wdt.yaml > new file mode 100644 > index 000000000000..cb7665a0c5af > --- /dev/null > +++ b/Documentation/devicetree/bindings/misc/vm-wdt.yaml > @@ -0,0 +1,44 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/misc/vm-wdt.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: VM watchdog > + > +description: | > + This binding describes a CPU stall detector mechanism for virtual cpus. > + > +maintainers: > + - Sebastian Ene <sebastianene@xxxxxxxxxx> > + > +properties: > + compatible: > + enum: > + - qemu,vm-watchdog > + clock: 'clocks' is already a defined property and 'clock' is too close. It's also ambiguous what it is. 'clock-frequency' instead perhaps. > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: | > + The watchdog internal clock measure in Hz used to decrement the > + watchdog counter register on each tick. > + Defaults to 10 if unset. > + timeout-sec: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: | > + The watchdog expiration timeout measured in seconds. > + Defaults to 8 if unset. > + > +required: > + - compatible > + > +additionalProperties: false > + > +examples: > + - | > + watchdog { > + compatible = "qemu,vm-watchdog"; > + clock = <10>; > + timeout-sec = <8>; How does one access this 'hardware'? Why does this need to be in DT? We have DT because h/w designers are incapable of making h/w discoverable. Why repeat that problem with s/w interfaces? Rob