xref: /freebsd/sys/contrib/device-tree/Bindings/bus/microsoft,vmbus.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1*fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*fac71e4eSEmmanuel Vadot%YAML 1.2
3*fac71e4eSEmmanuel Vadot---
4*fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/bus/microsoft,vmbus.yaml#
5*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*fac71e4eSEmmanuel Vadot
7*fac71e4eSEmmanuel Vadottitle: Microsoft Hyper-V VMBus
8*fac71e4eSEmmanuel Vadot
9*fac71e4eSEmmanuel Vadotmaintainers:
10*fac71e4eSEmmanuel Vadot  - Saurabh Sengar <ssengar@linux.microsoft.com>
11*fac71e4eSEmmanuel Vadot
12*fac71e4eSEmmanuel Vadotdescription:
13*fac71e4eSEmmanuel Vadot  VMBus is a software bus that implement the protocols for communication
14*fac71e4eSEmmanuel Vadot  between the root or host OS and guest OSs (virtual machines).
15*fac71e4eSEmmanuel Vadot
16*fac71e4eSEmmanuel Vadotproperties:
17*fac71e4eSEmmanuel Vadot  compatible:
18*fac71e4eSEmmanuel Vadot    const: microsoft,vmbus
19*fac71e4eSEmmanuel Vadot
20*fac71e4eSEmmanuel Vadot  ranges: true
21*fac71e4eSEmmanuel Vadot
22*fac71e4eSEmmanuel Vadot  '#address-cells':
23*fac71e4eSEmmanuel Vadot    const: 2
24*fac71e4eSEmmanuel Vadot
25*fac71e4eSEmmanuel Vadot  '#size-cells':
26*fac71e4eSEmmanuel Vadot    const: 1
27*fac71e4eSEmmanuel Vadot
28*fac71e4eSEmmanuel Vadotrequired:
29*fac71e4eSEmmanuel Vadot  - compatible
30*fac71e4eSEmmanuel Vadot  - ranges
31*fac71e4eSEmmanuel Vadot  - '#address-cells'
32*fac71e4eSEmmanuel Vadot  - '#size-cells'
33*fac71e4eSEmmanuel Vadot
34*fac71e4eSEmmanuel VadotadditionalProperties: false
35*fac71e4eSEmmanuel Vadot
36*fac71e4eSEmmanuel Vadotexamples:
37*fac71e4eSEmmanuel Vadot  - |
38*fac71e4eSEmmanuel Vadot    soc {
39*fac71e4eSEmmanuel Vadot        #address-cells = <2>;
40*fac71e4eSEmmanuel Vadot        #size-cells = <1>;
41*fac71e4eSEmmanuel Vadot        bus {
42*fac71e4eSEmmanuel Vadot            compatible = "simple-bus";
43*fac71e4eSEmmanuel Vadot            #address-cells = <2>;
44*fac71e4eSEmmanuel Vadot            #size-cells = <1>;
45*fac71e4eSEmmanuel Vadot            ranges;
46*fac71e4eSEmmanuel Vadot
47*fac71e4eSEmmanuel Vadot            vmbus@ff0000000 {
48*fac71e4eSEmmanuel Vadot                compatible = "microsoft,vmbus";
49*fac71e4eSEmmanuel Vadot                #address-cells = <2>;
50*fac71e4eSEmmanuel Vadot                #size-cells = <1>;
51*fac71e4eSEmmanuel Vadot                ranges = <0x0f 0xf0000000 0x0f 0xf0000000 0x10000000>;
52*fac71e4eSEmmanuel Vadot            };
53*fac71e4eSEmmanuel Vadot        };
54*fac71e4eSEmmanuel Vadot    };
55