# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/ptp/amazon,vmclock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Virtual Machine Clock

maintainers:
  - David Woodhouse <dwmw2@infradead.org>

description:
  The vmclock device provides a precise clock source and allows for
  accurate timekeeping across live migration and snapshot/restore
  operations. The full specification of the shared data structure is
  available at https://uapi-group.org/specifications/specs/vmclock/

properties:
  compatible:
    const: amazon,vmclock

  reg:
    description:
      Specifies the shared memory region containing the vmclock_abi structure.
    maxItems: 1

  interrupts:
    description:
      Interrupt used to notify when the contents of the vmclock_abi structure
      have been updated.
    maxItems: 1

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    ptp@80000000 {
      compatible = "amazon,vmclock";
      reg = <0x80000000 0x1000>;
      interrupts = <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>;
    };
