1*7d0873ebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*7d0873ebSEmmanuel Vadot%YAML 1.2 3*7d0873ebSEmmanuel Vadot--- 4*7d0873ebSEmmanuel Vadot$id: http://devicetree.org/schemas/rng/microsoft,vmgenid.yaml# 5*7d0873ebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*7d0873ebSEmmanuel Vadot 7*7d0873ebSEmmanuel Vadottitle: Virtual Machine Generation ID 8*7d0873ebSEmmanuel Vadot 9*7d0873ebSEmmanuel Vadotmaintainers: 10*7d0873ebSEmmanuel Vadot - Jason A. Donenfeld <Jason@zx2c4.com> 11*7d0873ebSEmmanuel Vadot 12*7d0873ebSEmmanuel Vadotdescription: 13*7d0873ebSEmmanuel Vadot Firmwares or hypervisors can use this devicetree to describe an 14*7d0873ebSEmmanuel Vadot interrupt and a shared resource to inject a Virtual Machine Generation ID. 15*7d0873ebSEmmanuel Vadot Virtual Machine Generation ID is a globally unique identifier (GUID) and 16*7d0873ebSEmmanuel Vadot the devicetree binding follows VMGenID specification defined in 17*7d0873ebSEmmanuel Vadot http://go.microsoft.com/fwlink/?LinkId=260709. 18*7d0873ebSEmmanuel Vadot 19*7d0873ebSEmmanuel Vadotproperties: 20*7d0873ebSEmmanuel Vadot compatible: 21*7d0873ebSEmmanuel Vadot const: microsoft,vmgenid 22*7d0873ebSEmmanuel Vadot 23*7d0873ebSEmmanuel Vadot reg: 24*7d0873ebSEmmanuel Vadot description: 25*7d0873ebSEmmanuel Vadot Specifies a 16-byte VMGenID in endianness-agnostic hexadecimal format. 26*7d0873ebSEmmanuel Vadot maxItems: 1 27*7d0873ebSEmmanuel Vadot 28*7d0873ebSEmmanuel Vadot interrupts: 29*7d0873ebSEmmanuel Vadot description: 30*7d0873ebSEmmanuel Vadot Interrupt used to notify that a new VMGenID is available. 31*7d0873ebSEmmanuel Vadot maxItems: 1 32*7d0873ebSEmmanuel Vadot 33*7d0873ebSEmmanuel Vadotrequired: 34*7d0873ebSEmmanuel Vadot - compatible 35*7d0873ebSEmmanuel Vadot - reg 36*7d0873ebSEmmanuel Vadot - interrupts 37*7d0873ebSEmmanuel Vadot 38*7d0873ebSEmmanuel VadotadditionalProperties: false 39*7d0873ebSEmmanuel Vadot 40*7d0873ebSEmmanuel Vadotexamples: 41*7d0873ebSEmmanuel Vadot - | 42*7d0873ebSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 43*7d0873ebSEmmanuel Vadot rng@80000000 { 44*7d0873ebSEmmanuel Vadot compatible = "microsoft,vmgenid"; 45*7d0873ebSEmmanuel Vadot reg = <0x80000000 0x1000>; 46*7d0873ebSEmmanuel Vadot interrupts = <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>; 47*7d0873ebSEmmanuel Vadot }; 48*7d0873ebSEmmanuel Vadot 49*7d0873ebSEmmanuel Vadot... 50