xref: /freebsd-src/sys/contrib/device-tree/Bindings/misc/qemu,vcpu-stall-detector.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b97ee269SEmmanuel Vadot%YAML 1.2
3b97ee269SEmmanuel Vadot---
4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/misc/qemu,vcpu-stall-detector.yaml#
5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6b97ee269SEmmanuel Vadot
7b97ee269SEmmanuel Vadottitle: VCPU stall detector
8b97ee269SEmmanuel Vadot
9b97ee269SEmmanuel Vadotdescription:
10b97ee269SEmmanuel Vadot  This binding describes a CPU stall detector mechanism for virtual CPUs
11b97ee269SEmmanuel Vadot  which is accessed through MMIO.
12b97ee269SEmmanuel Vadot
13b97ee269SEmmanuel Vadotmaintainers:
14b97ee269SEmmanuel Vadot  - Sebastian Ene <sebastianene@google.com>
15b97ee269SEmmanuel Vadot
16b97ee269SEmmanuel Vadotproperties:
17b97ee269SEmmanuel Vadot  compatible:
18b97ee269SEmmanuel Vadot    enum:
19b97ee269SEmmanuel Vadot      - qemu,vcpu-stall-detector
20b97ee269SEmmanuel Vadot
21b97ee269SEmmanuel Vadot  reg:
22b97ee269SEmmanuel Vadot    maxItems: 1
23b97ee269SEmmanuel Vadot
24b97ee269SEmmanuel Vadot  clock-frequency:
25b97ee269SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
26b97ee269SEmmanuel Vadot    description: |
27b97ee269SEmmanuel Vadot      The internal clock of the stall detector peripheral measure in Hz used
28b97ee269SEmmanuel Vadot      to decrement its internal counter register on each tick.
29b97ee269SEmmanuel Vadot      Defaults to 10 if unset.
30b97ee269SEmmanuel Vadot    default: 10
31b97ee269SEmmanuel Vadot
32*0e8011faSEmmanuel Vadot  interrupts:
33*0e8011faSEmmanuel Vadot    maxItems: 1
34*0e8011faSEmmanuel Vadot
35b97ee269SEmmanuel Vadot  timeout-sec:
36b97ee269SEmmanuel Vadot    description: |
37b97ee269SEmmanuel Vadot      The stall detector expiration timeout measured in seconds.
38b97ee269SEmmanuel Vadot      Defaults to 8 if unset. Please note that it also takes into account the
39b97ee269SEmmanuel Vadot      time spent while the VCPU is not running.
40b97ee269SEmmanuel Vadot    default: 8
41b97ee269SEmmanuel Vadot
42b97ee269SEmmanuel Vadotrequired:
43b97ee269SEmmanuel Vadot  - compatible
44b97ee269SEmmanuel Vadot
45b97ee269SEmmanuel VadotadditionalProperties: false
46b97ee269SEmmanuel Vadot
47b97ee269SEmmanuel Vadotexamples:
48b97ee269SEmmanuel Vadot  - |
49*0e8011faSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
50*0e8011faSEmmanuel Vadot
51b97ee269SEmmanuel Vadot    vmwdt@9030000 {
52b97ee269SEmmanuel Vadot      compatible = "qemu,vcpu-stall-detector";
53b97ee269SEmmanuel Vadot      reg = <0x9030000 0x10000>;
54b97ee269SEmmanuel Vadot      clock-frequency = <10>;
55b97ee269SEmmanuel Vadot      timeout-sec = <8>;
56*0e8011faSEmmanuel Vadot      interrupts = <GIC_PPI 15 IRQ_TYPE_EDGE_RISING>;
57b97ee269SEmmanuel Vadot    };
58